Contribute
Register

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

You have a different board, but I have no issue with trim at all. It is on.
I think was a weird thing on older Opencores. Now (OC 0.8.3) I can use SetApfsTrimTimeout = 0
and enabled trim with
Code:
sudo trimforce enable

After NVRAM reset...

Trim support is enabled on all SSD's.
Code:
system_profiler SPSerialATADataType | grep 'TRIM'
          TRIM Support: Yes
          TRIM Support: Yes
          TRIM Support: Yes

The speed in Black Magic Speed test is almost the same.

What's the difference?

I've feel like two seconds less on loading the system.
And SSD's are quietter!!
 
Last edited:
I think was a weird thing on older Opencores. Now (OC 0.8.3) I can use SetApfsTrimTimeout = 0
and enabled trim with
Code:
sudo trimforce enable

After NVRAM reset...

Trim support is enabled on all SSD's.
Code:
system_profiler SPSerialATADataType | grep 'TRIM'
          TRIM Support: Yes
          TRIM Support: Yes
          TRIM Support: Yes

The speed in Black Magic Speed test is almost the same.

What's the difference?

I've feel like two seconds less on loading the system.
And SSD's are quietter!!
"The speed in Black Magic Speed test is almost the same." → same as mine, or same as yours, as in before? If you are seeing a difference between yours and mine, there are not too many things attributable:

Mine is attached to PCIe Gen4 x4. Fastest M.2 slot on my board. You have a different motherboard, does it have similar M.2?
My drive has whatever firmware it has on it, yours may be different
I have 2TB drive, yours may be different.
Of course the kexts you use for NVMe need to be up to date as well, I presume.
 
"The speed in Black Magic Speed test is almost the same." → same as mine, or same as yours, as in before? If you are seeing a difference between yours and mine, there are not too many things attributable:

Mine is attached to PCIe Gen4 x4. Fastest M.2 slot on my board. You have a different motherboard, does it have similar M.2?
My drive has whatever firmware it has on it, yours may be different
I have 2TB drive, yours may be different.
Of course the kexts you use for NVMe need to be up to date as well, I presume.
It is connected to PCIe Gen 4 x4 too. Speed is same as older mines. I have tried and I have the same speeds 3000 W & 5000 R on windows. So I am thinking on the last BIOS update from ASrock. I am using 8.01 Bios Version now.

Other alternative is trying older NVMeFix kext. Nothing changed.
 
Last edited:
It is connected to PCIe Gen 4 x4 too. Speed is same as older mines. I have tried and I have the same speeds 3000 W & 5000 R on windows. So I am thinking on the last BIOS update from ASrock. I am using 8.01 Bios Version now.

Other alternative is trying older NVMeFix kext. Nothing changed.
I am using version 8.01 BIOS myself, of course our boards not same, but same generation. NVMEFix.kext is at 1.1.0, and NVMExpressDXE.efi is what came with OC 0.8.3. Then, do you have a 1 TB drive? There may be a difference.
 
It is 512 Gb version. But a couple of months ago it goes to 6000 write and read speeds. I have to check more. Will update.
 
Which motherboard does sidecar work with ?
 
None of the z690 MBs, you need iGPU last drop is z490, or a genuine Mac
 
Thanks for share
 
macOS Ventura 13.0 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., 13900K, KF, 13700K, KF, 13600K, KF, 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.

View attachment 535903

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.

View attachment 535957

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.8.5, 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:

View attachment 535958
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:

View attachment 547131

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:

View attachment 548158
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.

View attachment 535967

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:
View attachment 548121
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.

View attachment 537386

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:

View attachment 537385

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)

View attachment 547122

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

View attachment 547121

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.

View attachment 547120
(Geekbench CPU scores.)

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

View attachment 547357
(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.

View attachment 557351

A benchmark result by Geekbench 5 is as follows:

View attachment 557352

A benchmark result by Cinebench R23 is as follows.

View attachment 557353

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.

View attachment 557358

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:


View attachment 557756

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
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.9.5, macOS Ventura. Confirmed 13900KF works as well. (10/31/2022)
  • Added CpuTopologyRebuild.kext to improve single Cinebench score. (11/06/2022)
Hi, tell me, how many points does your 6600 xt score in the metal gikbench?
 
Back
Top