Contribute
Register

ASRock Z690 Steel Legend + 13900KF / 12900K + 6600XT

Joined
Nov 24, 2021
Messages
49
Motherboard
ASRock Z690 Steel Legend
CPU
i9-12900K
Graphics
RX 6600 XT
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
Z690 Steel Legend WiFi 6E(L2).png
macOS Ventura 13.0~13.4 and Monterey 12.01~12.6 worked successfully on ASRock Z690 Steel Legend WiFi 6E with Intel 13900KF, 12700K and 12900K. Raptor Lake-S processors work with exactly the same BIOS and OpenCore configurations for Alder Lake-S processors. All the 13 and 12 generation CPUs, i.e., 13900, K, F, KF, KS, 13700, K, F, KF, 13600K, KF, 13500, 13400, F, 13100, F, 12900, KS, K, KF, F, T, 12700, K, KF, F, T 12600, K, KF, T, 12500, T, 12400, F, T, 12300, T, 12100, F, and T will most likely work with the same configuration.

The motherboard has 5 PCIe slots. ASRock Z690 Steel Legend (without WiFi) should also work as the difference is just the M.2 WiFi card and antennas.

Wireless Module

I have replaced the Intel AX210NGW WiFi/BT module with macOS-compatible Broadcom BCM94360NG. The E key M.2 socket on the motherboard supports non CNVi modules. BCM94360NG works OOB with the M.2 socket.

image.jpeg


CPU Emulation

As Alder Lake CPUs are not supported by macOS, the CPU ID has to be faked. In the config.plist, CPU ID is set to 0x0A0655 that is found in Comet Lake CPUs such as 10900, 10850, 10700, and 10400.

image.jpeg


Components
  • Motherboard: ASRock Z690 Steel Legend WiFi 6E
  • CPU: Intel 13900KF (12900K and 12700K are also tested to work)
  • M.2 wireless module: Broadcom BCM94360NG
  • GPU: Radeon RX 6600 XT
Components below are not mandatory to work with the EFI files attached to this post.
  • Memory: Corsair DDR4 3200MHz 16GB x 4
  • M.2 SSD: WD_BLACK 1TB SN770 NVMe SSD
  • CPU cooler: Noctua NH-U12S chromax.black
  • Power supply: SilverStone SST-ST85F-GS-V2 (850W)
BIOS

The current UEFI version is 9.0.3. The UEFI with this version or newer is required to boot Raptor Lake-S CPUs. It works with all the default BIOS settings, i.e. it works OOB. I have optionally changed following settings from their default value.
  • OC Tweaker > DRAM Configuration > Load XMP Setting > XMP 2.0 Profile 1
  • Advanced > USB Configuration > XHCI Hand-off > Enabled
  • Boot > Bootup Num-Lock > off
Following settings should be set to default values, otherwise Monterey boot sequence stops.
  • Advanced > CPU Configuration > CFG Lock > Disabled (default)
  • Advanced > Chipset Configuration > Above 4G Decoding > Enabled (default)

EFI System Partition (ESP) Files

The attached EFI (ESP files) is configured with OpenCore 0.9.1, and will successfully boot macOS 13 and 12. The EFI is based on the EFI provided by @etorix.

SSDTs used in the EFI are:
  • SSDT-AWAC.aml
  • SSDT-EC-USBX.aml
  • SSDT-SBUS.aml
  • SSDT-PLUG-ALT.aml
Kexts used in the EFI are:
  • Lilu.kext
  • VirtualSMC.kext
  • WhateverGreen.kext
  • SMCProcessor.kext
  • SMCSuperIO.kext
  • AppleALC.kext (layout-id is 12)
  • LucyRTL8125Ethernet.kext
  • NVMeFix.kext
  • USBPorts.kext
USBPorts.kext is a custom kext created by Hackintool.app to activate 15 USB ports chosen in the next section.

