Solved Zen 5 (9950X) on ASUS B650: kernel hangs after CoreAnalyticsHub, USB controller drops

LuckyNutria

New member
AMD OS X Member
May 2, 2026
2
2
3
CPU:
Ryzen 9550X
Hi everyone,
I'm moving a working Hackintosh (Ryzen 9 5900X + ASUS TUF X570) to new AM5 hardware. Now the boot always freezes at the same point and I can't get past it. I've tested a lot of things (list below) and I'd appreciate any ideas, especially from anyone running Zen 5 on AM5.
HARDWARE
  • CPU: AMD Ryzen 9 9950X (Zen 5, Family 1Ah, 16C/32T)
  • Motherboard: ASUS ROG STRIX B650-A GAMING WIFI. BIOS 3602 (AGESA 1.2.7.0), and also tested on 3279 (AGESA 1.2.0.3f).
  • GPU: ASUS RX 480 8GB (the only GPU; iGPU disabled)
  • Disk: Samsung 980 PRO NVMe, on the CPU lanes
  • macOS: Sequoia 15.3, already installed (it worked on the 5900X)
  • OpenCore: 1.0.7 and 1.0.8 (DEBUG)

THE PROBLEM
1. OpenCore and boot.efi work normally.
2. The kernel starts (ACM, AppleKeyStore, AppleSSE), then freezes right after:
Registered CoreAnalyticsHub functions with xnu ... CoreAnalyticsHub start completed
3. There's no panic (even with debug=0x100), no reboot, and "PCI configuration begin" never appears.
4. At the exact moment of the freeze, USB stops working. The keyboard (rear port, wired) disconnects. If I replug it, it isn't detected. The port still has power, because a phone charges from it.
5. A short press of the power button turns the PC off instantly, as if macOS never took control of ACPI.
6. macOS Recovery freezes at exactly the same point, so it isn't the installed system.

MY CURRENT CONFIG
  • SMBIOS iMac20,2. AMD_Vanilla patches (core count = 0x10), ProvideCurrentCpuInfo = true.
  • Booter: DevirtualiseMmio = true. MmioWhitelist is built from this board's DEBUG log:
- Whitelisted: 0xE0000000, 0xF7000000, 0xFEE00000, 0xFEE01000
- Devirtualised: only 0x1080000000
- Also: DisableVariableWrite = true, SetupVirtualMap / RebuildAppleMemoryMap / SyncRuntimePermissions = true
- ACPI:
- SSDT-EC-USBX-DESKTOP. The LPC device is SBRG.
- Custom SSDT-CPUR with 32 Processor() objects. This board defines the CPUs as \_SB.PLTF.C0xx (ACPI0007).
- etorix AM5 patches #1 and #2, with a mask so they work on both BIOS versions. Both apply ("replaced 1 of 1").
- Result: ACPI now loads clean ("15 ACPI AML tables successfully acquired and loaded"). Before, 4 tables failed.
- UEFI: ReleaseUsbOwnership = true.

SOMETHING I FOUND IN OPENCORE (ZEN 5)
In OcCpuLib.c (1.0.7 and 1.0.8), the Family 1Ah code does this:
Code:
UINT8 CoreFrequencyID = (UINT8)BitFieldRead64 (CofVid, 0, 11); // 12-bit FID stored in 8 bits
if (CoreFrequencyID > 0x0f) CoreFrequencyID *= 5;
On the 9950X this gives "FID 204, MaxBR 204", which means FSBFrequency = 21 MHz. That value goes to the kernel (busFreq) through ProvideCurrentCpuInfo.
I binary-patched OpenCore to use MaxBusRatio 43, which gives FSB 99.8 MHz (like Zen 3/4). The log confirms the new value, but the freeze is exactly the same.
I'm mentioning it in case it's useful for someone else, or as a possible bug report.

WHAT I'VE ALREADY TRIED (NONE OF IT CHANGES WHERE IT FREEZES)
  • Kexts: -x (safe mode), and only Lilu + VirtualSMC + AppleMCEReporterDisabler
  • CPU: cpus=1, SMT off, SSDT-CPUR, FSB 21 MHz vs 99.8 MHz
  • MMIO: several whitelists. DevirtualiseMmio = false makes it reboot before the kernel.
  • npci=0x2000, npci=0x3000, and no npci
  • DisableVariableWrite, ReleaseUsbOwnership, Legacy USB on/off
  • BIOS:
