ℹ️ NOTE: This Guide is a fork of A315-54K-34P6-OpenCore with some modification to adapt it to the 10th gen of this laptop
- CPU: Intel® Core™ i5-10210U
- GPU: Intel Coffee Lake GT2 (UHD620)
- RAM: 1x 16GB Crucial DDR4-2666MHz
- Laptop Model: Acer Aspire A315-54
- Audio Codec: Realtek ALC255
- Ethernet Card: Realtek RTL8111/8168
- Wifi/BT Card:
Atheros QCA9377Replaced By Broadcom BCM94352Z - Storage: x2 SSD 256GB
- SK hynix BC501 256GB NVME (Windows10)
- Micron M600 256GB M.2 (macOS12)
- Touchpad: Synaptic I2C (SYNA7DB5)
- Display: 15.6" 1920x1080 IPS
- BIOS revision: insyde V1.11
- Bootloader : OC 0.8.8
- CPU Power Management
- UHD620 QE/CI Full Graphics Acceleration
- Display Brightness
- Audio (internal speakers, headphone jack, mic)
- HDMI video & audio (up to 4K 30Hz because of HDMI 1.4 limitations)
- Webcam
- Ethernet
- Wifi/BT Native
- Sleep/Wake
- Touchpad With all gestures
- Keyboard (including all media keys)
- All USB ports (USB-A 2.0 + 3.1)
- Battery indicator
- iCloud Drive
- AirDrop (Two Ways)
- iMessage
- FaceTime
- AirPlay
- DRM Content
- Handoff
- Continuity
- BIOS MODE: UEFI
- SECURE BOOT: Disabled
- FAST BOOT: Enabled
- Vt-d: Enabled
- (Do not forget to set
DisableIoMapper
totrue
underKernel
->Quirks
in config.plist)
- (Do not forget to set
- CFG Lock (MSR_E2): Disabled
- (if you cannot find this option then set
AppleXcpmCfgLock
totrue
underKernel
->Quirks
in config.plist)
- (if you cannot find this option then set
- DVMT Pre-Allocated Memory: 64MB
- (If you cannot find this option and/or you are not sure if you pre-allocated memory is >= 64MB then you should patch your VRAM (see the details below)
- SATA MODE: AHCI
- Launch BIOS by tapping the
F2
key repeatedly right after booting. - When in BIOS, go to
Advanced
and typeCTRL
+S
it will display a (Hidden) option change it from Optain to AHCI
- Launch BIOS by tapping the
Refer to Dortania Guide i will only describe the SSDTs that are not essential for functioning but are present in my EFI.
SSDT | Description |
---|---|
SSDT-PLUG | Disabled is not required on macOS 12.3 and up see. |
SSDT-PNLF | Fixes backlight. |
SSDT-XOSI | Enable GPI0 for fixing I2C trackpad see and add patches below. |
SSDT-ALS0 | Provides macOS with a fake Ambient Light Sensor device (ALS), so it could store the current brightness level and keep it after reboots. |
SSDT-DMAC | Provides macOS with a fake Direct Memory Access Controller (DMAC), because the device is present in any Intel-based Mac. The necessity for this SSDT is unknown, consider it as "cosmetic". |
SSDT-EC-USBX | Crucial |
SSDT-SBUS-MCHC | Fixes AppleSMBus support in macOS see. |
SSDT-GPRW | Fixes instant wake on USB/power state change see and add patches below. |
SSDT-AWAC | Re-enable the old RTC clock that is compatible with macOS see. |
ℹ️ NOTE: Add this patches to ACPI
-> Patch
Comment | String | Change _OSI to XOSI |
---|---|---|
Enabled | Boolean | YES |
Count | Number | 0 |
Limit | Number | 0 |
Find | Data | 5f4f5349 |
Replace | Data | 584f5349 |
Add the following under DeviceProperties
-> Add
-> PciRoot(0x0)/Pci(0x2,0x0)
Key | Type | Value |
---|---|---|
AAPL,ig-platform-id | Data | 0900A53E |
device-id | Data | C49B0000 |
In some cases where you cannot set the DVMT-prealloc of these cards to 64MB higher in your UEFI Setup, you may get a kernel panic. Usually they're configured for 32MB of DVMT-prealloc, in that case you have to add these values to your iGPU Properties.
Key | Type | Value |
---|---|---|
framebuffer-patch-enable | Data | 01000000 |
framebuffer-stolenmem | Data | 00003001 |
framebuffer-fbmem | Data | 00009000 |
Add this PciRoot(0x0)/Pci(0x1F,0x3)
with the child layout-id
under DeviceProperties
-> Add
Key | Type | Value |
---|---|---|
layout-id | Data | 56000000 |
Check AppleALC Supported Codecs
With the ALC255, we get the following
layout 3, 11, 12, 13, 15, 17, 18, 20, 21, 27, 28, 29, 30, 31, 66, 71, 82, 86, 96, 99, 100, 255
I chose layout 86
because it works well with my hack then I converted it to hexadecimal = 56
Note that the final HEX/Data value should be 4 bytes in total (ie. 56 00 00 00
)
ℹ️ NOTE: All other entries than PciRoot(0x0)/Pci(0x2,0x0)
and PciRoot(0x0)/Pci(0x1F,0x3)
, under DeviceProperties
-> Add
are purely cosmetic and you can safely remove them if you wish so.
Kext | Description |
---|---|
Lilu | Crucial |
VirtualSMC | Crucial |
SMCBatteryManager | Measuring battery readouts on laptops. |
SMCLightSensor | Supplement to fake ambient light sensor device mentioned in ACPI. |
SMCProcessor | Allows preciser measurement of the CPU. |
WhateverGreen | Crucial |
AppleALC | Enabling native macOS HD audio . |
RealtekRTL8111 | Ethernet Card Driver. |
VoodooPS2Controller + VoodooPS2Keyboard plugin | Keyboard Driver. |
VoodooI2C + plugins | Add support for I2C bus devices on macOS. |
VoodooI2CHID | Enabling touchpad gestures. |
CPUFriend + CPUFriendDataProvider | Power Management see. |
BrcmFirmwareData.kext | Used for uploading firmware on Broadcom Bluetooth chipset, required for all non-Apple/non-Fenvi Airport cards.. |
BrcmPatchRAM3.kext | macOS driver which applies PatchRAM updates for Broadcom RAMUSB based devices. |
BlueToolFixup.kext | Patches the macOS 12+ Bluetooth stack to support third-party cards. |
NVMeFix | Optimizes power and energy consumption on non-Apple SSDs. |
USBPorts | I mapped USB ports specifically for this laptop model. If your model is different, you should remove this kext and do your USB mapping. |
HoRNDIS | Driver for macOS that allows you to use your Android phone's native USB tethering mode to get Internet access. |
BrightnessKeys | Enabling Function (Fn) keys on laptop. |
RestrictEvents | Blocking unwanted processes causing compatibility issues & unlocking some features see. |
FeatureUnlock | Enabling Sidecar, NightShift, AirPlay to Mac, Universal Control. |
Boot-args | Description |
---|---|
debug=0x100 |
Disables macOS's watchdog which helps prevents a reboot on a kernel panic. |
keepsyms=1 |
This is a companion setting to debug=0x100 that tells the OS to also print the symbols on a kernel panic. |
swd_panic=1 |
Avoids issue where going to sleep results in a reboot, this should instead give us a kernel panic log. |
igfxfw=2 |
boot argument to force loading of Apple GuC firmware (improves IGPU performance). |
igfxrpsc=1 |
boot argument to enable RPS control patch (improves IGPU performance). |
Add new option to change the CPU name in About This Mac by leveraging functionality in RestrictEvents.kext
Your are free to change the value of revcpuname
under NVRAM
-> 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102
as you want.
PlatformInfo section of the config.plist is left empty for security reasons. You need to generate your own SMBIOS data and change the corresponding values (MLB
, ROM
, SystemSerialNumber
, SystemUUID
) under PlatformInfo in config.plist. Luckily, GenSMBIOS can take care of that for you.
Check This guide for better understanding..
This EFI is aesthetically configured to include OpenCore's GUI.
I also applied theme for OpenCanopy. You can change the desired theme at any time by changing the PickerVariant
value in config.plist with respect to the path of the theme in the OC/Resources/Image folder (E.g. PickerVariant
value Acidanthera/GoldenGate
corresponds to the path OC/Resources/Image/Acidanthera/GoldenGate).
I prefer skipping the boot picker and going straight to macOS, but if you wish to have it on every boot set ShowPicker
to true
under Misc
-> Boot
in config.plist.
TIP 1: You can slightly speed up the boot time by setting ConnectDrivers
to false
under UEFI
in config.plist, but you'll have to give up on the fancy boot-chime.
TIP 2: Even if ShowPicker
is set to false
, you can still access the OpenCore boot picker by holding the escape key when booting, just make sure that PollAppleHotKeys
is set to true
.
Acer for the laptop.
Apple for the macOS.
velickovicdj for his detailed guide of Acer Aspire 3 7th gen.
Dortania for the great guides.
Acidanthera for awesome kexts and first-class support for hackintosh enthusiasts.
ic005k for his awesome tool OCAuxiliaryTools
Alexandre Daoud for VoodooI2C kext and making it work with the trackpad.
If you like my work, you can buy me a coffee