Thunderbolt Firmware-Update unter Linux

cuco

Moderator
Teammitglied
Themenstarter
Registriert
1 Dez. 2011
Beiträge
7.815
//EDIT: Abgekoppelt von hier: https://thinkpad-forum.de/threads/störrische-t480-580-mit-aktueller-tb-firmware-beglücken.240099/
In diesem Thread geht es also um das Thunderbolt Firmware-Update unter Linux. Für Windows siehe den oben verlinkten Thread.

Habe gestern Abend festgestellt, dass das Yoga G2 von meiner Frau auch noch auf NVM 15 ist (allererste Version - aktuell ist 43). Das Update über Windows tat gar nix. Ich habe dann einfach einen Linux-Live-USB-Stick erstellt. Ubuntu per Rufus im DD-Modus auf den Stick, vom Stick booten (Secure Boot und Co. können an bleiben), sudo fwupdmgr refresh, sudo fwupdmgr update und schon wurde das Thunderbolt-Update eingespielt. Das war mit Abstand am einfachsten. Außerdem hat er mich dabei dann auch noch darauf hingewiesen, dass auch die Sensor-Hub-Firmware, die Embedded Controller Firmware und die Intel ME Firmware veraltet sind. Die konnte ich über das Tool nicht direkt einspielen, weil man dafür eine ESP-Partition braucht, die der Live-Stick nicht hat. Aber macht ja nichts, die anderen Updates ließen sich per Windows ohne Probleme einspielen, wichtiger war das Thunderbolt-Update.
 
Zuletzt bearbeitet:
Der Thunderbolt-Controller taucht in deinem Output noch gar nicht auf (vielleicht, weil ein Update bereit steht und an dem Punkt bist du noch gar nicht), nur die Soundkarte in der Dock. Daraus schließe ich mal, dass eine Dock angeschlossen ist? Ja, System Firmware wird sich vermutlich nicht aus dem Live-System heraus einspielen lassen wegen fehlender ESP-Partition. Wird er dir vermutlich auch mitteilen, wenn du 'y' drückst. Aber klar, kannst du mit 'n' überspringen. Spannend ist, was dann passiert. Das Programm ist bei dir noch nicht fertig. Weitere Updates kommen evtl. noch, das geht Schritt für Schritt vor und fragt dich für jedes Update, ob du es einspielen möchtest. System Firmware könnte also das einzige sein. Könnte aber auch nur das erste sein, weitere könnten folgen.
 
Ich muss mal GAAAANZ vorne ansetzen, sorry, wenn ich euch son bisschen im Tüfteln unterbreche.
Ich habe die Thunderbolt Firmware auf meinem x280 unter Windows auf 23 geupdated.
Mittlerweile läuft aber nun Linux.
Ist das wie beim Bios, dass die Firmware nun "fest" installiert ist? Oder muss ich jetzt das Ganze unter Linux nochmal updaten?
 
Nein, der Chip selbst auf deinem Mainboard wird damit geupdatet. Das ist danach fest im Chip, ganz unabhängig davon, welches Betriebssystem läuft.
 
Der Thunderbolt-Controller taucht in deinem Output noch gar nicht auf (vielleicht, weil ein Update bereit steht und an dem Punkt bist du noch gar nicht), nur die Soundkarte in der Dock. Daraus schließe ich mal, dass eine Dock angeschlossen ist? Ja, System Firmware wird sich vermutlich nicht aus dem Live-System heraus einspielen lassen wegen fehlender ESP-Partition. Wird er dir vermutlich auch mitteilen, wenn du 'y' drückst. Aber klar, kannst du mit 'n' überspringen. Spannend ist, was dann passiert. Das Programm ist bei dir noch nicht fertig. Weitere Updates kommen evtl. noch, das geht Schritt für Schritt vor und fragt dich für jedes Update, ob du es einspielen möchtest. System Firmware könnte also das einzige sein. Könnte aber auch nur das erste sein, weitere könnten folgen.
Ja, das Gerät hängt an dem Lenovo Thunderbold Dock 3a. Bei 'n' ist doch klar, was passiert:
Code:
Perform operation? [Y|n]: n
Request canceled
mint@mint:~$
Schließlich war außer dem lt. Beschreibung unwichtigen Firmwareupdate nichts im Angebot weiter oben.

