Contribute
Register

MSI Z590 ACE + i9-10900k Thunderbolt 4 Maple Ridge set up issues

Joined
Jul 16, 2014
Messages
432
Motherboard
MSI Z590 MEG ACE
CPU
i9-10900k
Graphics
RX 6900 XT
Mac
  1. Mac mini
Classic Mac
  1. PowerBook
Mobile Phone
  1. iOS
Hey everyone! I'm currently working through setting up my Hackintosh for the final time, and getting it fully operational. The last thing I'm trying to work through is some bugs with the TB4 Maple Ridge controller, which I'm getting closer, but having some oddities when working with it.

As a bit of preamble, I'm using it with a new Caldigit TS4 dock, which can operate as both as a USB4 hub or a TB4 hub. On the hub, the USB ports are tied to the USB Hub, and the ethernet is tied to the PCIE lanes, so this is how I can tell if it's working or not.

The issue is; on some boots, the PCIE side works, but then I only get USB 2.0 speeds on anything. It's as if the USB 3.0 hub inside is not recognized at all in macOS. On some other boots, the USB 3.0 is recognized and works at full speed, but then the PCIE side is not picked up - i.e. ethernet does not work.

My motherboard is the MSI Z590 ACE, with latest BIOS. I've updated to OpenCore 0.8.1, and it's configured as correctly as I can. I also added SSDT-MAPLE-RIDGE-RP05-V2.aml, but didn't see any improvement. (I think from what I can tell in the IORegistryExplorer that my Thunderbolt ports are on RP01? See the screenshot). I've been pouring through many posts from @CaseySJ, but so far all options haven't worked. I used to use SSDT-TB3HP.aml on an older motherboard which worked with TB3 devices for hotplug, but I've disabled it for now until I can at least get basic functionality from my hub. I should also note - the hub works fully in Windows.

I did notice that when I was mapping my USB ports, that both the Thunderbolt controller and Tiger Lake USB controller both are listed as XHCI. Is this causing interference with each other? The TB4 USB controller shows as 0x00, and the internal one shows as 0x14. When TB4/PCIE functionality is working, the two 0x00 ports don't show up in Hackintool, but when the USB functionality is working, they do show up. Do I need to rename one of the controllers?

So basically upon boot, there are two possibilities - my TB4 port will work either as:
USB 2.0 and PCIE
OR
USB 2.0 and USB 3.0

I've tried tinkering with the settings in BIOS - disabling "Enabled+RTD3" and Security, as well as enabling GPIO power and filtering, but no luck.

I've attached my EFI folder. My build is a MacPro7,1 i9-10900k, 128GB RAM, MSI Z590 ACE, 6900 XT.

Any help would be greatly appreciated - I would love to get this dock working fully! I don't even particularly need hotplug, although that would be nice. I just want fully USB 3.0 and PCIE working!

I've also attached my IOREG file as well.

- SCREENSHOTS:

in this one, you can see that all ports are 0x14 ports, and that the only hub that shows up is the TS4 USB2.0 Hub (which is on the Intel host controller), as well as you can see it in the tree that all devices (including 3.0 devices) are all tied to the 2.0 hub. The third screen shot shows RP01, which is where the TS4 would normally show up.

USB 2.0 + TB4.pngScreen Shot 2022-07-02 at 10.33.20.pngScreen Shot 2022-07-02 at 10.35.00.png


If I boot the computer with the TS4 disconnected, and then plug it in, you can see it populate as a strictly USB4 hub. The ports all enumerate properly in System Profiler, and RP01 in IORegistryExplorer. In Hackintool, you can see that now the Maple Ridge 0x00 ports are enumerated as well. Even though it's not working, you can still see the ethernet port show up under RP01, listed as en2 as well.

Screen Shot 2022-07-02 at 10.46.39.pngScreen Shot 2022-07-02 at 10.47.11.pngScreen Shot 2022-07-02 at 10.47.25.png
 

Attachments

  • EFI 0.8.1 MacPro7,1 MSI Z590 ACE.zip
    8.2 MB · Views: 210
  • Mac Pro.ioreg
    24.5 MB · Views: 71
Last edited:
@stiligFox

Thank you for the detailed write up. Some quick replies (waiting for a connecting flight at the moment):
  • Having two XHCI controllers could cause problems, although I have not positively verified this. It might cause no issues, but to be safe we can rename the internal controller to something else (we cannot rename the external controller).
  • The more pressing issue, however, is that the Thunderbolt SSDT has not taken effect. Have you included SSDT-DTPG.aml?
  • Let’s first get the Thunderbolt SSDT working, then reevaluate the situation to see if the USB 2/USB 3 problem remains.
 
