Benutzer-Werkzeuge

Webseiten-Werkzeuge


projekte:libreboot

Dies ist eine alte Version des Dokuments!


Libreboot Thinkpad X200s

—- datatemplateentry project —- template : templates:project # Kurzer Name des Projekts name : Libreboot Thinkpad shortdesc : Von Saint Ignucius gesegnete Reliquie mit instant Freedom Funktion

# Bilddateiname relativ zum Ordner projekte: # Wenn (noch) kein Bild vorhanden, bitte none.png lassen imgname_img90 : img_20150228_004328.jpg

# Links zu Seiten der Mitglieder, die am Projekt beteiligt sind, also intern:mitglieder:hubert (mehrere mit Komma getrennt) person_pages : intern:mitglieder:klonfish, intern:mitglieder:frederic, intern:mitglieder:mazech

# Start- und Enddatum im Format JJJJ-MM-TT start_dt : 2015-02-27 end_dt : 2015-02-28

# Aktueller Status des Projekts, z.B. fertig, in Arbeit, eingestellt, Idee, … status_ : fertig


Libreboot ist ein Ersatz für das proprietäre Hersteller-BIOS von ausgewählten IBM/Lenovo Thinkpads. Es ist ein Fork von Coreboot, allerdings wurden die in Coreboot enthaltenen Binary Blobs entfernt, man kann es also selbst aus den Sources heraus kompilieren und hat die volle Kontrolle über die Funktionalität des BIOS.

Beweggründe

Es war schon länger im Gespräch mit einem alternativen FLOSS Bios zu experimentieren. Wir haben uns für Libreboot entschieden, da es komplett ohne binary Blobs auskommt, Intel AMT und die gesamte proprietäre BIOS Software komplett entfernt. Leider muss man auch abstrichen bei der einfachen konfigurierbarkeit der Hardware machen, da es kein einfaches Interface gibt, wie man es von einem normalen BIOS kennt. Die einzigen Optionen sind das OS zu laden, von USB zu booten und von CD/DVD zu booten.

Intel AMT kann wie ein Trojaner agieren und hat auf die Hardware des Geräts sogar Zugriff, wenn dieses ausgeschaltet ist. Auf dieses „Feature“ kann man auch gut verzichten.

Außerdem wird die TPM Funktionalität eingeschränkt und die Whitelist für Wireless-LAN Netzwerkkarten entfernt. Man also jede beliebige NW-Karte benutzen, auch wenn diese von Lenovo nicht auf die Whitelist gesetzt wurde.

Wenn das Ziel ist einem Bad-Bios zu entgehen, ist libreboot aufgrund seiner kompletten quelloffenheit wohl die Beste alternative Firmware für Laptops. Leider werden nur 3 Modelle (X60, T60, X200) von einem Hersteller (Lenovo) unterstützt. Die Laptops können auch fertig geflasht, als Gebrauchtware auf der Internetseite des Entwicklers erworben werden.

Unterstützte Geräte

Leider ist Libreboot nur für wenige Geräte verfügbar.

  • IBM Thinkpad X60
  • IBM Thinkpad T60
  • Lenovo Thinkpad X200
  • Lenovo Thinkpad X200s
  • Lenovo Thinkpad X200t

Demontieren des Laptops

img_20150226_220212.jpg

Das demontieren unseres X200s ging relativ schnell, auf der Lenovo Seite kann man sich das Service Manual besorgen, damit am Ende wieder alles an seinem richtigen Platz ist und natürlich davor alles ohne Schäden auseinander gebaut werden kann.

Wir haben nur das Mainboard entfernt, damit wir einfacher an den BIOS-Chip kommen. Der sitzt auf der Unterseite des Boards, man muss also das Baord komplett ausbauen, um problemlos daran arbeiten zu können. Das Display muss eigentlich nicht von der Base-Unit entfernt werden, genauso wie der Express-Card-Slot und die kleine Platine unten Rechts in der Ecke, auf der sich die Speicherkarte,das Modem und die Klinken-Stecker befinden.

Herstellen der SPI-Verbindung

Um das BIOS auf den SO-Chip flashen zu können, muss ein Gerät das lesend und schreibend über SPI zugreifen kann mit dem Chip verbunden werden. Wir hatten uns im voraus eine SOIC-8 Klemme besorgt, die leider komplett nutzlos war, da die Pins des Chips ungewöhnlich klein waren und wir deswegen mit der Klemme keinen Kontakt herstellen konnten.

Was allerdings erst später aufgefallen ist, auf der Seite von libreboot, wird explizit davon gesprochen, dass man beim X200s löten MUSS, da der Chip nicht kompatibel mit Standard SOIC-8 Klemmen/Zangen ist. Also wurde der Chip mit Drähten versehen.

img_20150226_223537.jpg img_20150226_230011.jpg

FIXME Schaltplan

Verbinden mit dem Raspi

Erster Versuch

img_20150227_002136.jpg Als Flash Device haben wir uns für einen RasberryPI mit rasbian und flashrom entschieden. Das ist nur eine von vielen Möglichkeiten, bei unserer Recherche haben wir erfolgreiche Flashvorgänge mit BeagleBone und BUS-Pirate gefunden. Das Gerät der Wahl sollte nur SPI unterstützen.

Trotz Warnungen auf anderen Seiten, dass die Länge der Kabel eine direkte Auswirkung auf den Erfolg des Vorgangs hat, probierten wir Kroko-Klemmen als Verbindunsgstück zwischen den GPIO's des RasPI und dem Chip des X200s aus. Es sah nicht nur chaotisch aus, flashrom erkannte den Chip nicht einmal.

FIXME Versuch eines Verbindungsaufbaus:

./flashrom -p linux_spi:dev=/dev/spidev1.0,spispeed=512

Fehlerausgabe:

Calibrating delay loop... OK.
No EEPROM/flash device found.
Note: flashrom can never write if the flash chip isn't found automatically.

Zweiter Versuch

img_20150227_005317.jpg Nachdem die Krokoklemmen nicht die Lösung unseres Verbindunsgproblems waren, kürzten wir die Kabel und löteten diese eine Schaltleiste. Im Vergleich zu anderen Coreboot/Librebott Projekten waren unsere Kabel immernoch 2-3x Länger. Nun versuchten wir wieder über flashrom den Chip auszulesen, was allerdings auch wieder zu dem selben Fehler führte:

FIXME Versuch eines Verbindungsaufbaus:

./flashrom -p linux_spi:dev=/dev/spidev1.0,spispeed=512

Fehlerausgabe:

Calibrating delay loop... OK.
No EEPROM/flash device found.
Note: flashrom can never write if the flash chip isn't found automatically.
projekte/libreboot.1425132515.txt.gz · Zuletzt geändert: 2021/01/17 01:07 (Externe Bearbeitung)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki