Contribute
Register

[SUCCESS] Gigabyte Designare Z390 (Thunderbolt 3) + i7-9700K + AMD RX 580

This is incredible.

With the Thunderbolt firmware flashed with a light DROM, are there other modifications or is it otherwise OEM?
Hi @NorthAmTransAm

I’m on a light DROM just like Apple TR firmware. (I have tested full DROM, this is also OK.)
I have included customised SSDT-TbtonPch on BIOS firmware and added many other DXE drivers. I have to identify which ones are required for ThunderboltNhi DXE drivers and if SSDT-TbtonPch included on BIOS is required or not.
 
Im using the kexts that were provided. Which one should I remove?
I'm referring to audio interface drivers such as those for UAD Audio or MOTU or Focusrite or any other third-party audio device. We've seen reliability problems with some of these drivers (can't remember the exact one) so it's best to uninstall all commercial audio drivers. (Note: These drivers are not in the OpenCore EFI. They will be installed directly in macOS so no change to OpenCore EFI.)
 
Hi @NorthAmTransAm

I’m on a light DROM just like Apple TR firmware. (I have tested full DROM, this is also OK.)
I have included customised SSDT-TbtonPch on BIOS firmware and added many other DXE drivers. I have to identify which ones are required for ThunderboltNhi DXE drivers and if SSDT-TbtonPch included on BIOS is required or not.
This is awesome -- this means that the required Thunderbolt SSDT will be baked directly into the motherboard BIOS file? So we don't need to put it into our OpenCore EFI? Or do we still need a simple one that just adds PciHotplugCapable and PciThunderbolt flags and provides the proper device names (UPSB, DSB0, NHI0, DSB1, etc.)?
 
I'm referring to audio interface drivers such as those for UAD Audio or MOTU or Focusrite or any other third-party audio device. We've seen reliability problems with some of these drivers (can't remember the exact one) so it's best to uninstall all commercial audio drivers. (Note: These drivers are not in the OpenCore EFI. They will be installed directly in macOS so no change to OpenCore EFI.)

lol and just like that it runs great haha. That doesn't even make sense. How my UAD caused all these issues.
 
The Thunderbolt firmware still needs to enable Thunderbolt Bus, so those 3 or 6 bytes we modify before the DROM section are still needed.

Reason:
  1. Apple's own Thunderbolt firmware uses those bytes.
  2. Apple's own Motherboard firmware uses those DXE files.
Up to now we had achieved item (1), but now @Elias64Fr has managed to achieve item (2) as well. And that is what makes this so exciting. It's too early to tell what real-world difference this makes, but the early signs are quite promising.

For example:
  • ThunderboltDROM is now automatically generated!
  • ThunderboltConfig is now automatically generated!
  • ThunderboltUUID is now automatically generated!
  • pathcr is now automatically generated!
  • The list goes on...
In fact, all properties are automatically generated... linkDetails, TBTPLowToHight and sscOffset :)

With light DROM, I can see Apple name on System info/ Thunderbolt/USB4 with UID like 0x0001xxxxxx..
With original DROM (full), Gigabyte name appear with UID like 0x00EDxxxxx..
 
lol and just like that it runs great haha. That doesn't even make sense. How my UAD caused all these issues.
Phew! Glad we found the culprit...
 
In fact, all properties are automatically generated... linkDetails, TBTPLowToHight and sscOffset :)
Now you see why I've been acting so hyper all day! :)

With light DROM, I can see Apple name on System info/ Thunderbolt/USB4 with UID like 0x0001xxxxxx..
With original DROM (full), Gigabyte name appear with UID like 0x00EDxxxxx..
I wonder if it makes more sense to use the "light" DROM and let the DXE drivers create the DROM for us. The only way to tell would be to test multiple Thunderbolt devices to see whether this makes any difference...
 
Now you see why I've been acting so hyper all day! :)


I wonder if it makes more sense to use the "light" DROM and let the DXE drivers create the DROM for us. The only way to tell would be to test multiple Thunderbolt devices to see whether this makes any difference...
For tests I have an UAD Apollo Twin (with Apple TB2 -> TB3 adaptor)
 
For tests I have an UAD Apollo Twin (with Apple TB2 -> TB3 adaptor)
We especially need to test problem devices such as:
  • Antelope Audio devices
  • Thunderbolt monitors during BIOS and OpenCore (black screen or full video signal?)
  • Thunderbolt devices with USB-C Alt Mode such as Belkin Thunderbolt Dock Pro and 2019 LG UltraFine 5K
  • Even the Apple Thunderbolt-to-Gigabit Ethernet adapter (it works in Catalina, but not in Big Sur)
 
This is awesome -- this means that the required Thunderbolt SSDT will be baked directly into the motherboard BIOS file? So we don't need to put it into our OpenCore EFI? Or do we still need a simple one that just adds PciHotplugCapable and PciThunderbolt flags and provides the proper device names (UPSB, DSB0, NHI0, DSB1, etc.)?
This is awesome -- this means that the required Thunderbolt SSDT will be baked directly into the motherboard BIOS file?
Right
So we don't need to put it into our OpenCore EFI ?
Right, but I have to verify if custom SSDT is required for loading ThunderboltNhi DXE driver

Following screenshots show my current BIOS included SSDT-Tbt and DSDT part of DTGP, Darwin _OSI.

I also added a new variable TBFW for disabling unrequired Methods for custom Tbt firmware like TINI :):


Capture d’écran 2021-06-11 à 01.11.25.png


Capture d’écran 2021-06-11 à 01.14.24.png


Capture d’écran 2021-06-11 à 01.16.11.png


Capture d’écran 2021-06-11 à 01.19.06.png

 
Back
Top