Last edited:
@stiligFox

Thank you for the detailed write up. Some quick replies (waiting for a connecting flight at the moment):
  • Having two XHCI controllers could cause problems, although I have not positively verified this. It might cause no issues, but to be safe we can rename the internal controller to something else (we cannot rename the external controller).
  • The more pressing issue, however, is that the Thunderbolt SSDT has not taken effect. Have you included SSDT-DTPG.aml?
  • Let’s first get the Thunderbolt SSDT working, then reevaluate the situation to see if the USB 2/USB 3 problem remains.
Thank you so much for the reply!

I can look into renaming the Z590 controller if I need to, I used to know how for Z97 but I'll have to look into it again!

I do have SSDT-DTPG.aml in my files and in my config - although I do not know where I got it from at this point, and I'm certain if it's custom for each build or not. It did work for hotplug with my TS3+ on my previous MSI Z590i Unify board (which was also Maple Ridge).

That said, I did also just dig out and check the TS3+, which is Thunderbolt 3 only, and I can confirm that it works fully - all USB 3 and USB 2 ports work as well as the PCIE Ethernet. (Although there's some funkiness with that, macOS think's its an Intel i255-v 2.5Gb but it's not, it's only a 1Gb port). Hotplug of that dock is *not* working either.

So I feel like it's some funkiness potentially with USB4/TB4 specifically, as well as my configuration perhaps of the port?

THAT SAID: Have safe travels! I super appreciate the help but there's no hurry!


EDIT: For what it's worth, here are my BIOS settings related to Thunderbolt:

Discrete Thunderbolt(TM) Support - Enabled
Wake From Thunderbolt(TM) Devices - Enabled
Native OS security for TBT - Disabled

Discrete Thunderbolt(TM) Configuration:
Thunderbolt Usb Support - Disabled
Thunderbolt Boot Support - Disabled
GPIO3 Force Pwr - Enabled
GPIO filter - Enabled

DTBT Controller 0 Configuration:
DTBT Controller 0 - Enabled
TBT Host Router - Two port
Extra Bus Reserved - 106
Reserved Memory - 737
Memory Alignment - 26
Reserved PMemory - 1184
Memory Alignment - 28
Reserved I/0 - 0

Windows 10 Thunderbolt support - Enable + RTD3
 
Last edited:
...

I do have SSDT-DTPG.aml in my files and in my config - although I do not know where I got it from at this point, and I'm certain if it's custom for each build or not. It did work for hotplug with my TS3+ on my previous MSI Z590i Unify board (which was also Maple Ridge).

...
To investigate why the Thunderbolt SSDT is not working, let's do this:

Type the following in Terminal, which will generate a file in Documents folder called bootlog.txt. Post that file.

Bash:
log show --last boot | head -750 > ~/Documents/bootlog.txt
 