Recommended SystemProcudtName for Raptor/Alder Lake-S is iMacPro1,1 or MacPro7,1. In the attached EFI, iMacPro1,1 is used because performance tuning is simpler. In case of using MacPro7,1, CPUFriend and related kexts are additionally required for optimal performance. However, there is no specific difference between the two products, you can use one you prefer.

Graphics Processing Unit (GPU)

A discrete GPU is required because the iGPU (UHD 770) is not supported in macOS. Compatible GPUs to the recent versions of macOS are:
  • AMD Vega 56, Vega 64, Radeon VII (OOB)
  • AMD RX 400 series, RX 500 series (OOB)
  • AMD RX 5000 series (with "agdpmod=pikera")
  • AMD RX 6600 XT, RX 6800, RX 6800 XT, RX 6900 XT (with "agdpmod=pikera")
In this build, 6600 XT is used and the boot argument "agdpmod=pikera" is added at the plist:NVRAM:7C436110-AB2A-4BBB-A880-FE41995C9F82:boot-args parameter in attached config.plist. The -wegnoigpu option is also added to the boot-args to ensure the iGPU deactivate.

USB

This motherboard has 6 physical USB ports on the back panel. They are assigned as follows:

usbports.jpg

Besides the back panel ports, I found that:
  • HS14 is assigned to the Bluetooth pins at the M.2 E key socket (M2_WIFI),
  • HS01 and SS01 are assigned to the Type-C connector on the motherboard (F_USB32_TC_1),
  • HS08 and SS08 are assigned to a USB hub chip ASM107x that is used by two internal USB 3 connectors (i.e. USB3_5_6 and USB3_7_8),
  • HS09, 10, 11, 12 are assigned to two internal USB 2 connectors (USB_1_2 and USB_3_4), and
  • HS13 is used by ASRock LED Controller for motherboard illumination.
Internal USB connectors on the board are assigned as follows:

onboardUSB.jpg


The list of available 22 USB ports is as follows:
  • HS01: On-board (internal) USB Type-C (F_USB32_TC_1)
  • HS02: Back-panel Type-A below the Ethernet (USB3_3_4)
  • HS03: Back-panel Type-A below & below the Ethernet (USB3_3_4)
  • HS04: Back-panel Type-A below & below the PS/2 (USB3_1_2)
  • HS05: Back-panel Type-A below the PS/2 (USB3_1_2)
  • HS06: Back-panel Type-C (USB31_TC_1)
  • HS07: Back-panel Type-A over the Type-C (USB31_TA_1)
  • HS08: On-board (internal) USB hub (ASM107x) (for USB3_5_6, USB3_7_8)
  • HS09: On-board (internal) USB2.0 (outer side of USB_3_4)
  • HS10: On-board (internal) USB2.0 (inner side of USB_3_4)
  • HS11: On board (internal) USB2.0 (outer side of USB_1_2)
  • HS12: On board (internal) USB2.0 (inner side of USB_1_2)
  • HS13: On board (internal) ASRock LED Controller
  • HS14: On board (internal) M.2 E key (BCM94360NG uses for BT)
  • SS01: On board (internal) USB Type-C (F_USB32_TC_1)
  • SS02: Back-panel Type-A below & below the Ethernet (USB3_3_4)
  • SS03: Back-panel Type-A just below the Ethernet (USB3_3_4)
  • SS04: Back-panel Type-A below & below the PS/2 (USB3_1_2)
  • SS05: Back-panel Type-A just below the PS/2 (USB3_1_2)
  • SS06: Back-panel Type-C (USB31_TC_1)
  • SS07: Back-panel Type-A over the Type-C (USB31_TA_1)
  • SS08: On board (internal) USB hub (ASM107x) (for USB3_5_6, USB3_7_8)
Due to the macOS limitation, we can use up to 15 ports from above. This means that we have to deactivate 7 USB ports. Apparently, HS13 can be omitted because it just control the cosmetic LED on the motherboard and there is no way to control the LED from macOS.

