Für viele ARM-SoCs wie Nvidia Tegra stellen die Hersteller keine freien Treiber zur Verfügung.
Für viele ARM-SoCs wie Nvidia Tegra stellen die Hersteller keine freien Treiber zur Verfügung. (Bild: Nvidia)

Linux Freie ARM-GPU-Treiber auf holprigem Weg

In einem langen Interview erklären sich die Entwickler freier Linux-Treiber für GPUs auf ARM-SoCs. Neben Mali, Nvidias Tegra und dem Videocore von Broadcom wird auch über Adreno und Vivante GPUs gesprochen - die Entwicklung kommt nur langsam voran.

Anzeige

In seinem privaten Blog hat der Entwickler Emmanuel Deloget ein langes Interview veröffentlicht, das den Status freier Linux-Treiber für die verschiedenen Grafikchipsätze auf ARM-SoCs zusammenfasst. Die Interviewten, die teils als Student oder Schüler in ihrer Freizeit an den Treibern arbeiten, geben aber auch Auskunft über ihre Motivation.

Diese lässt sich wie so oft bei Treiberentwicklern als Interesse an den Funktionen der Hardware beschreiben, die durch Reverse Engineering herausgefunden werden können. Darüber hinaus ist es mit freien Treibern einfacher, etwa den Kernel zu aktualisieren oder andere Software als vorgesehen auf den Geräten laufen zu lassen, bei Tablets etwa eine Linux-Distribution statt Android.

Lima-Treiber

Das von ARM selbst entwickelte Design der Mali-400-GPU unterstützt OpenGLES 2.0 und wird wegen seiner Leistung von vielen Android-Entwicklern geschätzt. Der Chip ist Teil von Samsungs Exynos-4-SoCs, die etwa im Galaxy S3 oder für die Entwicklerplatinen Odroid verwendet werden. Als Teil des Allwinner A10 wird der Chip in weiteren Entwicklerplatinen sowie dem geplanten Open-Source-Tablet Vivaldi verwendet.

Der freie Lima-Treiber kann bereits dazu benutzt werden, komplexe OpenGL-Anwendungen wie Quake 3 darzustellen, und laut dem Entwickler Luc Verhaegen sogar mit einer besseren Leistung als es mit dem proprietären Treiber möglich ist. Verhaegen teilt sich die Arbeit mit dem erst 16-jährigen Connor Abbot, der an dem Vertex-Shader-Compiler arbeitet.

Die beiden Planen als Nächstes, die volle 3D-Unterstützung des Treibers in Mesa zu integrieren. Danach soll die Arbeit an den neueren Mail-T6xx-Chips folgen, die etwa in Samsungs Exynos-5-SoCs verwendet werden.

Videocore im Raspberry Pi

Wie viele andere auch stören sich die Entwickler des Videocore-Treibers daran, dass der im Raspberry Pi verwendete Broadcom-Chipsatz kein komplett freier Treiber ist. Vielmehr sind die von Broadcom veröffentlichten Codeteile nur Schnittstellen, Herman Hermitage meint sogar, der Firmware-Blob sei fast schon ein eigenes Betriebssystem.

Verglichen mit dem Lima-Treiber steht das Projekt aber noch am Anfang. Zwar sind die Entwickler bereits in der Lage, eigenen Code auf der GPU laufen zu lassen, einen Framebuffer bekommen sie jedoch noch nicht. Das Projekt ist gerade dabei, die Register der GPU zu dokumentieren.

Nvidia hilft bei Tegra-Treiber

Erst vor wenigen Wochen hat Thierry Reding einen ersten rudimentären Open-Source-Treiber mit 3D-Unterstützung für Nvidias Tegra-SoCs veröffentlicht. Dieser soll die Basis für einen funktionsfähigen Gallium3D-Treiber bilden.

Reding betont, dass Nvidia nach wie vor keinerlei Informationen zu der 3D-Engine preisgibt und lobt gleichzeitig die Hilfe und Mitarbeit Nvidias. Das Unternehmen hat mit dem Host1x-Treiber sogar Kernel-Code beigesteuert, was Reding in seiner Arbeit unterstützt. Der Code Redings ist via Github verfügbar.

Adreno und Vivante

Die in Qualcomms Snapdragon-SoC verbaute Grafikeinheit Adreno wird von Rob Clark im Freedreno-Projekt betreut. Der Chipsatz basiert in einigen Teilen auf AMD-Technik, was Clark die Arbeit etwas vereinfachte, da er die Dokumentation der R300 und R600 verwenden konnte. Der Treiber für den A220-Chip ist bereits in Mesa verfügbar und kann somit für 3D-Anwendungen benutzt werden. Wie auch Verhaegen benutzte Clark Quake 3 als Demonstrationsobjekt seines Treibers.

Bis auf die geringe Hilfeleistung von Nvidia halten sich die meisten Hersteller über die Funktionsweise ihrer Grafikchips sehr bedeckt und unterstützten die Interessen an freien Treibern nicht. Das Unternehmen Vivante hingegen hat den Kernel-Teil des Treibercodes veröffentlicht. Darauf aufbauend arbeitet eine kleine Community nun an den Userspace-Teilen.

