What's this for? Not too many X299 hardware running macOS, let alone OpenCore so thought I'd post this ;p Please use this as a base and not a guide .For a proper guide, please follow the OpenCore Install Guide
Note: This system was built with the BIOS Version 2002, and I've had reports that Version 3006+ has broken a few things:
BIOS cannot properly unlock the MSR E2 register- v3105 resolves this issue
- AWAC clock has been added
- This will require SSDT-RTC0-RANGE.dsl
- SetupVirtualMap is broken
- Can simply disable this quirk, it's not required for booting
- macOS High Sierra, Mojave, Catalina and Big Sur
- See below on note regarding Big Sur support
- Native NVRAM
- Bootcamp
- Sleep
- USB power(Including iPad Pro 12.9 Charging!)
- CPU Power Management
- iTunes, Netflix and all other DRM-based content
- Handoff, AirDrop, Apple Watch Unlock and all other Apple services
- Display Brightness and Volume with Apple Keyboard
- Boot Chime to internal speaker(hooked up a genuine PowerMac speaker!)
- OpenCore GUI
- Above 2 will require the resources folder to be populated with files from here: OcBinaryData
- Serial Debugging
- If you do a lot of kernel debugging like I do, this board will be great. Remember to enable serial in the BIOS and have a Serial header to DB9, and another machine to recieve the signal(if the other machine doesn't have serial, this DB9 to USB RS 232 adapter will work fine). I recommend having CoolTerm for serial logging, I found it the simplest to use.
- You'll also need the following added to boot-args for proper output:
debug=0x8 msgbuf=1048576 serial=5
- Onboard Wifi: Won't work, I removed it and use a genuine Apple Airport BCM94360CD Card with PCIe x1 adapter.
- For supported card, see here: Wireless Buyers guide
- Onboard Bluetooth: Works inconsistently, replaced with BCM94360CD so didn't look into it, see this thread for some ideas.
- SideCar: Since 10.15.4, I've not been able to get sidecar working, been actively looking for fixes though: Sidecar not working on iGPU-less systems reliably
- To run macOS 11, Big Sur, you'll need the following:
- Latest releases of all your kexts
- Build of OpenCore 0.6.0 or newer
- RTC patch
For the last one, this is due to Asus not mapping all the RTC regions for some reason. Specifically skipping regions 0x72 and 0x73. And in Big Sur, AppleRTC gets a lot saltier with this and won't boot. So we force in the extra regions with a simple 0x02 to 0x04 replace, see below patch:
Under ACPI -> Patch:
Comment | String | Fix RTC Range |
---|---|---|
Enabled | Boolean | YES |
Count | Number | 0 |
Limit | Number | 0 |
Find | Data | 5F435253 11180A15 47017000 70000102 47017400 74000104 22000179 |
Replace | Data | 5F435253 11180A15 47017000 70000104 47017400 74000104 22000179 |
Alternatively you can also use the sample SSDT-RTC0-RANGE, which may be better suited if you plan to dual boot with Linux and Windows often. I documented the process in OpenCorePkg: SSDT-RTC0-RANGE.dsl
Lilu
VirtualSMC
AppleALC
WhateverGreen
- Not needed on MacPro7,1
IntelMausiEthernet
CpuTscSync
- Required to resolve TSC sync issues and aid with wake
X299-Map
- Maps USB ports, please make your own as this is just an example
- SSDT-EC-USBX-X299
- Creates a fake EC and fixes USB power. Note I do not power off the original EC, reason for this is due to a huge mess around sleep and
_GPE
. Turning off this EC makes waking a pain without hacky fixes
- Creates a fake EC and fixes USB power. Note I do not power off the original EC, reason for this is due to a huge mess around sleep and
- SSDT-PLUG-X299
- Sets
Plugin-type=1
toSB.SCK0.CP00
allowing for proper CPU power management
- Sets
- SSDT-SBUS-MCHC
- Creates SMBus device allowing AppleSMBus to load
- SSDT-RTC0-RANGE-v3006
- BIOS v2002 and older should use SSDT-RTC0-RANGE-v2002
- SSDT-BRG0-X299
- Enforces an ACPI path for the dGPU in the top slot, required for macOS Big Sur if you require DeviceProperty injection
- Adjust accordingly if the dGPU is in another slot
Quirk | Enabled | Comment |
---|---|---|
AvoidRuntimeDefrag | True | Needed to boot |
DevirtualiseMmio | True | Adds extra allocation areas |
EnableWriteUnprotected | False | Conflicts with RebuildAppleMemoryMap below |
ProvideCustomSlide | True | Ensures bad sectors aren't used for booting |
RebuildAppleMemoryMap | True | Fix allocations due to memory map issues |
SetupVirtualMap | False | BIOS v3006+ break with this quirk enabled |
SyncRuntimePermissions | True | Needed for booting Windows and linux correctly |
To enable the on-board ALC S1220A
layout-id | Data | 01000000
Used for fixing Navi GPUs when using WhateverGreen and iMacPro1,1, this arg is not required if you don't use WEG(ie. MacPro7,1)
- Note this assumes the Navi GPU is in the top slot, adjust accordingly to your board
- macOS 11, Big Sur, will also require SSDT-BRG0-X299 for this to work correctly
agdpmod | String | Pikera
Quirk | Enabled | Comment |
---|---|---|
DisableIOMapper | True | Needed if you plan to use VT-D in Windows or Linux |
PanicNoKextDump | True | Helps with troubleshooting |
PowerTimeoutKernelPanic | True | Helps with audio related kernel panics |
arg | value |
---|---|
boot-args | -v debug=0x100 keepsyms=1 |
- iMacPro1,1 or MacPro7,1 SMBIOS
- Note that MacPro7,1 is Catalina+ only
- iMacPro1,1 will need WhateverGreen.kext as well
Hardware:
- i9 7920X
- Noctua NH D15
- Asus Strix X299-E Gaming
- Multiple GPUs tested:
- Pegatron GT 220 1GB
- HP GT 710 2GB
- MSI Armour RX 580 8GB
- MSI AirBoost Vega 56 8GB
- Gigabyte RX 5700XT 8GB
- This guy will need either
agdpmod=pikera
on iMacPro1,1 or remove WhateverGreen entirely for MacPro7,1
- This guy will need either
- WD Black SN750 1TB NVMe
- 32GB 2666Mhz (4x8GB)
- Apple BCM94360CD(pulled from a genuine iMac14,2)
Main important BIOS settings:
- Asus Multicore: Auto
- CPU Core Ratio: All Core Sync
- MSR Lock: Disabled
- If can't disable, turn on
AppleCpuPmCfgLock
andAppleXcpmCfgLock
. Without this, you won't go far for install. - Newer BIOS updates do show this option, make sure you're on v3105 for best results
- If can't disable, turn on
- Legacy USB: Disabled
- Above 4G encoding: Enabled
- CSM: Disabled
- OS Type: Windows UEFI
I've also provided a BIOS-settings.txt here, you can actually load it off a USB so you know you didn't miss any weird settings: X299_Strix_OpenCore_setting.txt