Contribute
Register

Thunderbolt 4, modified firmware, Full Thunderbolt Bus tree

Asus Z690 ProArt Creator:
  • I just ran TbtNvmDrvShellUpdate.efi with original NVM31, but version number changed to 33 (because previous flash was done with version changed to 32)
  • BIOS version: (coming soon)
  • macOS Sonoma 14.5 public beta
  • Maple Ridge SSDT enabled
  • Kernel patches enabled
Result:
  • Thunderbolt Local Node is not enabled
  • So SSDT alone is not sufficient for this particular combination of BIOS and macOS
Other Observation:
  • When TbtNvmDrvShellUpdate.efifinished, it reported something to the effect:
    • New firmware verified and passed authentication
  • "passed authentication" did not appear when modified firmware, so authentication check is being done, but only for informational purposes

** I take it all back! Holy Crap!! **

Thunderbolt Local Node activated after a COLD BOOT
Asus Z690 ProArt Creator
macOS Sonoma 14.5 public beta
BIOS 2004


WARNING: Do not perform this operation on AMD AM5 boards;
you will brick the controller and require CH341a external programmer to recover​


Screenshot 2024-04-10 at 1.37.13 PM.png
Screenshot 2024-04-10 at 1.37.53 PM.png
 
Last edited:
** I take it all back! Holy Crap!! **

Thunderbolt Local Node activated after a COLD BOOT
Asus Z690 ProArt Creator
macOS Sonoma 14.5 public beta​
So you're telling me there's a chance! :lol:
 
Ok here are my findings, I get what you expect without my LG Ultrafine 5k connected (screenshot attached) if I boot with my thunderbolt monitor It works with sound and webcam. But the thunderbolt bus info in System Information app is gone and I cant hot swap it. In the prior SSDT you provided "SSDT-MAPLE-RIDGE-RP05-V1B.aml" I could hot plug the monitor but I would loose USB on it after the hot plug (webcam and sound)View attachment 581256
Hi @taylorsyn
Could you share an IOReg screenshot of DSB1 or DSB3 (which one is connected) & XHC3 (SSP1 or SSP2) when your LG monitor loose USB after the hotplug (no webcam and sound) ?
 
Additional Observations on Asus Z690 ProArt Creator
Observation #1:
  • When I used TbtNvmDrvShellUpdate.efi to flash the original firmware, I changed byte offset 0x09 to 33 as previously mentioned
  • The new file passed authentication because the entire "body" of the file (everything but offset 0x09) is unmodified
  • After logging into Linux to read the new active NVMEM, I see that byte offset 0x09 has changed back to 0x31
  • I don't know if the system switched from Active Region 1 to Active Region 2 or whether it actually changed 0x33 back to 0x31
  • Regardless, this is really good because I can always re-flash the firmware without continuously incrementing the version number!
Screenshot 2024-04-10 at 1.56.23 PM.png

Observation #2:
  • Switching TBTFlags from <08 00 00 00> to <04 00 00 00> disables Thunderbolt Local Node, so this is the key! This is the property we did not change when we ran these tests back in 2021.
Screenshot 2024-04-10 at 2.16.10 PM.png

Observation #3:
  • System does not enter sleep, but now I'm wondering if that is due to something else
  • I'll disable the Thunderbolt SSDT, reboot, and check sleep now...
 
Last edited:
Hi @CaseySJ ... What can I say ?! Wow.. this is not a fake news !

Have your tried with GC-MapleRidge ?
Yes I tried on Gigabyte Z390 Designare, but local node did not appear. I think it may only happen on Asus motherboards, but this needs to be tested. Will do that soon.

I'll also repeat the test on my AMD Ryzen system with Asus X670E Gene, which also has on-board Maple Ridge controller. I don't remember whether I tried a cold start.
 
witching TBTFlags from <08 00 00 00> to <04 00 00 00> disables Thunderbolt Local Node, so this is the key! This is the property we did not change when we ran these tests back in 2021.
Disassembled code doesn't lie :) .. As said, minimum value of 0x8
in 2021, with Titan ridge, we had 0x3 if I remember.
 
Last edited:
This not too late in US :yawn:, maybe you mean TBTFlags ?!
If you refresh the webpage, you'll see that this correction was made 5 minutes ago!
 
...

I'll also repeat the test on my AMD Ryzen system with Asus X670E Gene, which also has on-board Maple Ridge controller. I don't remember whether I tried a cold start.
Alas, even with cold boot we do not get Thunderbolt Local Node on AMD Ryzen (Asus X670E Gene)...
Screenshot 2024-04-10 at 3.21.57 PM.png
 
Back
Top