• Become a Premium Member for $25/year with no ads to improve your community experience.

Ive reseting BIOS. It look the same as before.
You cannot expect it to work. You're not using the SSDT as described in this guide.
 
The same result is also with the SSDT from hackindrom.
 
This is with HackinDrom ssd
 

Attachments

  • Florian' PR.zip
    3 MB · Views: 68
Sorry man. My fault. I attached wrong EFI. The one I had it before.
 

Attachments

  • Florian' PR.zip
    3 MB · Views: 59
Sorry man. My fault. I attached wrong EFI. The one I had it before.
This time, the SSDT is correct but the IOReg is old. Note that, both must be from current boot.
 
Hey everyone!

I don’t usually like to ask for help until I exhausted all my brain power and search abilities and well after weeks of messing around with TB3 I’m finally at that point. My problem report is listed below.

To sum it up, I can’t get the TB3 hot plug to work and I can’t figure out if there is a problem with my SSDT or if the problem steams from something else. Most documentation I find is for intel but my mobo is an Aorus Master X570. I’m using gigabytes Titan Ridge 2.0 and trying to connect my Apollo Audio interface. I found that the interface only works if I boot into windows first and then into macOS but once I turn it off or restart Mac it no longer gets recognized until I boot back into windows.

The card is in slot 4 and the IO reg path is: PCI0/BXBR/BYUP/BYD2/BYS2

Questions to start with:
When I boot with the SSDT-TB3-SLOT-4.aml, the IOREG path changes to: "PCI0/BXBR/BYUP/BYD2/UPSB/DSB0/NHI0” Is that suppose to happen?

In my SSDT-TB3-SLOT-4.aml file correct? I wasn’t sure if the definitions should be put as:

External (_SB_.PCI0.BXBR, DeviceObj) External (_SB_.PCI0.BXBR.BYUP, DeviceObj) External (_SB_.PCI0.BXBR.BYUP.BYD2, DeviceObj) External (_SB_.PCI0.BXBR.BYUP.BYD2.BYS2, DeviceObj) External (DTGP, MethodObj) // 5 Arguments

Or as:
External (_SB_.PCI0.BXBR.BYUP.BYD2, DeviceObj) External (_SB_.PCI0.BXBR.BYUP.BYD2.BYS2, DeviceObj) External (DTGP, MethodObj) // 5 Arguments


Details:
1. Thunderbolt Chip and Family: Titan Ridge 2.0 (JHL7540)
2. Thunderbolt Vendor/Manufacturer: Gigabyte
3. Thunderbolt Type (Onboard or AIC): AIC
4. Thunderbolt AIC PCI Slot Location: SLOT 4 (last slot)
5. THB_C header Availability: YES and plugged in
6. TB BIOS Settings Availability: YES (set to no security and memory allocated is default settings of 128mb)
7. Motherboard Model: Gigabyte Aorus X570 Master Rev 1.2
8. CPU Model: Ryzen 9 5900x
9. macOS version: Big Sure 11.6
10. Copy of IOReg: attached
11. Kextcache output: When I run the command "sudo kextcache -I/" nothing outputs?


Notes:
  • The thunderbolt device I’m trying to use is an UAD Apollo X audio interface (thunderbolt 3)
  • When I boot with the TB3.AML SSDT the IOREG path changes to this: PCI0/BXBR/BYUP/BYD2/UPSB/DSB0/NHI0
  • The Audio interface only works if I boot into windows first, then restart and boot into macOS. It only works until it is turned off. If I restart macOS the device will not be recognized until I boot into windows then back to macOS.
 

Attachments

  • System Report PCI.png
    System Report PCI.png
    131.3 KB · Views: 70
  • IOREG.png
    IOREG.png
    386.6 KB · Views: 62
I don’t usually like to ask for help until I exhausted all my brain power and search abilities
This is such a good thing!
To sum it up, I can’t get the TB3 hot plug to work and I can’t figure out if there is a problem with my SSDT or if the problem steams from something else. Most documentation I find is for intel but my mobo is an Aorus Master X570. I’m using gigabytes Titan Ridge 2.0 and trying to connect my Apollo Audio interface. I found that the interface only works if I boot into windows first and then into macOS but once I turn it off or restart Mac it no longer gets recognized until I boot back into windows.
Yes, there are few setups like that which has been reported by users in the past. But with the correct implementation, it works good.
The card is in slot 4 and the IO reg path is: PCI0/BXBR/BYUP/BYD2/BYS2