Okay, so I generated the bootlog twice - once when the TS4 is working with PCIE at boot, and then restarted the machine, and generated it again now that PCIE is no longer working (it seems that *restarting* the computer causes the port to stop working, whereas a full shut down and cold boot means it will work. But USB 3 still doesn't work if PCIE is and vice versa)

To investigate why the Thunderbolt SSDT is not working, let's do this:

Type the following in Terminal, which will generate a file in Documents folder called bootlog.txt. Post that file.

Bash:
log show --last boot | head -750 > ~/Documents/bootlog.txt
 

Attachments

  • bootlog PCIE not working.txt
    111.8 KB · Views: 57
  • bootlog PCIE working.txt
    111.8 KB · Views: 56
Okay, so I generated the bootlog twice - once when the TS4 is working with PCIE at boot, and then restarted the machine, and generated it again now that PCIE is no longer working (it seems that *restarting* the computer causes the port to stop working, whereas a full shut down and cold boot means it will work. But USB 3 still doesn't work if PCIE is and vice versa)
It seems the Thunderbolt SSDT is loading properly along with SSDT-DTPG. Let's do the following:
  • Post a copy of your Thunderbolt SSDT taken directly from the EFI/OC/ACPI folder
  • Post a screenshot of IORegistryExplorer --> RP21 section (it's also okay to post the entire IOReg file)
 
It seems the Thunderbolt SSDT is loading properly along with SSDT-DTPG. Let's do the following:
  • Post a copy of your Thunderbolt SSDT taken directly from the EFI/OC/ACPI folder
  • Post a screenshot of IORegistryExplorer --> RP21 section (it's also okay to post the entire IOReg file)
Hey there! Sorry for the late reply - I've been doing cable management on my build and it's been down all day! Here's the requested files. For Thunderbolt SSDTs, I have two currently in use, SSDT-DTPG and SSDT-MAPLE-RIDGE-RP05-V2. I do have SSDT-TB3HP, but it didn't seem to help so I removed it. I'm not even sure where I got all these anymore, and I know SSDTs can be more hardware specific, so I would imagine that could well be why it's not working.

As for the IOReg files, I uploaded both with PCIE working on the TS4 and without it working.
 

Attachments

  • SSDT-DTPG.aml
    100 bytes · Views: 78
  • SSDT-MAPLE-RIDGE-RP05-V2.aml
    2.2 KB · Views: 85
  • SSDT-TB3HP.aml
    1.6 KB · Views: 65
  • Mac Pro - PCIE working.ioreg
    26.2 MB · Views: 66
  • Mac Pro - PCIE not working.ioreg
    25.9 MB · Views: 52
Hey there! Sorry for the late reply - I've been doing cable management on my build and it's been down all day! Here's the requested files. For Thunderbolt SSDTs, I have two currently in use, SSDT-DTPG and SSDT-MAPLE-RIDGE-RP05-V2. I do have SSDT-TB3HP, but it didn't seem to help so I removed it. I'm not even sure where I got all these anymore, and I know SSDTs can be more hardware specific, so I would imagine that could well be why it's not working.

As for the IOReg files, I uploaded both with PCIE working on the TS4 and without it working.
Please try the attached Thunderbolt SSDT as follows:
  • In config.plist --> ACPI uncheck (disable) SSDT-MAPLE-RIDGE-RP05-V2.aml
  • Then add SSDT-MAPLE-RIDGE-RP01-V2.aml to config.plist --> ACPI
    • Note that your Thunderbolt controller is on RP01 instead of RP05
  • Also copy SSDT-MAPLE-RIDGE-RP01-V2.aml to the EFI/OC/ACPI folder
  • Reboot
  • Now check if Thunderbolt hot plug works; also feel free to post a screenshot of IOReg --> RP01 section.
 

Attachments

  • SSDT-MAPLE-RIDGE-RP01-V2.aml
    2.2 KB · Views: 119
Please try the attached Thunderbolt SSDT as follows:
  • In config.plist --> ACPI uncheck (disable) SSDT-MAPLE-RIDGE-RP05-V2.aml
  • Then add SSDT-MAPLE-RIDGE-RP01-V2.aml to config.plist --> ACPI
    • Note that your Thunderbolt controller is on RP01 instead of RP05
  • Also copy SSDT-MAPLE-RIDGE-RP01-V2.aml to the EFI/OC/ACPI folder
  • Reboot
  • Now check if Thunderbolt hot plug works; also feel free to post a screenshot of IOReg --> RP01 section.


Quick update, while I try to pull out my TS3 to check hot plug for that: It seems to be working better! With SSDT-MAPLE-RIDGE-RP01-V2.aml added in, now both PCIE and USB 3.0 works at the same time! I have ethernet working and the DisplayPort now works fully at 175hz on the dock.

However, unplugging the TS4 and plugging it back has funkiness still. The USB ports work, and the DisplayPort works again, but the ethernet does not. It comes down to - when I unplug the dock, it doesn't recognize that it's been removed, and macOS still thinks the ethernet is connected with an IP address, and will fail to connect to the internet. Plugging the dock back in doesn't fix it, which makes sense since it never thought it was unplugged to begin with. macOS does recognize that the port is not a builtin ethernet, which is a good sign at least.
Here's the requested screenshot (the list for RP01@1C goes for a long ways, but here's at least the top level):
Screen Shot 2022-07-04 at 09.51.46.png
 
Okay so I got out the TS3+ dock, which is PCIE only - I think part of the confusion that happens with the TS4 is that it is a TB4 AND USB4 dock, so if it fails to connect over TB4, then it will just revert to being USB only. The TS3+ is only a PCIE TB3 dock, so it's easier to tell if hot plugging is working.

That said: Hotplugging is still not working - I plugged it in and it failed to connect.

Should I reenable the SSDT-TB3HP.aml in my config.plist?

My biggest thing is; I don't want to blindly enable and disable stuff and just say hey! it works! and call it a day; I like to know why something is working and what it's doing instead of just firing files at it! That's why I really appreciate your help with this - I'm starting to figure out a bit more of what's going on! Fixing TB4 has always been the one thing I wanted to do, and I'm stoked to be getting this much closer!
 
Last edited:
Back
Top