- SVM on/off
- IOMMU off
- Above 4G on, ReBAR off, CSM off
- iGPU off
- Onboard Wi-Fi/BT/LAN off
  • BIOS 3279 to 3602. I can't go lower: ASUS blocks rollback below 3263.
  • OpenCore 1.0.7 and 1.0.8, both stock and with the FSB patch
  • USB hub and front-panel devices disconnected

QUESTIONS
1. Has anyone booted a Ryzen 9000 (Zen 5) on an ASUS B650 or X670 with a recent BIOS (AGESA 1.2.x)? Which BIOS, ACPI patches and OpenCore did you use?
2. USB dies at the same moment as the freeze. Does that point to the chipset (GPP7 / Promontory) being reset during PCI configuration, or to the firmware hanging on the ACPI-enable SMI (SMI_CMD 0xB2, value 0xA0)?
3. Is there an OpenCore build or patch set known to work on Family 1Ah?

ATTACHMENTS
- forum-pack-v27.zip:
- config.plist (serial numbers removed)
- my SSDTs
- full OpenCore DEBUG log
- original ACPI dump from BIOS 3602 (DSDT, SSDTs, FACP, MCFG, APIC)
- Photos of the frozen screen
Thanks in advance for any help.
 

Attachments

  • forum-pack-v27.zip
    forum-pack-v27.zip
    153.8 KB · Views: 1
  • photo_2026-10-12_03-11-15.jpg
    photo_2026-10-12_03-11-15.jpg
    613 KB · Views: 1
  • photo_2026-10-12_03-11-16.jpg
    photo_2026-10-12_03-11-16.jpg
    558.8 KB · Views: 1
  • Log.jpg
    Log.jpg
    671.5 KB · Views: 1
I have posted a couple of Success Stories one for an Asus B650E and the other for an X670E system both using a Ryzen 7 9700x CPU, see the links below. Check them out to see what is different in the EFI and config.plist when compared to your EFI.



  1. My first instinct would be to check to see if you need to disable or enable specific MmioWhitelist entries in your config.plist.
  2. Second would be to see if your DSDT.aml requires specific AM5 ACPI patches.
  3. Third would be to check and see if the AM5 specific Kernel patch has been enabled in your config.plist.
  4. As you are jumping from one bios to another I would settle on one and generate MmioWhitelist entries and custom SSDT’s for the system using Corpnewt’s SSDTTime and the system ACPI tables. Switching from one bios to another newer or older bios could mean the MmioWhitelist entries aren’t correct for the different bios. Less likely to effect the custom SSDT’s.
  5. I would switch to a MacPro7,1 SMBIOS, as the iMac20,2 SMBIOS you are using isn’t a good match for an AMD system.
 
Looking at your system DSDT and using Hex Fiend to interrogate it, I have found your system contains the following locations that require AM5 ACPI patches.

4 x Patch #1A, 2 x Patch #4, 1 x Patch #5, 1 x Patch #6 & 1 x Patch #7 - so 9 x locations that require patching. Screenshots attached below show these locations and from this we can see whether there are 4 x characters (2-bytes) or 6 x characters preceding the search criteria and the strting 'A0' characters.

Patch 1A
1-patch 1a.png 2-patch 1a.png3-patch 1a.png 4-patch 1a.png

Patch 4
5-patch 4.png 6-patch 4.png

Patch 5
7-patch 5.png

Patch 6
8-patch 6.png

Patch 7
9-patch 7.png


Going by the above the ACPI > Patch section of your config.plist should contain the 5 x patches contained in the attached B650-A GAMING WIFI - patches.plist.
 

Attachments

Looking through your OpenCore Debug Log It shows the following Mmio Divert entries.

MmioWhitelist from Debug.png

Using Hackintool's Calc tab, a Hex to decimal conversion, these 5 x entries are used to generate the MmioWhitelist entries for your system config.plist.

Screenshot 2026-10-12 at 15.25.39.png Hex to Decimal conversion table

I have just realised you have these entries in your config.plist, but leaving this post here might help someone else.
 
Using the ACPI tables from Bios 3602 and Corpnewt's SSDTTime script I have generate the following custom ACPI SSDT's for your system.
  • SSDT-EC.aml
  • SSDT-USBX.aml
  • SSDT-PLUG-ALT.aml
  • SSDT-SBUS-MCHC.aml.
These should be used in place of the current SSDT-CPUR.aml and SSDT-EC-USBX-DESKTOP.aml tables in your ACPI folder and config.plist.

You don't have the AM5 specific AMD Kernel > Patch enabled in your current config.plist.

Screenshot 2026-10-12 at 15.27.58.png AM5 Kenrel Patch - enabled

This may not be a bad thing if you don't have Thunderbolt enabled in your Bios.

I have attached a copy of the ACPI folder and config.plist as revised to incorporate the ACPI AM5 patches, enabled kernel patch and custom SSDT's I generated for your system.

You have USBToolBox.kext present and enabled in your config.plist. This kext on its own does nothing helpful regarding USB port configuration. You need to pair it with a customised UTBMap.kext, which you would generate using USBToolBox Tool in Windows to map the USB ports for each USB controller. You need to remember that AMD systems commonly have more than 1 x USB controller so AMD systems are not limited in the same way as an Intel system. where they can only activate 15 x ports On an AMD system EACH USB controller can activate a maximum of 15 x USB ports, so if your motherboard has say 3 x USB controllers in theory you could have a maximum of 45 x USB ports active in your setup.


Add your iMac20,2 (or a new MacPro7,1) SMBIOS data to the config.plist and see how these revisions work for your B650-A system.
 

Attachments

Using the ACPI tables from Bios 3602 and Corpnewt's SSDTTime script I have generate the following custom ACPI SSDT's for your system.
  • SSDT-EC.aml
  • SSDT-USBX.aml
  • SSDT-PLUG-ALT.aml
  • SSDT-SBUS-MCHC.aml.
These should be used in place of the current SSDT-CPUR.aml and SSDT-EC-USBX-DESKTOP.aml tables in your ACPI folder and config.plist.

You don't have the AM5 specific AMD Kernel > Patch enabled in your current config.plist.

View attachment 19718 AM5 Kenrel Patch - enabled

This may not be a bad thing if you don't have Thunderbolt enabled in your Bios.

I have attached a copy of the ACPI folder and config.plist as revised to incorporate the ACPI AM5 patches, enabled kernel patch and custom SSDT's I generated for your system.

You have USBToolBox.kext present and enabled in your config.plist. This kext on its own does nothing helpful regarding USB port configuration. You need to pair it with a customised UTBMap.kext, which you would generate using USBToolBox Tool in Windows to map the USB ports for each USB controller. You need to remember that AMD systems commonly have more than 1 x USB controller so AMD systems are not limited in the same way as an Intel system. where they can only activate 15 x ports On an AMD system EACH USB controller can activate a maximum of 15 x USB ports, so if your motherboard has say 3 x USB controllers in theory you could have a maximum of 45 x USB ports active in your setup.


Add your iMac20,2 (or a new MacPro7,1) SMBIOS data to the config.plist and see how these revisions work for your B650-A system.
Hi Edhawk,

Thank you so much for all the help and the information you shared. I can now boot into macOS Sequoia on the Ryzen 9 9950X / ASUS ROG STRIX B650-A. šŸŽ‰

Your two success stories made the difference. After comparing your B650E-F EFI with mine, the key fix was the MmioWhitelist: I had the wrong entries enabled. Matching your approach, with only 0xF7000000 enabled on my board and the rest devirtualised, plus:

  • etorix AM5 patches #1 and #2
  • SSDT-EC, SSDT-USBX, SSDT-PLUG-ALT and SSDT-SBUS-MCHC
  • the AM5 kernel patch (IOPCIIsHotplugPort) enabled
  • ForgedInvariant
  • MacPro7,1 SMBIOS
got it past CoreAnalyticsHub and all the way to the desktop.

I also mapped the USB ports with USBToolBox in Windows, and that fixed the onboard audio. The ALC4080 is USB-based, so once its internal port was mapped it showed up as an output device straight away.

Thanks as well for the extra ACPI patches and the revised config. I’m keeping them as a reference in case I ever use the chipset M.2 slots.

I really appreciate the time you put into checking my DSDT and logs. Thanks again!
 
  • Like
Reactions: etorix and Edhawk
✖
  AdBlock Detected
Sure, ad-blocking software does a great job at blocking ads, but it also blocks some useful and important features of our website. For the best possible site experience please take a moment to disable your AdBlocker.