macOS Monterey con Clover 5142

La actualización de un sistema Big Sur a macOS 12 Monterey ha resultado sencilla y el nuevo sistema funciona bien. En un artículo anterior se comentaba el uso de OpenCore como boot loader. En esta ocasión se comenta el uso de Clover. La misma configuración que utilizo con Big Sur es válida para Monterey.

Nota: la configuración de las opciones de BIOS, las características del hardware y otras partes del texto están incluidas en macOS Monterey con OpenCore 0.7.6 por lo que se omiten en este post en el que solamente comentaré detalles específicas de Clover.

Clover 5142 y config.plist

Clover 5142 es la última revisión en el momento de escribir este artículo. Se puede descargar desde su sitio de GitHub, has de seleccionar CloverV2-5142.zip, no el PKG. Estos son los ajustes más importantes del archivo de configuración.

ACPI

  • DSDT patches / RenameDevices >> change HDAS to HDEF (aunque AppleALC hace este cambio automáticamente, el sonido no funciona bien sin añadirlo aquí).
  • Fixes: AddHDMI, DeleteUnused, FixACST, FixADP1, FixDarwin7, FixRTC, FixRegions, FixS3D, FixTMR and FixWAK >> True.
  • DropTables: DMAR y MATS.
  • FixHeaders y HaltEnabler >> True.
  • SSDT >> PluginType=True.

Boot

  • Arguments=slide=0 darkwake=8 agdpmod=pikera (agdpmod=pikera mejora el comportamiento gráfico suprimiendo ocasionales cuelgues al realizar algunas tareas intensivas).
  • Configurar DefaultVolume con el nombre del volumen falla en ocasiones pero funciona muy bien con parte de la ruta al dispositivo PCI (Device Path), visible en el bootlog de Clover. Ejemplo:
DefaultVolume=HD(2,GPT,D2F3E609-1259-48DE-90C1-8229F87B9973,0x64028,0x1D161920)

Devices

  • Audio: Inject=13 (11 también es válido) y AFGLowPowerState=True.
  • Properties (para mejorar la salida del reposo con un solo toque de teclado o ratón):
<key>PciRoot(0x0)/Pci(0x14,0x0)</key>
<dict>
        <key>acpi-wake-type</key>
        <data>AQ==</data>

GUI

  • HideVolume >> \EFI\BOOT\BOOTX64.EFI, Recovery, Legacy y Windows. De esta forma, sólo se muestran volúmenes de arranque con macOS y Windows.

KernelAndKextPatches

  • DellSMBIOSPatch=True. Aunque es un parche para sistemas Dell, Windows parece funcionar mejor con este quirk habilitado al no recibir datos SMBIOS desde Clover.
  • KextToPatch >> Enable TRIM for SSD.
  • PanicNoKextDump=True.

Quirks

  • AvoidRuntimeDefrag / DevirtualiseMmio / DisableIoMapper / DisableLinkeditJettison / EnableSafeModeSlide / FuzzyMatch / ProtectUefiServices / ProvideCustomSlide / RebuildAppleMemoryMap / SetupVirtualMap / SyncRuntimePermissions >> True.

RTVariables

  • BooterConfig=0x28.
  • CsrActiveConfig=0x00000000.
  • ROM=UseMacAddr0.

SystemParameters

  • InjectKexts / InjectSystemID >> True.

SMBIOS

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

  • dGPU AMD como tarjeta principal
  • iGPU deshabilitada en BIOS
  • RestrictEvents.kext para evitar avisos de mala configuración de la memoria RAM.

CPUFriend.kext

Aunque la CPU es bien reconocida con SMBIOS de MacPro, mi impresión personal es que trabaja a frecuencias algo más elevadas que con iMac19,1. Usando juntas las 2 extensiones CPUFriend.kext + CPUFriendDataProvider.kext la CPU presenta una buena gestión de energía y la frecuencia baja a 800 MHz cuando tiene poca demanda.

SSDTs, drivers y kexts

SSDTs en EFI/CLOVER/ACPI/patched:

  • SSDT-EC-USBX: Embedded Controller ficticio en Skylake y posteriores, también ajusta la energía de los puertos USB.
  • SSDT-PLUG: CPUPM en Haswell y posteriores; configura el parámetro plugin-type=1 en el primer procesador.
  • SSDT-PMC: soporte para NVRAM nativa en sistemas que carecen de ella, por ejemplo chipsets Z390.

Drivers en EFI/CLOVER/drivers/UEFI:

  • ApfsDriverLoader.efi: para reconocer particiones APFS
  • VBoxHfs.efi: para reconocer particiones HFS+
  • OpenRuntime.efi: driver esencial para arrancar macOS.

Kexts en EFi/CLOVER/kexts/Other:

  • CPUFriend.kext
  • CPUFriendDataProvider.kext
  • IntelMausi.kext
  • Lilu.kext
  • NVMeFix.kext
  • RestrictEvents.kext
  • SMCProcessor.kext
  • SMCSuperIO.kext
  • USBMap.kext (específico para esta placa base)
  • VirtualSMC.kext
  • WhateverGreen.kext.

Carpeta EFI

Puedes descargar la carpeta EFI completa desde aquí.

Deja una respuesta

(La dirección de email no es necesaria)