macOS Monterey con OpenCore en Z390 Aorus Elite

La actualización de un sistema Big Sur a macOS 12 Monterey ha resultado sencilla y el nuevo sistema funciona bien. Prácticamente la misma configuración que utilizo con Big Sur ha resultado válida para Monterey.

Hardware

  • Placa base Gigabyte Z390 Aorus Elite: CPU Intel i7 9700 de novena generación (iGPU Intel UHD Graphics 630), audio Realtek ALC1220, Ethernet Intel I219V
  • Tarjeta gráfica AMD Radeon RX580
  • Fenvi FV-T919 con Wifi y Bluetooth.

¿Qué funciona bien?

  • Radeon RX580 (VDA Decoder soportado)
  • Apagado, reinicio y reposo
  • Audio (ALC1220 y HDMI)
  • Puertos USB (USBMap.kext específico para este modelo de placa base)
  • Airdrop, Mensajes.

Configuración de BIOS (versión F10h)

  • CFG Lock: Disabled
  • CSM: Disabled
  • VT-d: Disabled
  • Secure Boot: Disabled
  • Fast Boot: Disabled
  • OS Type: Windows 8/10
  • Platform Power Management: Disabled
  • XHCI Hand-Off: Enabled
  • Network Stack: Disabled
  • Wake on LAN: Disabled
  • DVMT Pre-Allocated: 256M or higher
  • Integrated Graphics: Disabled / Enabled (dependiendo de SMBIOS).

OpenCore 0.7.6

He usado la versión más reciente de OpenCore, 0.7.6, con la misma configuración que uso para Big Sur. Para que la instalación tenga éxito hay que ajustar 3 parámetros relacionados con la seguridad:

  • SecureBootModel=j160 o Default en config.plist (j160 corresponde al arranque seguro del modelo MacPro7,1 y Default asigna al arranque seguro el mismo modelo que tenemos en SMBIOS)
  • SIP habilitado (csr-active-config=00000000 en config.plist)
  • Gatekeeper habilitado (sudo spctl –master-enable en Terminal).

Estas opciones de seguridad se pueden cambiar después de la instalación ya que no parecen ser necesarias para el funcionamiento de Monterey.

SMBIOS

El modelo de SMBIOS que mejor funciona en mi sistema con Monterey es MacPro7,1. Este modelo de Mac requiere:

  • dGPU AMD RX580 como tarjeta principal
  • iGPU Intel 630 deshabilitada en BIOS
  • RestrictEvents.kext para evitar avisos de configuración incorrecta de memoria RAM.

CPUFriend.kext

Aunque la CPU es bien reconocida con SMBIOS de MacPro, mi impresión es que no funciona a baja frecuencia tan a menudo como con iMac19.1. Por esta razón, he generado la extensión CPUFriendDataProvider.kext desde el comando CPUFriendFriend para acompañar a CPUFriend.kext. Con estas 2 kexts (CPUFriendDataProvider.kext + CPUFriend.kext) la CPU presenta correcta gestión de energía y la frecuencia cae a 800 MHz cuando hay poca demanda.

SSDT

  • SSDT-AWAC-DISABLE: para corregir errores con el reloj del sistema en placas base Z390, B460, Z490
  • SSDT-EC-USBX: Embedded Controller falso en Skylake y posteriores, también define la alimentación de puertos USB
  • SSDT-PLUG: administración de energía en Haswell posteriores; configura el parámetro plugin-type=1 en el primer procesador
  • SSDT-PMC: NVRAM nativa en sistemas que carecen de ella, por ejemplo los chips Z390
  • SSDT-USBW: para que el ordenador salga del reposo con un único toque de teclado o ratón (este SSDT trabaja junto a la extensión USBWakeFixup.kext) >> muy probablemente no son necesarios si tenemos acpi-wake-type=01 en DeviceProperties del dispositivo USB.

Drivers

  • CrScreenshotDxe.efi: capturas de pantalla en OpenCore
  • HfsPlus.efi: para reconocer dispositivos HFS+
  • OpenCanopy.efi: picker (selector) gráfico con temas
  • OpenRuntime.efi: controlador esencial para poder iniciar macOS.