Na gut, belassen wir es hierbei.
 
Stutzig macht mich halt, dass der Thunderbolt-Controller gar nicht auftaucht. Ist die Dock vorher noch nie dran gewesen? Oder noch nie freigegeben worden?
Was gibt "sudo boltctl list" aus?
 
Meine TB 3a ist erst seit einem halben Jahr im Einsatz. Mein TB 3 (erste Ausgabe) kennt das Gerät auch noch:
Code:
~# boltctl list
 ○ Lenovo ThinkPad Thunderbolt 3 Dock
   ├─ type:          peripheral
   ├─ name:          ThinkPad Thunderbolt 3 Dock
   ├─ vendor:        Lenovo
   ├─ uuid:          00876a84-6783-0801-ffff-ffffffffffff
   ├─ generation:    Thunderbolt 3
   ├─ status:        disconnected
   ├─ authorized:    So 31 Dez 2023 06:19:32 UTC
   ├─ connected:     So 31 Dez 2023 06:19:32 UTC
   └─ stored:        Mo 25 Dez 2023 08:37:14 UTC
      ├─ policy:     iommu
      └─ key:        no

 ● Lenovo ThinkPad Thunderbolt 3 Dock #2
   ├─ type:          peripheral
   ├─ name:          ThinkPad Thunderbolt 3 Dock
   ├─ vendor:        Lenovo
   ├─ uuid:          00c6b8a8-3643-0801-ffff-ffffffffffff
   ├─ generation:    Thunderbolt 3
   ├─ status:        authorized
   │  ├─ domain:     c3030000-0082-8098-a087-142c7244f825
   │  ├─ rx speed:   40 Gb/s = 2 lanes * 20 Gb/s
   │  ├─ tx speed:   40 Gb/s = 2 lanes * 20 Gb/s
   │  └─ authflags:  none
   ├─ authorized:    Fr 24 Mai 2024 13:58:31 UTC
   ├─ connected:     Fr 24 Mai 2024 13:58:31 UTC
   └─ stored:        Fr 26 Jan 2024 13:07:08 UTC
      ├─ policy:     iommu
      └─ key:        no

Grundsätzlich sollte man einen Controller auch updaten können, wenn kein Gerät angeschlossen ist. Dieses auch bereits erfolgt ist, sonst wäre die Firmware des TB-Controllers noch auf Stand 2018.

