PC Engines APU BIOS Upgrade

Halte dein BIOS up-to-date. Damit bleibst du offen für zukünftige Features.

Das Update läuft je nach Anwender und Wissensstand unterschiedlich ab. Hier mal eine grobe Übersicht über den Worst Case, bei dem man keine Infos hat über die verbaute Hardware.

  1. Das muss an Hardware vorhanden sein
    1. Serielle Schnittstelle oder Adapter auf Serial
    2. Serielles 0-Modem Kabel
    3. leerer USB-Stick
  2. Bereitstellen des USB-Sticks
  3. Identifizieren der Hardware und BIOS Version
  4. Herunterladen der aktuellen BIOS Version
  5. Flashen des aktuellsten BIOS Version

Die generelle Doku findest du übrignes hier: https://github.com/pcengines/apu2-documentation/blob/master/docs/firmware_flashing.md

Bereitstellen des USB-Sticks

Zuerst laden wir uns das Hlfsprogramm zum erstellen des bootbaren USB-Sticks herunter, der ein TinyCoreLinux zur Verfügung stellt mit allen Tools: https://pcengines.ch/howto.htm#TinyCoreLinux

Nun steckst du den USB-Stick in deinen Computer, startest das Hilfsprogramm und folgst dem Assistenten.

Identifizieren der Hardware und BIOS Version

Hier gibt es viele verschiedene Wege:

  • Du ratest, nicht wirklich zu empfehlen
  • Du schraubst die Appliance auf und schaust hinein
  • Das OS bietet dir die Infos
  • Mit dem USB-Stick liest du die DMI Daten aus

Die ersten beiden Varianten lassen wir mal aus.

Variante 3

Beispiel für Variante 3 installieren ich auf der opnsense Appliance das Plugin os-dmidecode.

Als Ergebnis sehen wir nun, es handelt sich um ein PC Engines APU2 Board und hat die BIOS Version v4.11.0.5 installiert, Vor dem Update stand hier noch v4.8.0.7.

Variante 4

Universalmethode zum Auslesen via TinyCoreLinux:

  • Stecke den USB-Stick ein, den wir vorher bereitgemacht haben
  • Verbinde die Appliance mit dem seriellen Kabel und nötigenfalls mit dem Adapter an deinen Computer
  • Starte Putty und gib die entsprechenden Verbinungsdaten ein, den Port findest du im Gerätemanager, die Baud beträgt bei den APUs 115200
  • Boote die Appliance neu
  • Üblich wird direkt von deinem USB Stick gebootet, wenn nicht, drücke während dem Startvorgang im entsprechenden Bildschirm die F10 Taste und wähle den USB-Stick aus

Nun die nächsten Schritte handeln über das Programm dmidecode, mit welchem man verschiedene Systemparameter auslesen kann. Als erstes führen wir folgenden Befehl aus:

dmidecode -t baseboard

Die Antwort daraus zeigt uns, dass wir ebenfalls ein PC Engines APU2 Board im Betrieb haben.

[+57.8 C][root@box:/media/TINYCORE]$ dmidecode -t baseboard
# dmidecode 2.12
SMBIOS 2.7 present.

Handle 0x0002, DMI type 2, 14 bytes
Base Board Information
        Manufacturer: PC Engines
        Product Name: apu2
        Version: 1.0
        Serial Number:
        Asset Tag: Not Specified
        Features: None
        Location In Chassis: Not Specified
        Chassis Handle: 0x0003
        Type: Unknown

Nun werfen wir einen Blick auf die aktuell installierte BIOS Version.

dmidecode -t bios

In der Antwort finden wir nun unseren gesuchten Wert: Version v4.8.0.7.

[+58.0 C][root@box:/media/TINYCORE]$ dmidecode -t bios
# dmidecode 2.12
SMBIOS 2.7 present.

Handle 0x0000, DMI type 0, 24 bytes
BIOS Information
        Vendor: coreboot
        Version: v4.8.0.7
        Release Date: 12/03/2018
        ROM Size: 8192 kB
        Characteristics:
                PCI is supported
                PC Card (PCMCIA) is supported
                BIOS is upgradeable
                Selectable boot is supported
                ACPI is supported
                Targeted content distribution is supported
        BIOS Revision: 4.0
        Firmware Revision: 0.0

Wer hier von dmidecode noch nicht genug hatte, der kann folgendem Befehl weiter auf Entdeckungstour gehen:

dmidecode --type

Herunterladen der aktuellen BIOS Version

Nun haben wir alles beisammen, um das korrekte ROM herunterzuladen. Dazu gehst du nun auf folgende Webseite: https://pcengines.github.io/

Danach wählst du die gewünschte BIOS-Version aus. In der Detailsektion kannst du nachlesen, was den so alles geändert hat. Bist du damit zufrieden, dann lädst du dir die Binary direkt auf den USB-Stick ins Hauptverzeichnis.

Flashen des aktuellsten BIOS Version

Der USB-Stick geht zurück in die APU und du startest das Firmwareupdate mit folgendem Befehl:

flashrom -w apu2_v4.11.0.5.rom -p internal

Pass bitte auf die Rechtschreibung acht. Bei etwaigen Schreibfehlern im Befehl oder du der Dateiname nicht korrekt eingetragen führt zu Fehlern.

Nachdem das Update abgeschlossen ist, trennst du den USB-Stick von der APU und machst sie stromlos. Anschliessend kannst du die APU wieder mit Strom versorgen und via Putty prüfen, ob die Version korrekt übernommen wurde und auch wieder korrekt startet.

Im Anschluss empfiehlt sich ein kompletter Funktionstest der wichtigsten Funktionen. Damit ist das BIOS Update erfolgreich abgeschlossen.

Leave a Reply

Your email address will not be published. Required fields are marked *