Jump to content

[GUIDE] OpenCore: how to update Big Sur 11.4 > Monterey Beta in Z390 Aorus Elite + RX 580


13 posts in this topic

Recommended Posts

I have downloaded macOS 12 Monterey beta and updated a Big Sur 11.4 system in a fairly simple way.

 

Hardware

  • Gigabyte Z390 Aorus Elite motherboard: 9th generation Intel i7 9700 CPU (Intel UHD Graphics 630 iGPU), Realtek ALC1220 audio, Intel I219V Ethernet
  • AMD Radeon RX 580 8GB graphics card
  • Wifi and Bluetooth Fenvi FV-T919.

 

What works well?

  • Radeon RX 580 (VDA decoder fully supported)
  • Shutdown, restart and sleep
  • Audio (ALC1220 and HDMI)
  • USB ports (USBMap.kext specific for this motherboard)
  • Airdrop, iMessage.

 

BIOS settings (version F10h)

  • CFG Lock: Disabled
  • CSM: Disabled
  • VT-d: Disabled
  • Fast Boot: Disabled
  • Intel Platform Trust Technology (PTT): Disabled
  • OS Type: Windows 8/10
  • Platform Power Management: Disabled
  • XHCI Hand-Off: Disabled
  • Network Stack: Disabled
  • Wake on LAN: Disabled
  • Secure Boot: Disabled
  • Initial Display Output: PCIe 1 Slot
  • DVMT Pre-Allocated: 256M or higher
  • Integrated Graphics: Disabled / Enabled (according to SMBIOS).

 

Note about TPM (Trusted Platform Module):
The Z390 Aorus Elite board has a connector to install a TPM (Trusted Platform Module) chip. If you have such a module installed, you have to disable it during Monterey installation. Once installed, you can re-enable it.
This is something that may change in subsequent versions of Monterey.


OpenCore 0.7.1

I have used the most recent version of OpenCore, 0.7.1, with the same settings that I use for Big Sur except for 3 parameters related to security:

  • SecureBootModel=Disabled in config.plist
  • SIP enabled (csr-active-config=00000000 in config.plist)
  • Gatekeeper enabled (sudo spctl --master-enable in Terminal).

These 3 options have allowed Monterey installation or upgrade. Without them, installation seems to start well but does not complete.
All of these security options can be reverted to their previous state (if desired) after installation as they do not appear to be necessary for Monterey operation at this time. As I have commented regarding TPM, this is something that may change in subsequent versions of Monterey.

SMBIOS

The SMBIOS that works best on my system with Monterey is MacPro7,1, this Mac model requires:

  • AMD dGPU as main card
  • iGPU disabled in BIOS
  • RestrictEvents.kext to avoid RAM misconfiguration warnings.

 

CPUFriend.kext
Although the CPU is well recognized with MacPro's SMBIOS, my impression is that it did not run at low frequencies as often as I had seen with iMac19.1. For this reason I have created CPUFriendDataProvider.kext with the CPUFriendFriend command to accompany CPUFriend.kext. With these 2 kexts, CPU has correct CPUPM and frequency drops to 800 MHz when there is little demand.

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.

 

Drivers:

  • CrScreenshotDxe.efi: Screenshots in OpenCore
  • HfsPlus.efi: to recognize HFS + devices
  • OpenCanopy.efi: graphical picker with themes
  • OpenRuntime.efi: essential driver to start macOS.

 

Tools:

  • CsrUtil.efi: to enable or disable SIP from OpenCore
  • OpenShell.efi: UEFI shell to perform command line tasks from OpenCore

 

config.plist

Settings are generally the same as for Big Sur with the noted exception of SecureBootModel and csr-active-config.
Some significant details:

  • 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=13 for audio (you can also try 11, both layout-id work fine).

 

Intel UHD Graphics 630

I prefer to use SMBIOS from MacPro7,1 so the iGPU is disabled in BIOS. This setting is that of the attached EFI config-macpro.plist file.
If you don't have a dGPU and you use the integrated card you have to use the config-intel.plist file and of course enable the iGPU in BIOS (and put it as main card). The settings for the iGPU should work fine on 8th or 9th generation CPUs, but differences between motherboard manufacturers may require additional adjustments to the properties that define the framebuffer patch.
Don't forget to rename your chosen configuration file to config.plist.

USB ports map

In the Kexts folder there are 2 files:

  • USBMap-macpro.kext: For use with MacPro7,1 SMBIOS (config-macpro.plist file)
  • USBMap-intel.kext: For use with iMac19.1 SMBIOS (config-intel.plist file).

You have to rename the chosen one to USBMap.kext.

Installing Monterey

The process is the same for installation and for update:

  • A working EFI folder
  • Download and install macOSDeveloperBetaAccessUtility or macOSPublicBetaAccessUtility
  • Download macOS 12 beta from Software Update
  • Run Install macOS Monterey beta
  • The update process has a phase on the Big Sur desktop, 2 reboots to boot from Macintosh HD and a third reboot booting from the target disk with Monterey.

 

Monterey on the go

From what I've seen so far, Monterey performs surprisingly well considering its very early release state. It works practically as well as Big Sur. I have observed a longer shutdown time but nothing else. All hardware works the same as before. The performance of the RX 580 dGPU has not changed. Wifi and Bluetooth provided by the Fenvi T-919 card work well. Ehernet, sound, sleep, etc., work fine too.