Ports SS05, SS04, HS05, and HS04 could be also deactivated. These USB ports (USB3_1_2) are less useful than others, because they do not support ACPI wake-up function, while other USB ports do. They do not supply voltage (i.e. DC 5 volt) when the computer is turned off. This means that a keyboard or pointing-device connected to USB3_1_2 cannot be used to awake the computer from sleep. The motherboard manual says:

usb312memo.jpg

You can also deactivate some of the internal USB ports on the mother board, depending your use case. I have made a USBPorts.kext using Hackintool, which deactivate USB3_1_2, LED controller, and two of the internal USB 2.0 connectors. It is included in the EFI files attached to this comment.

hackintool.png


You can customize your USB usage map by editing the Contents/Info.plist file inside the USBPorts.kext. For example, in case you want to use a compatible FV-T919 WiFi BT card:
fanviT919.png

instead of M.2 BCM94360NG card, you will want to disable HS14 and to enable one of the on-board USB 2.0 such as HS9, HS10, HS11 or HS12. In that case, you can rewrite the HS14 dictionary part:

XML:
    <key>HS14</key>
    <dict>
        <key>Comment</key>
        <string>M.2 E key for Bluetooth</string>
        <key>UsbConnector</key>
        <integer>255</integer>
        <key>name</key>
        <string>HS14</string>
        <key>port</key>
        <data>
        DgAAAA==
        </data>
    </dict>

to HS10 (for example).

XML:
    <key>HS10</key>
    <dict>
        <key>Comment</key>
        <string>PCIe card for Bluetooth</string>
        <key>UsbConnector</key>
        <integer>255</integer>
        <key>name</key>
        <string>HS10</string>
        <key>port</key>
        <data>
        CgAAAA==
        </data>
    </dict>

Sleep and Wake

In the Energy Saver setting, "Wake for network access" should be disabled in my environment, otherwise the computer wakes up very frequently. "Enable Power Nap" may be enabled, in that case, it wakes about once an hour to execute background jobs.

Screen Shot 2021-12-18 at 0.32.02.png


Then, my machine sleeps and wakes normally in macOS Monterey 12.2.1 and newer. It sleeps fine and wakes from a USB or Bluetooth connected keyboard. If your machine has no sleep issues, just ignore the following part of this section.

Before Monterey 12.2.1, my machine had instant wake issue. When a USB keyboard or USB flash devices were connected to some of USB Type-A connectors at the back-panel, the computer waked up about 1 minute after starting sleep. When no devices were connected to Type-A, it successfully slept, stoped the CPU fan, and waked up when Bluetooth input device was operated.

The instant wake issue caused by USB devices may or may not happen depending on USB configuration of each machine (see #73). In case your machine has this kind of instant sleep issue caused by USB devices, one of the following two methods will help.

(1) Method 1: to disable all USB devices while sleep

See the post #14. Use SSDT-GPRW.aml and GPRW patch to ACPI. As a result, it wakes only by pressing the power switch, not from a USB devices including Apple Magic Keyboards.

(2) Method 2: to assign Type-A connectors as "internal"

See the post #15. Map all the USB Type-A connectors with "internal" (UsbConnector = 255) instead of with USB 2 (0) or USB 3 (3). As for USB Type-C connectors, sleep behavior is normal with actual mapping of TypeC+Sw (9). By re-writing the Info.plist file in USBPorts.kext this way, the kext maps USB connectors will be as follows:

Screen Shot 2021-12-16 at 20.12.01.png


Drawback of this method is that the computer will not wake by operating a keyboard plugged to one of the USB Type-A connector. It can be waken only by either of input devices connected to Bluetooth or USB Type-C, or by the power switch. If you mainly use Apple's BT input devices, this drawback will not matter.

Benchmarks (12900K)

Using 12900K, 24 cores (8 P-cores, 8 hyper-threads, and 8 E-cores) are activated. (screen shot with Activity Monitor.app)

24cores.png


A benchmark result by Geekbench 5 w/o over-clocking (stock freq.) is as follows:

geekbench12900K.png


The result is 13 to 23 % better than M1 Max score found in the Geekbench browser site. Alder Lake scores in the following graph are averaged over 5 benchmark trials.

compCPU.jpg

(Geekbench CPU scores.)

Following is the GPU Geekbench 5 comparison to M1 Max iGPU.

vsM1MaxGPU.jpg

(Geekbench GPU scores.)

Benchmarks (13900KF)

As Raptor Lake-S processors are highly compatible to the previous generation, they work with exactly the same configurations (BIOS and OpenCore) for Alder Lake-S processors. Just by replacing the cpu chip, it works. By using 13900KF with above mentioned configuration, 32 cores (8 P-cores, 8 hyper-threads, and 16 E-cores) are activated.

cores13900KF.png


A benchmark result by Geekbench 5 is as follows:

geekbench13900KF.png


A benchmark result by Cinebench R23 is as follows.

cinebench.jpg


The benchmark score of the build is 50 % better than Mac Studio M1 Ultra score found in https://www.check-mac.com/en/benchmark-cinebench_r23-10. Raptor Lake scores in the following graph are averaged over 3 benchmark trials.

1667143904603.png


Improve the Single Score by CpuTopologyRebuild kext (13900KF)

MacOS recognizes the 13900K and KF as a 32 physical core processor (32C32T) with OpenCore default setting. This can be re-configured to 24C32T or 8C32T by using CpuTopologyRebuild.kext. Using the kext and setting 8C32T, single core score by Cinebench R23 can be improved by 6%. Results as follows:


1667724761272.png


13900KF scores are averaged over 3 benchmark trials. To enable 8C32T configuration, place the kext in the EFI, enable it in the config.plist, and add "-ctrsmt" to the boot arg.

What Works
  • Stable operation as a main computer over 6 months
  • Shutdown, restart
  • Ethernet port (onboard 2.5GbE, Realtek RTL8125BG)
  • M.2 WiFi, Bluetooth (using Broadcom BCM94360NG)
  • Audio (ALC897, layout-id=12)
  • Quick Look, Preview
  • Messages, FaceTime
  • iCloud, App Store, Apple TV
  • Universal clipboard, Continuity, AirDrop
  • Amazon Prime Video in Safari
  • AirPlay Receiver (plays DRM contents)
  • Sleep (CPU and case fans stop.)
  • Wake from sleep by Bluetooth KBDs, USB-connected KBDs, or power switch. (Except for KBDs connected to USB3_1_2 that does not support ACPI wake-up function.)
  • Universal Control (macOS 12.3 and later)
What doesn't work
  • Sidecar (due to the lack of supported iGPU. See the FAQs. )
  • Continuous mounting of a USB-connected SATA SSD throughout sleep ("Do Not Ejected properly" message appears on wake from a sleep. Meanwhile, USB thumb drives work fine without the message.)
Acknowledgements

@etorix and @CaseySJ who shared excellent Z690 guide.



Updates:
  • Audio worked with AppleALC.kext 1.6.7
  • Confirmed sleep without USB devices
  • Confirmed DRM video playback
  • Confirmed Apple ID related functions
  • Updated for OC0.7.6 based on https://www.tonymacx86.com/threads/z690-chipset-and-alder-lake-cpus.316618/page-153#post-2294767
  • Unwanted wake from sleep by USB devices is disabled
  • USB Type-A connectors are mapped with "internal" to avoid instant wake
  • Updated for OC0.7.8. All cores and hyper-threads work.
  • Removed the USB mapping tip. From 12.2.1, no instant-wake happens.
  • Updated for OC0.8.0. (05/04/2022)
  • Updated the USB assignment information. (05/04/2022)
  • Updated to macOS 12.4. (05/18/2022)
  • Updated the USB tips. (05/22/2022)
  • Updated about wake from sleep by USB connected keyboards. (05/23/2022)
  • Updated for OC0.8.1. (06/15/2022)
  • Updated for OC0.8.2 and UEFU BIOS 8.01. THX @HeyItsMeYaBoyyyy and @bikinifarm (07/06/2022)
  • Updated for startup chime. Enable UEFI: Drivers:Item 4:AudioDxe.efi and UEFI:Audio:AudioSupport in the config.plist to activate the startup chime. THX @bikinifarm (07/09/2022)
  • Updated for OC0.8.3. (08/07/2022)
  • Updated the instant wake issue. THX @bikinifarm (08/15/2022)
  • Updated to OC0.8.5, macOS Ventura. Confirmed 13900KF works as well. (10/31/2022)
  • Added CpuTopologyRebuild.kext to improve single Cinebench score. (11/06/2022)
  • Updated to OC0.8.7. (12/27/2022)
  • Updated to OC0.9.1 and macOS 13.3.1. (4/11/2023)
  • Updated to OC0.9.2 and macOS 13.4. (6/1/2023)
 

Attachments

  • EFI_ASRockZ690SL.zip
    10.9 MB · Views: 268
Last edited:
@bootmacos
Hi! Thank you for this post!

I have hackintosh based on Intel i5 3570K, Asus P8Z77-V LK, samsung 970 Evo Plus Nvme.
Worked best for years, but now i have purchased Asus TUF Gaming Z690-Plus D4, LGA1700 with i5 12600K.

Please help me.
I put my old nvme disk with macos Catalina in new pc, replaced old efi clover with yours. After boot, i see bootloader and can choose my disks, but then boot stuck with this:
 

Attachments

  • 20211201_023940.jpg
    20211201_023940.jpg
    3.8 MB · Views: 220
@bootmacos
Hi! Thank you for this post!

I have hackintosh based on Intel i5 3570K, Asus P8Z77-V LK, samsung 970 Evo Plus Nvme.
Worked best for years, but now i have purchased Asus TUF Gaming Z690-Plus D4, LGA1700 with i5 12600K.

Please help me.
I put my old nvme disk with macos Catalina in new pc, replaced old efi clover with yours. After boot, i see bootloader and can choose my disks, but then boot stuck with this:
Which sub-version of Catalina are you using? As the CPU is emulating Comet Lake, I guess that macOS should be newer than 10.15.6.
 
Thanks a lot for nice writeup. Besides sleep & audio, is the system stable? I'm still trying to decide which board to go.
 
Thanks a lot for nice writeup. Besides sleep & audio, is the system stable? I'm still trying to decide which board to go.
Yes, it is very stable over 24 hours operation. I like the 5 PICe slots + M.2 WiFi configuration.
 
Last edited:
@bootmacos, great to hear your system is stable. I'll check if I can find this board in my area. Thanks!
 
Did you check the Asrock z690 extreme ?

I am doubting with this...
 
Which sub-version of Catalina are you using? As the CPU is emulating Comet Lake, I guess that macOS should be newer than 10.15.6.
I have updated to 10.15.7 on my old Hackintosh, then I have tried again with a new pc.
Absolutely the same behavior. I have tried with my old clover and your EFI, the same.
I have disabled E-cores in bios, with no success.

There is a section on dortania guide, only for this:
Stuck on: [EB|#LOG:EXITBS:START]

Is Set SATA Mode: AHCI in BIOS ?
I use a NVMe PCIe disk.
 
@bootmacos
Hi! Thank you for this post!

I have hackintosh based on Intel i5 3570K, Asus P8Z77-V LK, samsung 970 Evo Plus Nvme.
Worked best for years, but now i have purchased Asus TUF Gaming Z690-Plus D4, LGA1700 with i5 12600K.

Please help me.
I put my old nvme disk with macos Catalina in new pc, replaced old efi clover with yours. After boot, i see bootloader and can choose my disks, but then boot stuck with this:
By Google-ing the last text "[EB|#LOG:EXITBS:START]" in your picture, I found several trials to fix the problem. I hope some of them work for you.
 
Back
Top