Neuer Artikel: BIOS mittels Flashrom programmieren

Diskussion rund um unser Wiki.
Benutzeravatar
cirrussc
Beiträge: 6567
Registriert: 26.04.2007 19:47:06
Lizenz eigener Beiträge: MIT Lizenz

Re: Neuer Artikel: BIOS mittels Flashrom programmieren

Beitrag von cirrussc » 08.11.2011 20:23:22

Mir fällt nun nichts weiter ein/auf. Deshalb als fertig/frei zum Review.
Wer mehr weiß, Verbesserungen erwünscht oder nur drüber schauen will, kann sich daran austoben :)
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl

schauinsland
Beiträge: 455
Registriert: 19.11.2007 11:17:40

Re: Neuer Artikel: BIOS mittels Flashrom programmieren

Beitrag von schauinsland » 18.12.2011 15:21:14

Hallo.

Auch von mir zunächst noch besten Dank für diesen wirklich hilfreichen Artikel. Vielleicht kurz noch der Hinweis, dass in der Warnung direkt über dem Inhaltsverzeichnis mit 9.4 statt 0.9.4 eine falsche Versionsnummer steht (kenne mich selber mit wikis noch nicht aus).

In der Hauptsache hätte ich aber eine Frage zu DMI:
Was das grundsätzlich ist, habe ich, denke ich, verstanden. Völlig unklar ist mir dagegen die Umsetzung des Konzeptes seitens dem BIOS.
Da gibt es ja diese MIF database genannten kleinen Datenbanken. Werden die selber irgendwo vom / im BIOS abgelegt und wenn ja, wo, auf Flash oder im CMOS?
Dann gibt es z. B. bei Gigabytes Q-Flash utility eine Anfrage, ob man DMI data erhalten will bzw. beim booten diese Meldungen "Verifying DMI pool data". Auch hier ist mir völlig unklar, was da passiert. Wird irgendwie eine bereits existierende Datenbank neu eingelesen und woanders abgespeichert, wenn ja, von wo nach wo? Oder wird irgendwie die Hardware selber noch einmal ausgelesen, wobei auch hier die Frage nach dem Speicherort bestünde?

Wäre schön, wenn Du mir hierzu ein paar Hinweise geben könntest.
Die Frage steht dabei für mich nicht im luftleeren Raum, sondern hat mit einer imho seltsamen Beobachtung zu den Prüfsummen bei flashrom zu tun. Ich glaube allerdings, dass mir dazu erst mal das mit DMI klarer sein sollte.

Gruß,

schauinsland

Benutzeravatar
cirrussc
Beiträge: 6567
Registriert: 26.04.2007 19:47:06
Lizenz eigener Beiträge: MIT Lizenz

Re: Neuer Artikel: BIOS mittels Flashrom programmieren

Beitrag von cirrussc » 20.12.2011 16:53:44

schauinsland hat geschrieben:Auch von mir zunächst noch besten Dank für diesen wirklich hilfreichen Artikel. Vielleicht kurz noch der Hinweis, dass in der Warnung direkt über dem Inhaltsverzeichnis mit 9.4 statt 0.9.4 eine falsche Versionsnummer steht (kenne mich selber mit wikis noch nicht aus).
Oft gelesen, aber nie aufgefallen, Danke!


Zu DMI und den MIF Tabellen weiß ich selbst nicht mehr.

In einem Kommentar zu dieser DMI Frage [1] gibt jemand als Antwort:
The DMI pool is the information kept by the Bios of your current hardware configuration. It's kept in the CMOS. It can sometimes be corrupted by a failing motherboard battery. But hardware changes can also occasionally get it messed up.
Da der CMOS aber flüchtig ist, und nach dessen Löschen der PC immer normal startet, muss der "DMI-pool" doch irgendwie aus dem persistenten BIOS Flash kommen/generiert/geladen-werden. In der englischen WP Seite zum BIOS [2] ist rechts ein DMI Block im Boot Block abgebildet, was auch immer man damit anfangen soll.
Ich habe die DMI 2.0 Spezifikation [3] nur sehr grob überflogen und dabei keine Informationen über die physikalischen Orte der DMI Daten finden können. Zur MIF steht unter 11.1.4:
Since the policy is stored in the MIF database, it is necessary to protect the database. The contents of the MIF
database are persistent across reboots and, therefore, the MIF database must be kept in some type of persistenstorage, typically a file.
Ob der verwirrenden DMI Details denke ich, dass die "DMI Daten" (ich nenne es einfach mal so) irgendwo im BIOS Image, entweder integriert oder als separater Block, hinterlegt sind und vielleicht beim Start in den Speicher (und/oder den CMOS?) geblendet, oder erst "generiert" werden.
In der dmidecode Manpage steht: "As you run it, dmidecode will try to locate the DMI table." In der Verbindung mit dem angegebenen /dev/mem würde es die Vermutung mit dem Speichereinblendung bestätigen.

Mit flashrom kann man sich eine Layout-Datei erstellen, in/aus der man Bereiche separiert behandeln kann (flashen, vergleichen...). Das wären die Optionen --layout und --image. Damit ließe sich wohl ein z.B. ein hypothetischer DMI Block getrennt behandeln, wie es wohl auch Gigabyt's Q-Flash handhaben kann?

Möglicherweise findet sich in den Kernel Quellen/Docs etwas dazu.

Wenn Du mal erleuchtendes heraus finden solltest, dann wäre es nicht uninteressant :)

[1] http://www.computing.net/answers/hardwa ... 43193.html
[2] http://en.wikipedia.org/wiki/BIOS#IBM_P ... BIOS_chips
[3] http://www.dmtf.org/sites/default/files ... SP0005.pdf
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl

Antworten