- Joined
- Dec 10, 2010
- Messages
- 1,377
- Motherboard
- Gigabyte Z390 Aorus Elite
- CPU
- i9-9900K
- Graphics
- RX 6600 XT
- Mobile Phone
Hardware
- Motherboard: Gigabyte Z390 Aorus Elite
- CPU:Intel i7 9700
- iGPU:Intel UHD Graphics 630
- dGPU:AMD Radeon RX 6600 8GB
- Sound:Realtek ALC1220
- Ethernet:Intel I219V7
- Wifi + BT:Fenvi FV-T919 BCM94360CD.
- Radeon graphics card (VDA decoder fully supported)
- Shutdown, restart and sleep
- Audio (ALC1220 and HDMI)
- USB ports (USB ports map for this motherboard)
- Airdrop, iMessage...
- CFG Lock: Disabled
- CSM: Disabled
- VT-d: Disabled
- Fast Boot: Disabled
- OS Type: Windows 8/10 WHQL
- Platform Power Management: Disabled
- XHCI Hand-Off: Enabled
- Network Stack: Disabled
- Wake on LAN: Disabled
- Secure Boot: Disabled
- DVMT Pre-Allocated: 256M or higher
- Integrated Graphics: Disabled / Enabled (according to SMBIOS)
OpenCore 0.8.6
For the installation to be successful, 3 parameters related to security must be set:
- SecureBootModel=j160 or SecureBootModel=Default in config.plist (Apple secure boot j160 corresponds to MacPro7,1 and Default sets the same model as in SMBIOS)
- SIP enabled (csr-active-config=00000000 in config.plist)
- Gatekeeper enabled (sudo spctl --master-enable in Terminal).
SMBIOS
SMBIOS model that works best on my systems is iMac19,1. This Mac model requires:
- AMD dGPU as main card
- Intel 630 iGPU enabled in BIOS
- iGPU code for headless mode in config.plist.
- AMD dGPU as main card
- Intel 630 iGPU disabled in BIOS (as this Mac models lack integrated GPU, they have only AMD GPU)
- RestrictEvents.kext to avoid RAM misconfiguration warnings (MacPro only)
- CPUFriend.kext: not mandatory but in my opinion it improves CPU Power Management (MacPro only).
Although the CPU is well detected with MacPro's SMBIOS, my guess is that it does not run at low frequency as often as it does with iMac19.1. For this reason, I have generated a CPUFriendDataProvider.kext extension from the CPUFriendFriend command to accompany CPUFriend.kext. With these 2 kexts (CPUFriendDataProvider.kext + CPUFriend.kext) the CPU shows correct power management and frequency drops to 800 MHz at system idle.
SSDTs, drivers and tools
SSDTs
- SSDT-AWAC-DISABLE: to fix errors with system clock on Z390, B460, Z490 motherboards
- SSDT-EC-USBX: fake Embedded Controller on Skylake and later, also fix USB power
- SSDT-PLUG: power management on Haswell and newer CPUs; to configure the plugin-type=1 parameter on the first processor
- SSDT-PMC: native NVRAM support on systems that lack it, for example Z390 chipsets
- SSDT-USBW: to wake from sleep with a single mouse or keyboard touch (this SSDT works with USBWakeFixup.kext) >> very likely not needed if USB device in DeviceProperties has acpi-wake-type=01.
- HfsPlus.efi: to recognize HFS+ devices
- OpenRuntime.efi: essential driver to run macOS
- OpenCanopy.efi: graphical picker with themes
- CrScreenshotDxe.efi: Screenshots in OpenCore.
- OpenShell.efi: UEFI shell to perform command line tasks from OpenCore
Some settings:
- DeviceProperties >> Add >> PciRoot(0x0)/Pci(0x14,0x0): acpi-wake-type as data=01, to improve wake from sleep
- Misc >> Boot >> PickerAttributes=144 to enable Flavours system
- NVRAM> 7C436110-AB2A-4BBB-A880-FE41995C9F82> boot-args: alcid=7 agdpmod=pikera (agdpmod=pikera not needed with RX 580, only with RX 6600 and other Navi cards)
- Misc >> Security >> AllowToggleSip=True to show in the picker the ToggleSIP tool that allows to easily switch between SIP enabled and SIP disabled for the current boot.
- iGPU and dGPU must be enabled in BIOS with dGPU as primary
- There should be no cable between iGPU HDMI port and any type of display
- Lilu and WhatEverGreen properly installed
- SMBIOS iMac19.1.
XML:
<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>AwCRPg==</data>
<key>device-id</key>
<data>mz4AAA==</data>
<key>enable-metal</key>
<data>AQAAAA==</data>
<key>rps-control</key>
<data>AQAAAA==</data>
</dict>
This code has data values in Base64, in plist editors they can be seen as hexadecimal, e.g. AwCRPg== in Base64 (AAPL,ig-platform-id) = 0300913E in hexadecimal.
To check if the VDA Decoder function is activated you can get Hackintool app (Fully Supported or Failed in the first System tab).
Notes:
- AAPL,ig-platform-id=07009B3E is mandatory
- device-id=9B3E000 to be displayed as Intel UHD Graphics 630 instead of Kabylake Unknown
- enable-metal=01 to enable Metal 3 in Ventura
- rps-control=01 to enable RPS control patch (improves IGPU performance).
If you don't have an external graphics card and need to use the iGPU as single card, you have to use iMac19,1 SMBIOS with code in config.plist to patch the framebuffer and other properties so that the iGPU is well detected:
XML:
<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>BwCbPg==</data>
<key>device-id</key>
<data>mz4AAA==</data>
<key>device_type</key>
<string>VGA compatible controller</string>
<key>enable-hdmi20</key>
<data>AQAAAA==</data>
<key>enable-metal</key>
<data>AQAAAA==</data>
<key>framebuffer-con0-busid</key>
<data>AAAAAA==</data>
<key>framebuffer-con0-enable</key>
<data>AQAAAA==</data>
<key>framebuffer-con0-pipe</key>
<data>EgAAAA==</data>
<key>framebuffer-con1-busid</key>
<data>AAAAAA==</data>
<key>framebuffer-con1-enable</key>
<data>AQAAAA==</data>
<key>framebuffer-con1-pipe</key>
<data>EgAAAA==</data>
<key>framebuffer-con2-busid</key>
<data>BAAAAA==</data>
<key>framebuffer-con2-enable</key>
<data>AQAAAA==</data>
<key>framebuffer-con2-pipe</key>
<data>EgAAAA==</data>
<key>framebuffer-con2-type</key>
<data>AAgAAA==</data>
<key>framebuffer-patch-enable</key>
<data>AQAAAA==</data>
<key>framebuffer-stolenmem</key>
<data>AAAwAQ==</data>
<key>hda-gfx</key>
<string>onboard-1</string>
<key>force-online</key>
<data>AQAAAA==</data>
<key>rps-control</key>
<data>AQAAAA==</data>
</dict>
AMD RX 6600 on Ventura with MacPro or iMacPro SMBIOS
AMD Navi cards run fine on Ventura when using iMac SMBIOS with agdpmod=pikera in boot args as the only needed setting. But when using MacPro or iMacPro SMBIOS a lot of users have reported black screen. The simplest way to fix this is to add in DeviceProperties of config.plist some properties that set Henbury framebuffer for each of the 4 ports of this GPU.
By default, Radeon framebuffer (ATY,Radeon) is loaded. But, in AMDRadeonX6000Framebuffer.kext >> Contents >> Info.plist we can see that AMDRadeonNavi23Controller has ATY,Henbury and 6600 series are Navi 23. This is why this framebuffer is selected.
The patch is added in this way:
XML:
<key>DeviceProperties</key>
<dict>
<key>Add</key>
<dict>
<key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)</key>
<dict>
<key>@0,name</key>
<string>ATY,Henbury</string>
<key>@1,name</key>
<string>ATY,Henbury</string>
<key>@2,name</key>
<string>ATY,Henbury</string>
<key>@3,name</key>
<string>ATY,Henbury</string>
</dict>
</dict>
<key>Delete</key>
<dict/>
</dict>
Notes:
- PCI path to the GPU may be the same on your system but it is convenient to check it with Hackintool (app) or gfxutil (Terminal utility).
- This is not needed for Monterey.
- This is not needed for RX 580 or any other Polaris card.
- 5500 ATY,Python
- 5700 ATY,Adder
- 6600 ATY,Henbury
- 6800 ATY,Belknap
- 6900 ATY,Carswell
The process is almost the same for installation and for update:
- You need a working EFI folder
- Download macOS from Software Update or create USB installer; I don't comment about creating USB installer because there are a lot of sites with this info
- Run Install macOS Monterey / Ventura app or the setup program from the booted USB
- The process has 2 reboots booting from Install macOS disk and a third reboot booting from the target disk.
There are eight configuration files, the ones starting with config-12 are for Monterey and the ones starting with config-13 are for Ventura. Variants are included for 4 possible SMBIOS:
- iMac19,1 with AMD dGPU + iGPU headless mode
- iMac19,1 with iGPU as main card without dGPU
- MacPro7,1 with dGPU + iGPU disabled
- iMacPro1,1 with dGPU + iGPU disabled.
- config-12-imac-amd.plist: iMac19,1 + dGPU AMD + iGPU enabled in BIOS
- config-12-imac-intel.plist: iMac19,1 + iGPU enabled in BIOS as main card
- config-12-imacpro.plist: iMacPro1,1 + dGPU AMD + iGPU disabled in BIOS
- config-12-macpro.plist: MacPro7,1 + dGPU AMD + iGPU disabled in BIOS
- config-13-imac-amd.plist: iMac19,1 + dGPU AMD + iGPU enabled in BIOS
- config-13-imac-intel.plist: iMac19,1 + iGPU enabled in BIOS as main card
- config-13-imacpro.plist: iMacPro1,1 + dGPU AMD + iGPU disabled in BIOS
- config-13-macpro.plist: MacPro7,1 + dGPU AMD + iGPU disabled in BIOS.
- rename selected config file to config.plist
- current GPU is AMD RX 6600 XT; for RX 580 and other Polaris cards remove agdpmod=pikera from boot-args and don't use the framebuffer patch
- add serial numbers for the SMBIOS model.
- Don't forget to rename the selected config file to config.plist.
- Do ResetNVRAM the first time you boot a new EFI.
- Press spacebar to show auxiliary entries in the picker.
Acidanthera: OpenCore and kexts
Dortania: OpenCore guides.
Attachments
Last edited: