Inhaltsverzeichnis

FIXME

Bios Firmware per SPI flashen

In diesem Tutorial erklär ich wie man Mainboards mit einem defekten Bios retten kann. Die Anleitung funktioniert auch wenn man eine ältere Bios Version installieren möchte, alle anderen Methoden allerdings versagen.

Achtung: Bei dieser flash Art kann die MAC Adresse verloren gehen. Zum wiederherstellen sollte diese vorher aufgeschrieben werden.

Wie immer übernehme ich keine Garantie für Schäden.

Was brauch ich alles

Hardware:

Software:

Vorbereitungen

Bios Firmware

MSI

Bei MSI Boards braucht es so gut wie keine Vorbereitung.

  1. Firmware von der Herstellerseite runterladen
  2. Firmware entpacken
  3. Firmware umbenennen zu bios.rom

ASUS

https://community.hwbot.org/topic/148723-asus-z170-non-k-unlock/

Bei ASUS Boards muss die CAP Datei noch in eine .rom Datei umgewandelt werden.

  1. Firmware von der Herstellerseite runterladen
  2. In UEFITools die .CAP Datei öffnen
  3. Unter Action → Image → Extract as is… die Firmware als bios.rom speichern

Raspberry Pi

Software

Das Tool Flashrom herunterladen Download Seite von Flashrom

Hardware

Kabel an die entsprechenden Pins des Raspberry Pi anschließen. Beste Übersicht der Pins Die wichtigsten Pins für uns:

Bios-Chip / Mainboard JSPI Port

Belegung des Firmware Chips meines Asus z170i Pro Gaming

     _____
CS# |  U  | VCC
SO  |     | 
    |     | SCLK
GND |_____| SI

JSPI1 Port an meinem MSI z170a Pro Gaming Carbon

      _____
     |o   o|
     |    o|
GND  |o   o| GND
SCLK |o   o| CS#
SI   |o   o| SO
VCC  |o___o| VCC

Grundsätzlich sollten die Belegungen bei anderen Herstellern und Chips nicht zu sehr abweichen, zur Sicherheit sollte das aber auf jeden Fall überprüft werden.

Flash Vorgang

Chip Testen

Wird normalerweise nicht benötigt.

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

Chip Löschen

Wird normalerweise nicht benötigt.

sudo flashrom -E -V -p linux_spi:dev=/dev/spidev0.0,spispeed=512

Chip flashen

sudo flashrom -w /tmp/bios.rom -V -p linux_spi:dev=/dev/spidev0.0,spispeed=512