Wladimir van der Laan zufolge läuft der Gallium-Treiber auf seinem Tablet mit einem Rockchip RK2918 einigermaßen. Gleiches gilt für die GC880-GPU, die etwa in Freescales i.MX6-Serie verwendet wird. Das Team plant, seinen Code in Mesa zu integrieren und dann am GC2000-Chip zu arbeiten, der auch von Freescale verwendet wird.

Oft ist es Hardwareherstellern aus rechtlichen Gründen nicht erlaubt, sich aktiv an der Erstellung freier Treiber zu beteiligen, da die Unternehmen Funktionen von anderen lizenzieren. Die Haltung Nvidias gegenüber den Linux-Entwicklern kritisierte Linus Torvalds im vergangenen Sommer dennoch sehr eindeutig.


RS_ 27. Apr 2013

Ich habe mal den Link herausgesucht: http://youtu.be/W-HCb55X_XU?t=34m53s Der PowerVR...

OliverHaag 27. Apr 2013

Heißt ihr beiden Helden könnt mir nen ordentlich laufenden X.org Treiber für nen Vivante...

RS_ 26. Apr 2013

Als leidenschaftlicher Embedded-Bastler finde ich es nämlich trauig, dass einzelne wenige...

Kommentieren



Anzeige

  1. Softwareentwickler Automotive Steuergerätetest (m/w)
    MBtech Group GmbH & Co. KGaA, Sindelfingen bei Stuttgart
  2. Professur E-Business und Managementinformationssysteme
    Technische Hochschule Ingolstadt, Ingolstadt
  3. Anwendungs- / Softwareberater/in Unternehmenssteuerung
    Robert Bosch GmbH, Stuttgart-Feuerbach
  4. Senior Business Analyst (m/w) Business Intelligence
    Unitymedia KabelBW GmbH, Köln

 

Detailsuche


Top-Angebote
  1. TIPP: 3 Blu-rays für 20 EUR
    (u. a. World War Z, Gesetz der Rache, Star Trek, True Grit, Parker)
  2. TIPP: Oster-Schnäppchen auf Blu-ray
    (u. a. Edge of Tomorrow 7,97€, Godzilla 7,97€, Casino 5,99€, Ghostbusters 1+2 für 9,97€)
  3. TIPP: Blu-ray-Boxsets zum Aktionspreis
    (u. a. Transformers Trilogie 13,97€, Der Pate 28,97€, Star Trek Collection 59,97€, Die nackte...

 

Weitere Angebote


Folgen Sie uns
       


  1. Zahlungsabwickler

    Paypal erstattet Rücksendekosten

  2. Daniel Stenberg

    HTTP/2 verbreitet sich schnell

  3. Asus ROG GR8 im Test

    Andere können's besser

  4. Nationales Roaming

    Telefónica legt heute 3G-Netze von O2 und E-Plus zusammen

  5. Tracking

    Klage gegen Googles Safari-Cookies hat Erfolg

  6. Orbit

    Bioware veröffentlicht quelloffenes Online-Framework

  7. Suchranking

    Googles neue Suchformel kann den Markt verändern

  8. Streaming

    Amazon-Streik auf Prime Instant Video ausgeweitet

  9. Netzwerk und Smartphone

    Huawei verdient 4,5 Milliarden US-Dollar

  10. Home Services

    Amazon vermittelt Handwerker



Haben wir etwas übersehen?

E-Mail an news@golem.de



Galaxy S6 im Test: Lebe wohl, Kunststoff!
Galaxy S6 im Test
Lebe wohl, Kunststoff!
  1. Galaxy S6 Active Samsungs wasserdichtes Topsmartphone
  2. Galaxy S6 und S6 Edge Samsung meldet 20 Millionen Vorbestellungen
  3. Galaxy S6 und S6 Edge im Hands on Rund, schnell, teuer

Banana Pi M2 angesehen: Noch kein Raspberry-Pi-Killer
Banana Pi M2 angesehen
Noch kein Raspberry-Pi-Killer
  1. Die Woche im Video Galaxy S6 gegen One (M9), selbstbremsende Autos und Bastelei
  2. MIPS Creator CI20 angetestet Die Platine zum Pausemachen
  3. Raspberry Pi 2 ausprobiert Schnell rechnen, langsam speichern

HTC One (M9) im Test: Endlich eine gute Kamera
HTC One (M9) im Test
Endlich eine gute Kamera
  1. Lollipop Erstes HTC-One-Smartphone erhält kein Android 5.1

  1. Re: Langsam wirds interessant

    pod4711 | 13:16

  2. Re: Blender nicht Empfehlendswert

    ap (Golem.de) | 13:16

  3. Re: Taugt nichts ohne SteamOS

    Fenster | 13:15

  4. Bei mir (blau.de) geht es noch nicht

    HabeHandy | 13:15

  5. Kein Anschluss unter diesem Netz

    Gontah | 13:14


  1. 13:05

  2. 12:57

  3. 12:01

  4. 11:01

  5. 10:49

  6. 09:54

  7. 09:30

  8. 09:05


  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