Tools

OpenShell.efi: shell UEFI para realizar tareas de línea de comandos desde OpenCore.

config.plist

La configuración es la misma que para Big Sur. Algunos detalles significativos:

  • DeviceProperties > Add > PciRoot(0x0)/Pci(0x14,0x0): propiedad acpi-wake-type tipo data valor 01, para mejorar la salida del reposo
  • Misc > Boot > PickerAttributes=144 para habilitar el sistema Flavours en OpenCanopy
  • Misc >> Security >> AllowToggleSip=True para mostrar en el selector la herramienta ToggleSIP que permite cambiar fácilmente entre SIP enabled y SIP disabled para el arranque actual
  • NVRAM > 7C436110-AB2A-4BBB-A880-FE41995C9F82 > boot-args: alcid=7 para el audio (puedes probar también alcid=11, ambos layout-id funcionan bien).

Intel UHD Graphics 630

Yo prefiero usar SMBIOS de MacPro7,1 que requiere que la iGPU esté deshabilitada en BIOS. Esta configuración es la que tiene la carpeta EFI-macpro.
Si no tienes tarjeta gráfica externa y necesitas usar la integrada, has de utilizar la carpeta EFI-intel630 que lleva estas modificaciones:

  • habilitar la iGPU en BIOS (y ponerla como tarjeta principal)
  • añadir en config.plist >> boot-args >> igfxonln=1
  • añadir en config.plist >> DeviceProperties >> código para parchear el framebuffer y que la iGPU sea bien detectada.
        <key>PciRoot(0x0)/Pci(0x2,0x0)</key>
        <dict>
            <key>AAPL,ig-platform-id</key>
            <data>BwCbPg==</data>
            <key>framebuffer-patch-enable</key>
            <data>AQAAAA==</data>
            <key>framebuffer-con0-enable</key>
            <data>AQAAAA==</data>
            <key>framebuffer-con1-enable</key>
            <data>AQAAAA==</data>
            <key>framebuffer-con2-enable</key>
            <data>AQAAAA==</data>
            <key>framebuffer-con0-alldata</key>
            <data>AQAJAAAEAADHAwAA</data>
            <key>framebuffer-con1-alldata</key>
            <data>AgAKAAAEAADHAwAA</data>
            <key>framebuffer-con2-alldata</key>
            <data>AwQIAAAIAADHAwAA</data>
            <key>framebuffer-stolenmem  </key>
            <data>AAAwAQ==</data>
            <key>hda-gfx</key>
            <string>onboard-1</string>
            <key>name</key>
            <string>Intel UHD Graphics 630</string>
        </dict>

El archivo config.plist ya esta ajustado de esta manera.

Nota: no olvides renombrar la carpeta EFI desde EFI-macpro o EFI-intel630 a EFI.

Instalación de Monterey

El proceso es el mismo para la instalación y para la actualización:

  • Una carpeta EFI que funcione
  • Descargar macOS 12 desde Actualización de Software
  • Ejecutar Install macOS Monterey
  • El proceso de actualización tiene una primera fase que transcurre en el escritorio de Big Sur, 2 reinicios para arrancar desde Macintosh HD y un tercer reinicio para arrancar desde el disco de destino con Monterey.

Monterey en funcionamiento

Por lo que he visto hasta ahora, Monterey funciona muy bien, prácticamente como Big Sur. Todo el hardware funciona igual que antes. El rendimiento de la tarjeta RX 580 no ha cambiado. Wifi y Bluetooth desde la tarjeta Fenvi T-919 y Ehernet, sonido, reposo, etc. también funcionan bien.

Importante

  1. ResetNVRAM la primera vez que arrancas con una EFI nueva.
  2. Presiona la barra espaciadora para mostrar las entradas auxiliares en el menú de OpenCore.

EFIs para iMac19,1 (Intel UHD 630) y MacPro7,1 (AMD RX580)

EFI-intel630 / EFI-macpro

Deja un comentario