Please Note: This is only a personal build backup, not a textbook standard guide. If you are looking for a guide please go to this page for more informations.
This configuration may ONLY suitable for those who have BOTH iGPU (computing only) AND dGPU. If you are using specs that have only iGPU or dGPU, I suggest not using this configuration, or you may experience some other undefined behaviours.
This is a process that requires proper debugging skills, sometimes depending on specific hardware with a little bit of luck. Decent OS running experience can only be guaranteed with specs very much the same as mine if you decide to use this configuration.
Specs | Details |
---|---|
Board | MSI® B360M MORTAR™ |
CPU | Intel® Core™ i5-9400 (with Intel UHD Graphics 630) |
Memory | Corsair Vengeance® LPX 2 x 8GB (DDR4 2666MHz) |
SSD | Intel® SSD 760p Series M.2 512GB |
HDD | Western Digital® 3.5″ Blue 1TB (WD10EZRZ) |
Graphic Card | Sapphire® Radeon™ RX590 8GB (D5 NITRO+ SE FO) |
Wireless Card | Broadcom® BCM94360CD (with Bluetooth 4.0) |
Keyboard | IKBC® C87 |
Mouse | Logitech® MX Master 2S |
Monitor | Acer® Nitro XV272UP Widescreen LCD Monitor |
SETTINGS
-
Advanced
- PCI Subsystem Settings
- Above 4G Memory / Crypto Currency Mining [Enabled]
- Integrated Graphics Configuration
- Initiate Graphic Adapter [PEG]
- Integrated Graphics Share Memory [64M]
- IGD Multi-Monitor [Enabled]
- USB Configuration
- XHCI Hand-off [Enabled]
- Legacy USB Support [Enabled]
- Power Management Setup
- Erp Ready [Enabled]
- Windows OS Configuration
- Windows 10 WHQL Support [Enabled]
- MSI Fast Boot [Disabled]
- Wake Up Event Setup
- Wake Up Event By [BIOS]
- Resume by USB Device [Enabled]
- PCI Subsystem Settings
-
Boot
- Boot Mode Select [UEFI]
OC (Overclocking)
- CPU Features
- Intel Virtualization Tech [Enabled]
- Intel VT-D Tech [Disabled]
- CFG Lock [Disabled]
Things may vary per device and you may want to customize it, which I will mark with * at the beginning. Let's take a look from the folder level:
ACPI
SSDT-AWAC
: Re-enable the old RTC clock that is compatible with macOS.SSDT-EC-USBX
: Create fake EC device for desktop and fix USB power.SSDT-PLUG
: Allow the kernel's XCPM (XNU's CPU Power Management) to manage our CPU's power management. Auto detect.SSDT-PMCR
: Fix NVRAM support for 300 series motherboard.* SSDT-SBUS-MCHC
: Not necessary. Fix AppleSMBus support.
Drivers
OpenRuntime.efi
: Work withBooter
quirks in config.plist.HfsPlus.efi
: Support HFS+ File System which is used by Recovery and Time Machine.OpenCanopy.efi
: Bring GUI for OpenCore.
Kexts
-
Lilu
: Other kexts depending on this one. -
VirtualSMC
: SMC emulator layer. -
SMCProcessor
: CPU sensor support. -
SMCSuperIO
: IO sensor support. -
WhateverGreen
: Various patches necessary for GPU. -
AppleALC
: Native macOS HD audio for not officially supported codecs. -
IntelMausi
: Intel Ethernet LAN driver for macOS. -
NVMeFix
: Fix random kernel panic after wake caused by NVMe device. -
AirportBrcmFixup
: Fix Wi-Fi lagging after wake. -
* USBPorts
: Custom USB ports mapping for iMac19,2. Ports mapping may vary per device. This kext can be used directly if your USB ports are same as mine:1. HS01 - Internal - BRCM20702 Hub 2. HS03 - Internal - USB Keyboard 3. HS04 - Internal - USB Mouse 4. HS05 - USB 3 - Back USB 3 (SS01) 5. HS07 - USB 2 - Back USB 2 6. HS08 - USB 2 - Back USB 2 7. HS09 - USB 3 - Front USB 3 (SS05) 8. HS10 - USB 3 - Front USB 3 (SS06) 9. SS01 - Type 3 - Back USB 3 10. SS02 - TypeC+Sw - Back Type C 11. SS05 - USB 3 - Front USB 3 12. SS06 - USB 3 - Front USB 3
Resources
- Here put OpenCanopy resources.
Tools
* ResetSystem.efi
: I chooseFirmware
argument in config.plist to reboot into BIOS firmware settings when necessary. Change as you wish.
config.plist
* DeviceProperties
: I putlayout-id
,igfxfw
andshikigva
arguments here. You can delete them from here and put into boot-args if you wish.
Here I chooselayout-id 92
to fix audio. Even if theAddress
is not the same with our spec, I find it working well with this layout.
I useshikigva 80
to fix DRM, delete it if you are experiencing screen freezing issue. Theigfxfw
value here is used to load Apple GuC firmware, delete it if you are experiencing display issues.* Generic
: You should generate SMBIOS info by using GenSMBIOS to fix iServices, and make sure it is "Invalid Serial" or "Purchase Date not Validated" (i.e., no conflict with real Macs) for your own good by checking Apple Check Coverage page.
-
It may related to HID Tickle mode. The simplest way is to try adding boot argument
darkwake=no
(or=1
?=2
?). BUT it might also cause monitor to wake up during darkwake, or simply cannot sleep itself. Use at your own risk.The default value on macOS Catalina for
gDarkWakeFlags
is0x00000003
, which equals to3
(kDarkWakeFlagHIDTickleNone
). So by default Darkwake should not post any HID Tickle's. This also reveals the secret why some users encounter issues with frozen peripheral device's on Hack's when Power Nap is enabled. To use Darkwake on Hack's require very well configured USB ports. -
Or try adding
SSDT-USBW.aml
andUSBWakeFixup.kext
. You can find them in the/Extras
folder.
- Yes, Safari 14 breaks DRM patch on both Catalina and Big Sur on
iMac19,1
SMBIOS w/shikigva=80
. - I'm not sure if
iMacPro1,1
SMBIOS w/shikigva=128
will do any better.
- This is also a DRM issue.
- Try disabling loseless option in Apple Music preference.
- If this doesn't help, try run
defaults write com.apple.AppleGVA gvaForceAMDKE -boolean yes
in terminal to forces AMD DRM decoder for streaming services. - If this still doesn't help, try some other combinations described in Acidanthera's WhateverGreen Chart.
- Updated OpenCore to v0.8.6
- Updated AppleALC
- Supported macOS Ventura
History changes
- Updated OpenCore to v0.8.4
- Updated OpenCore to v0.8.3
- Updated OpenCore to v0.8.2
- Updated OpenCore to v0.8.1
- Updated WhateverGreen, AppleALC, AirportBrcmFixup
- Switched
Reset NVRAM
andToggle SIP
to configurable boot entry protocol drivers according to the latest manual
- Updated OpenCore to v0.8.0
- Updated AppleALC
- Adapted new entries to the latest manual
- Updated OpenCore to v0.7.9
- Updated Lilu, AppleALC and WhateverGreen
- Adapted new entries to the latest manua
- Updated OpenCore to v0.7.7
- Updated Lilu, AppleALC and WhateverGreen
- Adapted new entries to the latest manual
- Updated OpenCore to v0.7.6
- Updated Lilu and SMC kexts
- Added new entries of configuration
- Adjusted
UIScale
location
- Updated OpenCore to v0.7.5
- Updated AppleALC and WhateverGreen
- Added kext version information into config.plist
- Updated OpenCore to v0.7.4 to satisfy macOS Monterey
- Updated AppleALC and WhateverGreen
- Adjust config entries order according to the latest manual
- Updated OpenCore to v0.7.3
- Updated kexts and resources
- Change drivers config style according to the latest manual
- Updated OpenCore to v0.7.2
- Updated kexts and resources
- Updated OpenCore to v0.7.1
- Updated kexts and resources
- Updated OpenCore to v0.7.0
- Updated kexts and resources
- Updated OpenCore to v0.6.9
- Updated Lilu and her friends
- Updated OpenCore to v0.6.8
- Updated kexts
- Added mouse support by setting
PickerAttributes
to19
- Updated OpenCore to v0.6.7
- Updated kexts
- Replaced SSDTs to acidanthera version
- Moved Apple quick charge properties from
USBPorts.kext
toSSDT-EC-USBX.aml
- Readded
shikigva 80
to fix Apple TV DRM
- Fixed invalid maskbit in
PickerAttributes
- Disabled unnecessary
AllowRelocationBlock
- Updated OpenCore to v0.6.6
- Updated
Lilu
and her friends - Replaced
BootProtect
withLauncherOption
andLauncherPath
- Added new terms and set to default value
- Removed
Bootstrap.efi
- Set
PickerAttributes
to15
(just because I don't like cursor) - Updated some resources
- Updated OpenCore to v0.6.5
- Updated
Lilu
and her friends - Set
PickerAttributes
to25
- Set
PickerVariable
toModern
- Updated
EFI/OC/Resources/Image
to experience modern boot picker icon set (Big Sur style) - Deprecated
DeduplicateBootOrder
quirk
- Updated OpenCore to v0.6.4
- Updated
Lilu
and her friends - Enabled
ResetLogoStatus
to fix potential logo missing problem when booting Windows - Deprecated
run-efi-updater
NVRAM variable (not working on Big Sur) and enabledBlacklistAppleUpdate
quirk - Added
SystemAudioVolume
NVRAM variable to meet the latestPlayChime
standard - Disabled
DeduplicateBootOrder
as is now deprecated
- Adjust
USBPorts.kext
to support Apple quick charge for Big Sur. - Drop WhateverGreen DRM patch for Big Sur.
- Updated OpenCore to v0.6.3
- Updated
Lilu
and her friends
- Updated OpenCore to v0.6.2
- Updated
Lilu
and her friends - Set new entries of OpenCore v0.6.2 config to failsafe as they are mainly relevant to legacy machines
- Drop
SSDT-MEM2-DMAC.aml
, not necessary
- Added
bootstrap
for better booting experience - Merged USB quick charging into
USBPorts.kext
- Fixed USB mapping IOClass from
AppleUSBMergeNub
toAppleUSBHostMergeProperties
to match Catalina standard - Disabled some debug terms as this is a
RELEASE
build - Disabled
SetupVirtualMap
, not needed for MSI B360M - Disabled Apple Secure Boot, yeah, changed my mind
- Updated OpenCore to v0.6.1
- Updated
Lilu
and her friends - Set
DiscardHibernateMap
tofalse
as I turned off hibernate on Windows - Added
Arch
andMinKernel
settings to meet OpenCore's latest standard - Set
DisableLinkeditJettison
totrue
to letLilu
and others function in macOS Big Sur with best performance withoutkeepsyms=1
boot argument - Added Medium Security of Apple Secure Boot, which means
SecureBootModel
set toDefault
,ApECID
set to0
andDmgLoading
set toSigned
- Set
AdviseWindows
tofalse
as EFI partition is first on the Windows drive - Deleted
ExFatDxe.efi
- Note: Hotkeys to launch picker now works fine as OpenCore now won't reset input protocols any more
- Updated OpenCore to v0.6.0
- Optimized ACPI hotpatches:
SSDT-EC-USBX
,SSDT-AWAC
,SSDT-PLUG
,SSDT-PMCR
- Added new ACPI hotpatches for final touch:
SSDT-MEM2-DMAC
,SSDT-SBUS-MCHC
- Updated
Lilu
and her friends - Deleted
CPUFriend
as i5-9400 does not necessarily need this - Added
AirportBrcmFixup
to fix Wi-Fi lagging after sleeping - Added an icon for
ResetSystem.efi
- Changed some
<data>
fields in config to<number>
and<string>
to avoid being eaten by Xcode 11 - Added
Firmware
mode to ResetSystem to reboot into BIOS settings - Moved
shikigva
andigfxfw
fromboot-arg
intoDeviceProperties
- Initiated repository
- Acidanthera's OpenCore Respository
- Sukka's OpenCore Document zh_Hans
- Installation Guide from Dortania, DalianSky and XJN