Code:
├─ThinkPad Thunderbolt 3 Dock:
│ │   Gerätekennung:      efbbe54d2c44a981573cabae78b65ae6e13feda4
│ │   Aktuelle Version:   39.00
│ │   Anbieter:           Lenovo (THUNDERBOLT:0x0108, TBT:0x0108)
│ │   GUIDs:              03b97e38-f4b8-5a19-917c-28f95ca29768 ← THUNDERBOLT\VEN_0108&DEV_1720
│ │                       45c1814e-eb83-5b03-8997-ef8d4d8ade29 ← THUNDERBOLT\VEN_0108&DEV_1720&REV_00
│ │                       75039175-c354-5df9-a798-5da41461c007 ← TBT-01081720
│ │                       39361084-a038-5757-976a-4d022a61d009 ← TBT-01081720-controller0-1
│ │   Device Flags:       • Aktualisierbar
│ │                       • System benötigt externe Stromquelle
│ │                       • Gerät führt Aktualisierungen in Etappen durch
│ │                       • Signierte Nutzdaten
│ │
│ ├─USB2.0 Hub:
│ │ │   Gerätekennung:    84d0e3f2a0f8b2328f7995767b23ebb40494723f
│ │ │   Zusammenfassung:  USB 3.x hub
│ │ │   Aktuelle Version: 51.13
│ │ │   Anbieter:         VIA Labs, Inc. (USB:0x17EF)
│ │ │   Installationsdauer:15 Sekunden
│ │ │   GUIDs:            8ee94f0e-9b44-596a-bdd9-6f90401664cc ← USB\VID_17EF&PID_3080
│ │ │                     d5b585c2-e278-56ff-bd47-9bf0ad2bf9a9 ← USB\VID_17EF&PID_3080&REV_5113
│ │ │                     0987e3c9-b1ee-5763-ac6e-51329b034e4b ← USB\VID_17EF&PID_3080&HUB_20
│ │ │   Device Flags:     • Aktualisierbar
│ │ │                     • Kryptografische Hash-Verifizierung ist verfügbar
│ │ │                     • Gerät führt Aktualisierungen in Etappen durch
│ │ │                     • Das Gerät kann sich nach Fehlern beim Aufspielen wiederherstellen
│ │ │                     • Unsignierte Nutzdaten
│ │ │
│ │ └─HD USB Audio:
│ │       Gerätekennung:  9f2aa8e51ffa1b1e955d6c1c1d872ff74e6707bf
│ │       Aktuelle Version:7.40
│ │       Anbieter:       iFi (by AMR) (USB:0x20B1)
│ │       Seriennummer:   0003
│ │       GUIDs:          4bd15d9f-4710-5711-a415-07e4a980747a ← USB\VID_20B1&PID_3008
│ │                       48bbf930-8e3c-585a-b5a8-2d20feb8ddfe ← USB\VID_20B1&PID_3008&REV_0740
│ │       Device Flags:   • Aktualisierbar
│ │     
│ └─USB3.1 Hub:
│   │   Gerätekennung:    7e452eb6c025449c23b67d34f76de2b1fdf4c815
│   │   Zusammenfassung:  USB 3.x hub
│   │   Aktuelle Version: 51.13
│   │   Anbieter:         VIA Labs, Inc. (USB:0x17EF)
│   │   Installationsdauer:15 Sekunden
│   │   GUIDs:            8ee94f0e-9b44-596a-bdd9-6f90401664cc
│   │                     8aab7e9b-2ae8-559b-9be0-49bf5a647a2a ← USB\VID_17EF&PID_307F
│   │                     4ad676ff-8529-5cb0-930d-e3a1da2c60cb ← USB\VID_17EF&PID_307F&REV_5113
│   │                     a9866465-e1ec-5ce0-855d-162d817aeca2 ← USB\VID_17EF&PID_307F&HUB_0002
│   │   Device Flags:     • Aktualisierbar
│   │                     • Kryptografische Hash-Verifizierung ist verfügbar
│   │                     • Gerät führt Aktualisierungen in Etappen durch
│   │                     • Das Gerät kann sich nach Fehlern beim Aufspielen wiederherstellen
│   │                     • Unsignierte Nutzdaten
│   │
│   └─MSP430:
│         Gerätekennung:  3281dd62e64cfca4eec0492d675e1d4deb1b1cea
│         Zusammenfassung:I²C dock management device
│         Aktuelle Version:0.25
│         Anbieter:       VIA Labs, Inc. (USB:0x17EF)
│         GUIDs:          8ee94f0e-9b44-596a-bdd9-6f90401664cc
│                         8aab7e9b-2ae8-559b-9be0-49bf5a647a2a ← USB\VID_17EF&PID_307F
│         Device Flags:   • Aktualisierbar
│                         • Unsignierte Nutzdaten
│       
├─ThinkPad Thunderbolt 3 Dock USB Audio:
│     Gerätekennung:      caee8370381dbe658ef9193b4948eb9ed1a25f8d
│     Zusammenfassung:    CX20985 USB audio device
│     Aktuelle Version:   04-0E-87
│     Bootloader-Version: 02.00.00.00
│     Anbieter:           Lenovo (USB:0x17EF)
│     Installationsdauer: 3 Sekunden
│     Seriennummer:       0
│     GUIDs:              35fbba63-d4a2-5b93-b072-8cca131123bf ← SYNAPTICS_CXAUDIO\ID_CX2098X
│                         d66bf84b-c3ba-508c-bc55-0d445413d3d4 ← USB\VID_17EF&PID_3083
│                         3f0f8a12-6398-50b6-bbde-415a6da5b4f8 ← USB\VID_17EF&PID_3083&REV_0087
│     Device Flags:       • Aktualisierbar
│                         • Unsignierte Nutzdaten
│   
├─Thunderbolt host controller:
│     Gerätekennung:      bc7b95c17cb67a3d97332d28448d5631e79b0a5f
│     Zusammenfassung:    Unmatched performance for high-speed I/O
│     Aktuelle Version:   20.00
│     Anbieter:           Lenovo (THUNDERBOLT:0x0109, TBT:0x0109)
│     GUIDs:              6d4d771c-0579-504d-92a1-737180c7b360 ← THUNDERBOLT\VEN_0109&DEV_1707
│                         8487e4cb-fe6b-5cb6-ad88-46535fb110e1 ← THUNDERBOLT\VEN_0109&DEV_1707&REV_00
│                         7d131734-64ed-5865-a46e-a67cfb9b5a46 ← TBT-01091707
│                         e45313fd-8d5c-54e9-b175-1f15ffe6b05c ← TBT-01091707-controller0-0
│     Device Flags:       • Internes Gerät
│                         • Aktualisierbar
│                         • System benötigt externe Stromquelle
│                         • Gerät führt Aktualisierungen in Etappen durch
│                         • Signierte Nutzdaten
 
Hmm, da wird der Thunderbolt-Controller ja jetzt auch erkannt ("Thunderbolt host controller"). Dann weiß ich leider auch nicht weiter, warum fwupdmgr das Ding nicht updaten will. fwupdmgr refresh vor dem Update hast du ja auch ausgeführt?
Aber immerhin: v20 ist ja drauf.
 
Ja, refresh habe ich auch artig ausgeführt.
Mich wundert langsam eher, dass manche die Version 23 unter Linux (?) installiert bekommen haben. 🥸
 
Ja, refresh habe ich auch artig ausgeführt.
Mich wundert langsam eher, dass manche die Version 23 unter Linux (?) installiert bekommen haben. 🥸
Ist Thunderbolt im UEFI BIOS möglicherweise deaktiviert bzw. nicht vollständig aktiviert?

Im T480 gibt es zwei Bereiche im UEFI, an denen Einstellungen für Thunderbolt vorgenommen werden können:

* Config/Thunderbolt
* Security/I/O Port Access/Thunderbolt

Siehe https://download.lenovo.com/bsco/index.html#/textsimulator/ThinkPad T480 (20L5,20L6) zum Vergleich.

Das T480 hier war allerdings schon mit Version 23 bestückt, als es in Betrieb genommen wurde.
 
Das werde ich mal genauso reproduzieren. Werde berichten!
Es müsste doch irgendein Weg geben die aktuell installierte FW Version auszulesen.
Wenn ich den Beitrag oben richtig verstehe, müsste fwupdmgr get-devices funktionieren
@cuco stimmt, hast recht <get-devices> listet für alle unterstützten Geräte die aktuelle Version, also auch für TB ..und ich musste leicht enttäuscht feststellen, dass ich schon auf der aktuellsten FW Version bin (23)..enttäuscht deswegen, weil ich schon Bock hatte das jetzt genau zu wissen...hab wohl bisschen zu viel Staub aufgewirbelt hier im Thread, aber es bleibt noch ein Gerät in der Ferne das darauf wartet von NVM13 upgedatet zu werden, dann werde ich das wohl beizeiten an dem Gerät versuchen...

Was mir aufgefallen war, und das hier nur am Rande, dass man die FW der Thunderbolt Dock auch updaten kann..Das hat bei mir ein Error in roter Schrift erzeugt...Aktuell ist bei mir momentan die Version 36, was habt ihr zum Vergleich? Es geht um die TB3 Dock

Als Goodie wollt ich diesen Link von Cyberciti aber hier mal posten, der sehr gut die einzelnen Schritte von fwupd erläutert
 
Zuletzt bearbeitet:
Moin,

meine Thunderbolt Firmware ist jetzt auf Version 23 angehoben. Die Auflösung möchte ich Euch nicht vorenthalten:

Erst einmal findet fwupdmgr unter meinen installierten Debian 12 weiterhin keine neue Firmware. Dem Rat von @cuco folgend, habe ich heute nochmals ein Mint vom USB-Stick aus gestartet. Oh Wunder, es wurde die neue Systemfirmware von neulich gefunden und die Thunderbolt Host Controller Firmware v23. Diese läßt sich aber nur im Doppelpack installieren. Die Systemfirmware wollte ich ja nicht haben. Diese muß jedoch installiert werden, sonst bricht fwupdmgr den gesamten Vorgang ab.

Nochmals ein großes Dankeschön für die Hilfe!
 
Das T480 hing, wie die geschilderten male davor auch, an einem Lenovo Thunderbolt 3 Dock. Bis Version 20 war ich sogar ohne Dock gekommen, warum auch immer. Allerding war "früher" auf dem Gerät Linux Mint auch installiert. Ob das einen Unterschied zu Debian macht?!
 
Kann ich mir nicht vorstellen.
Mint(Ubuntu{Debian})

Aber gut zu wissen, die Info ist nicht ganz unwichtig
 
Ich weiß nicht mehr genau wie es sich geäußert hatte, aber bei meinem X13 hatte ich auch schon das Problem, dass sich die Firmware nicht aktualisieren wollte. Im Endeffekt lag es dann daran, dass das Thinkpad mit geschlossenem Deckel (weil ja an der Dock mit ext. Monitor angeschlossen) betrieben wurde. Nachdem der Deckel des X13 geöffnet war, wurden die Updates gefunden und installiert :)
 
Von mir auch noch Ergänzungen:
  • Boot Order darf im UEFI nicht gelocked sein. Ich habe ent-locked, danach wurde ein neuer Eintrag "Linux Firmware Update" (oder so) in der Reihenfolge der Boot-Devices angelegt. Ohne das geht nix (hat Cuco auch schon ausgeführt).
  • Das Gerät muß am Strom hängen.
  • Ich mußte noch "sudo apt-get install fwupd-signed" nachinstallieren.
Dann kamen doch einige FW-Updates rein, die auch ohne Fehlermeldung installiert wurden.

Again what learned, würde Loddar jetzt sagen.
 
//EDIT: Abgekoppelt von hier: https://thinkpad-forum.de/threads/störrische-t480-580-mit-aktueller-tb-firmware-beglücken.240099/
In diesem Thread geht es also um das Thunderbolt Firmware-Update unter Linux. Für Windows siehe den oben verlinkten Thread.

Habe gestern Abend festgestellt, dass das Yoga G2 von meiner Frau auch noch auf NVM 15 ist (allererste Version - aktuell ist 43). Das Update über Windows tat gar nix. Ich habe dann einfach einen Linux-Live-USB-Stick erstellt. Ubuntu per Rufus im DD-Modus auf den Stick, vom Stick booten (Secure Boot und Co. können an bleiben), sudo fwupdmgr refresh, sudo fwupdmgr update und schon wurde das Thunderbolt-Update eingespielt. Das war mit Abstand am einfachsten. Außerdem hat er mich dabei dann auch noch darauf hingewiesen, dass auch die Sensor-Hub-Firmware, die Embedded Controller Firmware und die Intel ME Firmware veraltet sind. Die konnte ich über das Tool nicht direkt einspielen, weil man dafür eine ESP-Partition braucht, die der Live-Stick nicht hat. Aber macht ja nichts, die anderen Updates ließen sich per Windows ohne Probleme einspielen, wichtiger war das Thunderbolt-Update.
Hat exakt so funktioniert, vielen Dank. TB-Gerät war angeschlossen.
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben