/OpenCore_ASRock-B550M_RX6800XT

Hackintosh on ASRock B550M with AMD RX 6800 XT via OpenCore

The UnlicenseUnlicense

Hackintosh on ASRock B550M Steel Legend with AMD RX 6800 XT via OpenCore

About this mac

AMD Power Tool

Hardware configuration

  • AMD Zen 3 Ryzen 7 5800x
  • ASRock B550M Steel Legend
    • Audio: Realtek ALC1200
    • LAN: Dragon RTL8125BG
  • G.Skill Trident Z Neo RGB 2x32GB DDR4 3800Mhz CL18 (F4-3800C18D-64GTZN)
  • ASRock AMD Radeon RX 6800 XT Taichi X 16G OC
  • Intel 660p 1TB m.2 (macOS)
  • Adata XPG SX8200 Pro 1TB m.2 (Windows10)
  • Fenvi FV-HB1200 WiFi BT PCIe Card (BCM94360CS2 Based)
  • Dell P2418D QHD (Monitor)

Before you start make sure you have

Installation

BIOS Settings

  • Exit → Load UEFI BIOS Defaults [Yes]
  • Boot → CSM (Compatibility Support Module) → CSM [Disabled]
  • Advanced → PCI Configuration → Above 4G Decoding [Enabled]
  • Advanced → PCI Configuration → Re-Size BAR Support [Disabled]
  • Advanced → Storage Configuration → SATA Mode [AHCI]
  • Security → Secure Boot → Secure Boot [Disabled]
  • Boot → Fast Boot [Disabled]

XMP

You can enable XMP if your memory supports it.

Gathering files

  • You must download all not bundled kexts and drivers from repositories by yourself.

ACPI

EFI drivers

  • HfsPlus.efi - Needed for seeing HFS volumes(ie. macOS Installers and Recovery partitions/images).
  • OpenRuntime.efi - Must have to work with native NVRAM
  • OpenCanopy.efi - For OpenCore's GUI

Kexts

Kernel patches

  • AMD Kernel Patches - This is where the AMD kernel patching magic happens.
    • Core Count patch needs to be modified to boot your system. Find the three algrey - Force cpuid_cores_per_package patches and alter the Replace value only. (Important! - Read This!)

Resources


Config Property list

Please check Config Example\config.plist for post-install config example.

Pre-Install

Set AMD RX 6800 XT config

  • Add boot-args :
    • Under NVRAM -> Add -> 7C436110-AB2A-4BBB-A880-FE41995C9F82 -> boot-args
    • Add agdpmod=pikera for fixing black screen at boot for Navi 20 GPUs. (More information about Navi20)

Set audio with AppleALC

  • Set AppleALC, under DeviceProperties add PciRoot(0x0)/Pci(0x8,0x1)/Pci(0x0,0x4) dictionary with:
    • layout-id = 1 [Integer/Number]

Platfom information

  • Populated PlatformInfo > Generic section in config.plist, can be easily done with GenSMBIOS please follow OpenCore Desktop Guide.
  • For Navi20 dGPU will work properly, We must use iMacPro1,1 SMBIOS.

Post-Install

  • Misc -> Boot
  • Misc -> Security
  • NVRAM -> Add -> 7C436110-AB2A-4BBB-A880-FE41995C9F82 -> boot-args:
    • Remove -v from your config.plist
  • NVRAM -> Add -> D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14 -> UIScale:
    • One-byte data defining boot.efi user interface scaling. Should be 01 for normal screens and 02 for HiDPI screens. (When using Dell P2418D set it to 02)

Optional - Minimal theme for picker - opencanopy-minimal-theme by tekteq

Set hard-drives as internal

For some reason the NVMe drives are set as external. In order to fix this issue, We will to get the hard-drives id and set them as internal drives.

Hackintool Hard Drives

  • In this tab, search in Class column for Mass storage controller devices, right click on the row and Copy Device Path
  • Under DeviceProperties add will add this id as dictionary with:
    • built-in = 01000000 [Data]

Config Hard-drives

DRM Compatibility on macOS 11

Source: WhateverGreen documentation

  • Find the id of dGPU by using gfxutil:

    path/to/gfxutil -f GFX0

    For example:

    ./gfxutil -f GFX0
    09:00.0 1002:73bf /PCI0@0/GPP8@3,1/SWUS@0/SWDS@0/GFX0@0 = PciRoot(0x0)/Pci(0x3,0x1)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)

    My dGPU id is PciRoot(0x0)/Pci(0x3,0x1)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)

  • Under DeviceProperties add this id as dictionary with:

    • unfairgva = 01000000 [Data]

    dGPU DRM

In addition, I used those overrides:

  • defaults write com.apple.AppleGVA gvaForceAMDKE -boolean yes forces AMD DRM decoder for streaming services (like Apple TV and iTunes movie streaming)
  • defaults write com.apple.AppleGVA gvaForceAMDAVCDecode -boolean yes forces AMD AVC accelerated decoder
  • defaults write com.apple.AppleGVA gvaForceAMDAVCEncode -boolean yes forces AMD AVC accelerated encoder
  • defaults write com.apple.AppleGVA gvaForceAMDHEVCDecode -boolean yes forces AMD HEVC accelerated decoder
  • defaults write com.apple.AppleGVA disableGVAEncryption -string YES forces AMD HEVC accelerated decoder
  • defaults write com.apple.coremedia hardwareVideoDecoder -string force forces hardware accelerated video decoder (for any resolution)

USB mapping and Resolving Restart/Shutdown issue

The ASRock B550M Steel Legend contains two USB controllers. One of them uses one of the ports for the RGB lighting controller. When you restart or shutdown macOS, it will send a command to this RGB controller, which will cause a bad CMOS error. To avoid this, you need to create a USB mapping without this port.


Dual boot time sync fix

Please follow this guide - Dual boot time sync fix

Issues

  1. Built in Mic on AMD - more information
  2. Any Virtual Machines that relying on Apple Hypervisor framework - more information
    • For example: VMWare, Parallels, Docker and Android Studios
    • VirtualBox is not based on it, so it can be used.

Current System Kernal patches, ACPI, Kexts & Drivers Versions

Kernel patches

ACPI

Kexts

Drivers