Abo
  • Services:
Anzeige
Der Raspberry Pi nutzt einen komplizierten mehrstufigen Startvorgang mit proprietären Blobs.
Der Raspberry Pi nutzt einen komplizierten mehrstufigen Startvorgang mit proprietären Blobs. (Bild: Martin Wolf/Golem.de)

Bootcode: Freie Firmware für Raspberry Pi startet Linux-Kernel

Der Raspberry Pi nutzt einen komplizierten mehrstufigen Startvorgang mit proprietären Blobs.
Der Raspberry Pi nutzt einen komplizierten mehrstufigen Startvorgang mit proprietären Blobs. (Bild: Martin Wolf/Golem.de)

Die freie Bootcode-Firmware für den Raspberry Pi kann erstmals dazu genutzt werden, den Linux-Kernel direkt zu starten. Von dieser Alternative zu der proprietären Firmware von Broadcom könnten künftig auch der freie Grafiktreiber und andere Kernel-Module profitieren.

Der Startvorgang auf den Minirechnern der Raspberry-Pi-Serie unterscheidet sich deutlich vom Bootprozess von zum Beispiel einer handelsüblichen Plattform mit Intel-Chip. So lädt zunächst ein fest in das SoC eingebrannter Code die eigentliche Firmware auf die Grafikeinheit des Chips, welche wiederum die Hardware initialisiert und dann weiteren Code nachlädt. Eine freie Alternative zu dieser proprietären Firmware von SoC-Hersteller Broadcom ist inzwischen so weit fortgeschritten, dass damit Linux gestartet werden kann.

Anzeige

Die Arbeiten an der freien Firmware geschehen hauptsächlich per Reverse Engineering und basieren zum Teil auch auf Header-Dateien, die Broadcom selbst unter einer freien Lizenz bereitstellt. Noch weist der Code allerdings einige Fehler auf, an denen das Entwicklerteam zurzeit arbeitet. Dazu gehört die Unterstützung für USB PHY, die zuverlässige Funktionsweise des eMMC-Treibers sowie die Reimplementierung der Treiber für die Energie- und Taktverwaltung des SoC.

Noch keine Grafikunterstützung

Mithilfe des verfügbaren Codes könne trotzdem ein minimales Kernel-Abbild verwendet werden, das für einen Betrieb ohne jede Grafikausgabe genutzt werden könne, meinen die Entwickler. Um eine Grafikausgabe umzusetzen, müsse das Team zusätzlich zu den zuletzt genannten Treibern noch die Unterstützung für einen direkten Speicherzugriff durch das Betriebssystem (DMA) sowie für die Videokomponenten erstellen. In dem proprietären Bootprozess wird Letzteres wiederum durch einen weiteren und vergleichsweise großen Binär-Blob umgesetzt.

Idealerweise ist das Team langfristig dazu in der Lage, so einen Startablauf für den Raspberry Pi zu implementieren, der ausschließlich freien Code nutzt. Vorteilhaft wäre das unter anderem für den freien Grafiktreiber, der von Eric Anholt im Auftrag von Broadcom erstellt wird. Schon zu Beginn seiner Arbeiten beurteilte Anholt diese Aufgabe als schwierig, da wichtige Teile der Grafikeinheit durch den Firmware-Blob gesteuert werden. Diese Schwierigkeit zeigte sich unter anderem bei der Treiberentwicklung für das offizielle Panel des Raspberry Pi im vergangenen Jahr. Anholt musste dazu um die proprietäre Firmware herum arbeiten, um das Panel standardkonform ansteuern zu können.

Der Code für die freie Firmware wird auf Github entwickelt. Dort finden sich auch Anleitungen zum Bauen und zu der Verwendung des Codes.


eye home zur Startseite
mingobongo 19. Jan 2017

Zumindest für den Raspberry Pi gibt es haufenweise Dokumentation sowohl auf elinux.org...

Lasse Bierstrom 18. Jan 2017

Es ist tatsächlich eher wie bei Adolfs Euthanasie. Schwache Elemente der Herde werden...



Anzeige

Stellenmarkt
  1. OPERATIONAL SERVICES GMBH & CO. KG, Berlin, Dresden, Frankfurt am Main, München
  2. Carl Büttner GmbH & Co. KG, Bremen
  3. über Hanseatisches Personalkontor Bremen, Stuttgart
  4. über Hanseatisches Personalkontor Bodensee, Rottweil-Neukirch


Anzeige
Blu-ray-Angebote
  1. 24,99€ (Vorbesteller-Preisgarantie)
  2. 49,99€ mit Vorbesteller-Preisgarantie
  3. Einzelne Folge für 2,99€ oder ganze Staffel für 19,99€ kaufen (Amazon Video)

Folgen Sie uns
       


  1. Netzneutralität

    Telekom darf Auflagen zu Stream On länger prüfen

  2. Spielebranche

    Kopf-an-Kopf-Rennen zwischen Pro und X erwartet

  3. Thunderobot ST-Plus im Praxistest

    Da gehe ich doch lieber wieder draußen spielen!

  4. Fahrdienst

    Alphabet investiert in Lyft

  5. Virtuelles Haustier

    Bandai kündigt "Classic Mini"-Version des Tamagotchi an

  6. News

    Facebook testet Abos für Nachrichten-Artikel

  7. Elon Musk

    Baut The Boring Company den Hyperloop?

  8. Mobilfunkausrüster

    Ericsson macht hohen Verlust

  9. Luminar

    Lightroom-Konkurrenz bringt sich in Stellung

  10. Kleinrechner

    Tim Cook verspricht Update für Mac Mini



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Indiegames-Rundschau: Fantastische Fantasy und das Echo der Doppelgänger
Indiegames-Rundschau
Fantastische Fantasy und das Echo der Doppelgänger
  1. Verlag IGN übernimmt Indiegames-Anbieter Humble Bundle
  2. Indiegames-Rundschau Cyberpunk, Knetmännchen und Kampfsportkünstler
  3. Indiegames-Rundschau Fantasysport, Burgbelagerungen und ein amorpher Blob

Xperia Touch im Test: Sonys coolem Android-Projektor fehlt das Killerfeature
Xperia Touch im Test
Sonys coolem Android-Projektor fehlt das Killerfeature
  1. Roboter Sony lässt Aibo als Alexa-Konkurrenten wieder auferstehen
  2. Sony Xperia XZ1 Compact im Test Alternativlos für Freunde kleiner Smartphones
  3. Sony Xperia XZ1 und XZ1 Compact sind erhältlich

Arktika 1 im Test: Monster-verseuchte Eiszeitschönheit
Arktika 1 im Test
Monster-verseuchte Eiszeitschönheit
  1. TPCast Oculus Rift erhält Funkmodul
  2. Oculus Go Alleine lauffähiges VR-Headset für 200 US-Dollar vorgestellt
  3. Virtual Reality Update bindet Steam-Rift in Oculus Home ein

  1. Re: Knight Rider 2000

    matzems | 14:52

  2. Re: Litium-Brände mit Wasser bekämpfen?!

    Thrawn67 | 14:51

  3. Re: Swarm Computing Status: x

    plutoniumsulfat | 14:51

  4. Unterarm?

    JPK | 14:48

  5. Alien Skin Exposure X3 fuer Linux unter Wine

    HibikiTaisuna | 14:48


  1. 14:37

  2. 12:50

  3. 12:22

  4. 11:46

  5. 11:01

  6. 10:28

  7. 10:06

  8. 09:43


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel