Raspberry Pi: Grafiktreiber wird Open Source

Broadcom hat große Teile des Grafiktreibers für seinen SoC BCM2835 unter eine BSD-Lizenz gestellt und den Quellcode freigegeben. Der SoC kommt auf dem Raspberry Pi zum Einsatz. Lediglich ein kleiner Teil existiert noch als Firmware, die beim Systemstart geladen werden muss.
Entwickler können die freigegebenen Schnittstellen nutzen, um ihre Software für das Raspberry Pi anzupassen. Projekte wie Wayland können beispielsweise ihren EGL-Client auf den kleinen Rechner abstimmen. Außerdem können X.org-Entwickler ebenfalls ihre GLES-Schnittstelle optimieren.
Treiber soll in den Linux-Kernel
Zudem würden die Raspeberry-Pi-Entwickler den Treiber Vchiq im Linux-Kernel sehen wollen, schreibt der Entwickler Alex Bradbury in einem Blogeintrag auf der Raspberry-Pi-Webseite(öffnet im neuen Fenster) . Dazu müsse der Quellcode noch angepasst und aufgeräumt werden. Bradbury hofft dabei auf Hilfe aus der Community.
Die als Quellcode beiliegenden Bibliotheken(öffnet im neuen Fenster) stellen unter anderem Schnittstellen für EGL, GLESv2, OpenVG, WFC oder OpenMAX IL bereit, das beispielsweise in Symbian OS zum Einsatz kommt. Mit der Offenlegung der Schnittstellen sollen demnach auch weitere Betriebssysteme für das Raspberry Pi angepasst werden können, etwa FreeBSD, NetBSD, Haiku oder Plan9.
Für andere ein Vorbild
Bradbury hofft, dass andere Hersteller von ARM-SoCs dem Beispiel Broadcoms folgen und den Quellcode ihrer Treiber veröffentlichen werden. Broadcom habe damit einen entscheidenden Beitrag dazu geleistet, Linux auf Embedded-Systemen zu etablieren.
Tatsächlich hat keiner der großen SoC-Hersteller seine Treiber freigegeben. Nvidia plant zumindest , seine Dokumentation für die 2D-Funktionen ihres Grafikchips im Tegra 3 öffentlich zu machen. Das Lima-Projekt(öffnet im neuen Fenster) arbeitet per Reverse Engineering an einem freien Treiber für Mali-GPUs, während das Freedreno-Projekt(öffnet im neuen Fenster) auf gleiche Weise einen freien Treiber für die GPU in Qualcomms Snapdragon SoCs entwickelt.