Contribute
Register

Thunderbolt 4, modified firmware, Full Thunderbolt Bus tree

I had a feeling this was going to an intel only party.
Alas that may be true. We were able to activate Thunderbolt Local Node on Gigabyte B550 Vision D, so there’s that data point. We still have the option to flash the firmware on X670E Gene, but I doubt it will help.
 
  • 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
When you flashed modified (i.e., with modifications to the bytes 0x35/0x36/0x81) firmware, were the changes reflected in Linux? They did not show up for me.
 
When you flashed modified (i.e., with modifications to the bytes 0x35/0x36/0x81) firmware, were the changes reflected in Linux? They did not show up for me.
Good question. I did not check NVMEM in Linux after flashing the modified firmware.
 


Nice to hear from you. Yes, the world is small.
It's funny, my daughter is currently studying medicine at ETH Zurich :).
But yes, the view from ETH over Zurich is beautiful.

...
Yes it’s a beautiful view from up that hill. I was there on a business trip and got the chance to dine at the faculty dining hall at ETH.

All of my siblings are medical doctors (I am not :)) so I wish your daughter well!
 
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) ?

I actually lost the ability to hot plug my thunderbolt monitor in windows and mac os, however going to sleep in windows and wakeup it still retains audio/webcam which is not working with the latest CaseySJ SSDT here is the IO reg after waking from sleep using the 3 kernel patches and the latest SSDT provided by @CaseySJ
 

Attachments

  • Screenshot 2024-04-10 at 8.51.07 PM.png
    Screenshot 2024-04-10 at 8.51.07 PM.png
    411.2 KB · Views: 3
Last edited:
As AppleThunderboltNHI driver is not loaded, you have something wrong with your SSDT (device-id and/or class-code spoofing).
You were right! Had accidentally disabled the DTPG aml.
Local bus is activated! Upon boot UltraFine monitor is recognized in the bus, but does not initialize. TS3 Plus dock is working.
Sleep did work! When I woke it up, funny thing, the UltraFine came to life for about two minutes, then went dark again. Also after wake, thunderbolt bus does not populate.
 
You were right! Had accidentally disabled the DTPG aml.
Local bus is activated! Upon boot UltraFine monitor is recognized in the bus, but does not initialize. TS3 Plus dock is working.
Sleep did work! When I woke it up, funny thing, the UltraFine came to life for about two minutes, then went dark again. Also after wake, thunderbolt bus does not populate.
Are you using the 3 kernel patches?

Do you have a non-Thunderbolt monitor with which to test sleep, wake and hot plug behavior?
 
Thank you @Elias64Fr ! I just reviewed your post and will do my best to answer your questions once my work day ends.

Regarding the BIOS settings -- yesterday I took some screenshots of BIOS settings, random Windows settings, some more macOS details, as well as the outcome when I attempted to flash the original or even the patched firmware via UEFI shell. Please find the attached ZIP with a bunch of images. I will get to the rest in about 12 hours.

Thank you
Wow! I love what I am reading! Thank you all for moving these efforts forward even more. Woohoo!!

For all of you mentioning my user as a contributor; thank you, but you all give me too much credit...I'm just a n00b following the lead and direction from Elias64Fr and CaseySJ.

@Elias64Fr , @CaseySJ -- Are you all wishing for any information from me at this point ?
 
Working for me on Monterey 12.7.2, iMacPro1,1.
All i did was add the SSDT, reset and boom, popped up. No kernel patches (do i need to?)

Few notes;
- Sleep/wake works, feels like it takes slightly longer but not by much (will test again).
- External SSD that is connected to the second TB port is not showing as "connected" under Thunderbolt. But it is showing in USB tab as USB 3.1 device.
- External SSD pop-up message saying the SSD wasn't "EJECTED properly" after wake. <-- Any ideas?


Screen Shot 2024-04-11 at 12.56.37 pm.png


BEFORE SLEEP
before sleep.png


AFTER SLEEP
after sleep.png


Great work everyone, cheers!
 
Back
Top