Note: EFI folder is configured with SecureBootModel=Disabled and csr-active-config=00000000. After installing Monterey, you can go back to SecureBootModel=Default.

Important!

  • chosen config plist file > rename to config.plist
  • chosen USBMap kext > rename to USBMap.kext.

 

 

EFI-Monterey-0.7.1.zip

Edited by miliuco
  • Like 1
  • Thanks 2

I have never needed agdpmod=pikera because I have an AMD RX 580 and since High Sierra it has worked fine without this boot arg.
But in Monterey beta, very occasionally, the screen goes black in the middle of a task or when coming out of sleep and I can't fix it without rebooting.

It seems that agdpmod=pikera solves this problem, at least for 3 days that I have it activated I have not had a black screen and macOS comes out of sleep correctly.

  • Like 1
1 hour ago, miliuco said:

I have never needed agdpmod=pikera because I have an AMD RX 580 and since High Sierra it has worked fine without this boot arg.
But in Monterey beta, very occasionally, the screen goes black in the middle of a task or when coming out of sleep and I can't fix it without rebooting.

It seems that agdpmod=pikera solves this problem, at least for 3 days that I have it activated I have not had a black screen and macOS comes out of sleep correctly.

I also never had the need to use that bootarg with my AMD RX 580 although it is at the lower end of the GB allotment. I just wonder if the problem of black screen comes about when one is running more than one monitor.

  • Like 1
33 minutes ago, eSaF said:

I also never had the need to use that bootarg with my AMD RX 580 although it is at the lower end of the GB allotment. I just wonder if the problem of black screen comes about when one is running more than one monitor.

No, one monitor. It’s the same hardware as in Big Sur or Catalina. I think it’s something related to beta version. 

  • Thanks 1

great job @miliuco, thanks for this tutorial, could you be more talkative about: DeviceProperties> Add> PciRoot (0x0) / Pci (0x14,0x0): acpi-wake-type as data = 01, to improve wake from sleep

never noticed that before, 

thank you

Posted (edited)
On 7/11/2021 at 10:33 PM, odemolay said:

great job @miliuco, thanks for this tutorial, could you be more talkative about: DeviceProperties> Add> PciRoot (0x0) / Pci (0x14,0x0): acpi-wake-type as data = 01, to improve wake from sleep...

wake.thumb.png.82eb729c88c7a10b91b6626ab537a7d2.png

PciRoot(0x0)/Pci(0x14,0x0) is the PCI path to the USB device, you must set yours, it's easy to see in Hackintool > PCIe tab > Device Path column, here you must find the controller as seen in the USB tab.

If there are more than 1 USB controller, select the one with keyboard / mouse attached.

 

Edited by miliuco

Updated to Developer beta 3 build 21A5284e.

I have needed the same security options as in previous beta:

  • Intel Platform Trust Technology (PTT): Disabled in BIOS
  • SecureBootModel=Disabled in config.plist
  • SIP enabled (csr-active-config=00000000 in config.plist)
  • Gatekeeper enabled (sudo spctl --master-enable in Terminal) in macOS.

This beta seems to work very well, almost like a mature version.

  • Like 2
  • miliuco changed the title to [GUIDE] OpenCore: how to update Big Sur 11.4 > Monterey Beta in Z390 Aorus Elite + RX 580

Updated to Developer beta 4 build 21A5294g.

I have needed:

  • SIP enabled (csr-active-config=00000000 in config.plist)
  • Gatekeeper enabled (sudo spctl --master-enable in Terminal) in macOS.

But PTT Disabled in Bios and SecureBootModel Disabled in config.plist no longer seem to be needed.


SecureBootModel has a new value (x86legacy) since build 0.7.2 dc20977, this is the recommended value for Monterey on Macs without a T2 chip and, by extension, Hacks.
I have used SecureBootModel=x86legacy and the update has worked fine.

  • Like 1
2 minutes ago, miliuco said:

But PTT Disabled in Bios

I have to keep this Enabled in the BIOS otherwise Windows 11 breaks asking for Product Key although it is licensed automatically with my account details and will not accept it even when manually entered forcing a Windows reinstall.

11 hours ago, eSaF said:

I have to keep this Enabled in the BIOS otherwise Windows 11 breaks asking for Product Key although it is licensed automatically with my account details and will not accept it even when manually entered forcing a Windows reinstall.

This can be related to 2 things.
In BIOS there is an OS Type option (Other OS, Windows 8.1 / 10, Windows 8.1 / 10 WHQL), it may be that if you choose Windows 8/10 it requires PTT enabled.
It may also be that OpenCore is passing SMBIOS data to Windows. Do you have Kernel> Quirks> CustomSMBIOSGuid> True and PlatformInfo> UpdateSMBIOSMode> Custom to avoid this?

1 hour ago, miliuco said:

This can be related to 2 things.
In BIOS there is an OS Type option (Other OS, Windows 8.1 / 10, Windows 8.1 / 10 WHQL), it may be that if you choose Windows 8/10 it requires PTT enabled.
It may also be that OpenCore is passing SMBIOS data to Windows. Do you have Kernel> Quirks> CustomSMBIOSGuid> True and PlatformInfo> UpdateSMBIOSMode> Custom to avoid this?

In the BIOS the setting is set to Windows 8.1 / 10 WHQL, I will try the other config.plist settings you mentioned. Thanks.

×
×
  • Create New...