Questions to start with:
When I boot with the SSDT-TB3-SLOT-4.aml, the IOREG path changes to: "PCI0/BXBR/BYUP/BYD2/UPSB/DSB0/NHI0” Is that suppose to happen?
Exactly. And when the address changes to that, it means the SSDT is injected and TB related kexts are active now.
In my SSDT-TB3-SLOT-4.aml file correct? I wasn’t sure if the definitions should be put as:

External (_SB_.PCI0.BXBR, DeviceObj) External (_SB_.PCI0.BXBR.BYUP, DeviceObj) External (_SB_.PCI0.BXBR.BYUP.BYD2, DeviceObj) External (_SB_.PCI0.BXBR.BYUP.BYD2.BYS2, DeviceObj) External (DTGP, MethodObj) // 5 Arguments

Or as:
External (_SB_.PCI0.BXBR.BYUP.BYD2, DeviceObj) External (_SB_.PCI0.BXBR.BYUP.BYD2.BYS2, DeviceObj) External (DTGP, MethodObj) // 5 Arguments
The correct definitions should be
Code:
 External (_SB_.PCI0, DeviceObj)
 External (_SB_.PCI0.BXBR.BYUP.BYD2, DeviceObj)
 External (_SB_.PCI0.BXBR.BYUP.BYD2.BYS2, DeviceObj)
 External (DTGP, MethodObj)    // 5 Arguments
Thunderbolt Chip and Family: Titan Ridge 2.0 (JHL7540)
Firmware flashed or running stock firmware?
TB BIOS Settings Availability: YES (set to no security and memory allocated is default settings of 128mb)
These settings must be set to default.
Kextcache output: When I run the command "sudo kextcache -I/" nothing outputs?
That's because you're using wrong commands. The correct command is
Code:
sudo kextcache -i/
The Audio interface only works if I boot into windows first, then restart and boot into macOS. It only works until it is turned off. If I restart macOS the device will not be recognized until I boot into windows then back to macOS.
Seems like you're still using the original/stock firmware and you must flash your TB Card with a custom firmware. Such systems needs a TB Bus ID activation or you'll have to boot into Windows and then Mac.

IOReg and Kextcache output is missing.
 
This is such a good thing!

Yes, there are few setups like that which has been reported by users in the past. But with the correct implementation, it works good.

Exactly. And when the address changes to that, it means the SSDT is injected and TB related kexts are active now.

The correct definitions should be
Code:
 External (_SB_.PCI0, DeviceObj)
 External (_SB_.PCI0.BXBR.BYUP.BYD2, DeviceObj)
 External (_SB_.PCI0.BXBR.BYUP.BYD2.BYS2, DeviceObj)
 External (DTGP, MethodObj)    // 5 Arguments

Firmware flashed or running stock firmware?

These settings must be set to default.

That's because you're using wrong commands. The correct command is
Code:
sudo kextcache -i/

Seems like you're still using the original/stock firmware and you must flash your TB Card with a custom firmware. Such systems needs a TB Bus ID activation or you'll have to boot into Windows and then Mac.

IOReg and Kextcache output is missing.


Thanks for the reply!

The Titan Ridge is on the stock firmware. I was under the impression that I could use either the SSDT method or the flash method? If I end up flashing custom firmware will I still need the SSDTS?

I went ahead and purchased the tools to do a flash. From my search it looks like I should try flashing with the DSM2 Firmware. But I still got more to research (such as if will work with Mac Pro 7,1)

I also updated the original post with the IOreg. As for the Kext Cache the output I get is:

Executing: /usr/bin/kmutil install --volume-root / --check-rebuild rebuilding local auxiliary collection kmutil done

Do you mind letting me know what exactly that means? I’d like to learn a little about what the kextcache output is used for or what it can help in troubleshooting. I noticed when I boot opencore the verbose says something like “ignoring previous kextcache” and I always wondered what that meant.

Thanks again. I really appreciate the help!
 

Trending Threads

Latest posts

Forum statistics

Threads
1,453
Messages
13,790
Members
20,613
Latest member
wayne910094