Kernel-Log – Was 2.6.31 bringt (2): Grafik, Audio und Video | heise online

Kernel-Log – Was 2.6.31 bringt (2): Grafik, Audio und Video

Linux 2.6.31 wird Kernel-Based Mode-Setting bei Radeon-Grafikchips unterstützen. Neu sind Treiber für X-Fi-Soundkarten und Intels "Next-Generation Graphics Device". Zahlreiche Verbesserungen gab es auch bei den Treibern für Webcams und TV-Hardware.

vorlesen Druckansicht 1 Kommentar lesen
Lesezeit: 16 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis

Trotz Hochsommer auf der Nordhalbkugel geht die Kernel-Entwicklung ohne Unterbrechung weiter. Die Entwicklung von Linux 2.6.31 ist mittlerweile bei der fünften Vorabversion angekommen. Bei ihr schlich sich noch der Webcam-Treiber gspca/sn9c20x ein, obowhl das Merge Window schon lange vorbei war. Er ist aber nur eine von vielen Neuerungen im Audio- und Video-Bereich von Linux 2.6.31.

Nachdem bei Linux 2.6.28 der Intel-spezifische GEM (Graphics Execution Manager) zum Kernel stieß und mit 2.6.29 die darauf aufbauende Unterstützung für Kernel-Based Mode-Setting (KMS) folgte, nahmen die Entwickler nun KMS-Code für Radeon-Grafikchips von AMD/ATI auf. Damit man die Vorteile von KMS – die zentrale Verwaltung der Grafik an einer Stelle, besser funktionierender Suspend und weniger komplexe Grafiktreiber – nutzen kann und der X-Server mit KMS arbeitet, müssen die Treiber für X.org, die Libdrm sowie Mesa3D aktualisiert werden. Das ist ein erheblicher Einrichtungs- und Abstimmungsaufwand, den man am besten dem Linux-Distributor seiner Wahl überlässt.

Der aufgenommene und maßgeblich von den Programmierern des X.org-Treibers "radeon" entwickelte KMS-Code unterstützt Radeon-GPUs bis hin zur R5XX-Serie – also alle Radeon-Modelle bis einschließlich der X1950. KMS-Unterstützung für die R6xx- und R7xx-GPUs der Radeon-HD-Serien 2000, 3000 und 4000 ist noch in Arbeit. Doch auch der für 2.6.31 integrierte Radeon-KMS-Code ist noch nicht ganz ausgereift; die Entwickler haben ihn daher vorerst als Staging-Treiber gekennzeichnet.

Zur Speicherverwaltung und Koordination des Zugriffs auf die Recheneinheiten dient dem Radeon-KMS-Code nicht GEM, sondern der ebenfalls neue TTM GPU Memory Manager. Ursprünglich hatte der Intel-KMS-Treiber diesen auch nutzen sollen, die Intel-Entwickler waren damit allerdings nicht ganz glücklich und starteten GEM als Alternative. Der TTM-Code wurde aber zwischenzeitlich überarbeitet und lässt sich auch über ein GEM-API nutzen.

Den Intel-KMS-Treiber erweiterten die Entwickler um Unterstützung für die Monitoransteuerung via DisplayPort (DP). Zahlreiche Korrekturen verbessern zudem den bisherigen KMS- und GEM-Code – der kürzlich freigegebene X.org-Treiber 2.8 solle daher am besten mit Linux 2.6.31 arbeiten.

Die Intel-Crew hat ferner KMS-Code und andere Patches zur Unterstützung einer als IGDNG bezeichneten Grafikchipreihe beigesteuert. Das Kürzel steht vermutlich für "Intel Graphics Device Next-Generation" und dürfte für die Grafikkerne der Anfang nächsten Jahres erwarteten Prozessoren stehen.

Informationen zu diesen und anderen Änderungen rund um die Grafikunterstützung des Kernels finden sich am Ende des Artikels sowie in einigen der Git-Pull-Request von Dave Airlie (1, 2, 3, 4).

Über die Alsa-Entwickler fand der für verschiedene Creative-Soundkarten der X-Fi-Serie geeignete und maßgeblich von Creative-Mitarbeitern entwickelte Treiber snd-ctxfi den Weg in den Kernel. Damit findet eine Treiber-Odyssee nun ein Ende, denn einige zumeist allenfalls halb-fertige Versionen verschiedener quelloffener oder proprietärer Treiber hatten in den vergangenen Jahren immer wieder eine unerfüllt gebliebene Hoffnung auf einen halbwegs ordentlichen Linux-Treiber für X-Fi-Sound-Chips aufkommen lassen. Ausgereift ist der jetzt in Kernel aufgenommene Treiber aber noch nicht; so fehlt etwa die Unterstützung für externe I/O-Module.

Neu dabei ist auch der Audio-Treiber lx6464es für verschiedene LX6464ES-Modelle von Digigram. Dazugestoßen ist ferner die Unterstützung für die ESI Maya44 und zahlreiche PCs und Notebooks – darunter das MacBook 5.1 (Aluminium). Wie mit jeder neuen Kernel-Version haben die Entwickler zudem die Whitelists für die automatische Anwendung Hardware-spezifischer Sonderbehandlungen ("Quirks") erheblich erweitert – die wichtigsten Commits aus diesen Bereichen finden sich in der Liste am Ende dieses Artikels. Einer der Verwalter des Audio-Subsystems hat die herausragendsten Neuerungen von 2.6.31 einer Mail zusammengefasst.

Im DVB/V4L-Subsystem gab es wie üblich hunderte Änderungen. Neu dabei ist der Treiber stv090x, der die unter anderem auf der TechnoTrend TT-budget S2-1600 verbauten DVB-S/S2/DSS-Chips von Intersil anspricht. Dazugestoßen ist auch der Treiber gspca-sn9c20x für die in Webcams verschiedener Hersteller eingesetzten USB-Chips sn9c201 und sn9c202. Verbesserte Unterstützung gibt es für einige Webcams der Logitech-Serie QuickCam Messenger; der Gspca-Treiber ov519 arbeitet nun auch mit den Chips ov511 und ov518 zusammen. Weitere Hintergründe zu den an Webcam- und TV-Treibern von Linux 2.6.31 vorgenommenen Änderungen liefern die Git-Pull-Request von Mauro Carvalho Chehab, dem Verwalter des V4L/DVB-Subsystems (1, 2, 3).

Die englischen Überschriften von zahlreichen weiteren nicht ganz so wichtigen, aber keineswegs unbedeutenden Änderungen finden sich in der folgenden Liste. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf den jeweiligen Commit im Webfrontend des Hauptentwicklungszweigs von Linux. Dort liefern der Commit-Kommentar und der Patch selbst zahlreiche weitere Informationen zu der jeweiligen Änderungen.

Mehr Infos

Kernel-Log – Was 2.6.31 bringt

Weitere Teile aus der Kernel-Log-Mini-Serie "Was 2.6.31 bringt", die wichtigsten Neuerungen der kommenden Kernel-Version zusammenfasst:

1. Netzwerk – Neue Treiber für LAN und WLAN

Der Artikel "Feintuning – Die Neuerungen von Linux 2.6.30" bietet eine Übersicht über die Neuerungen der derzeit aktuellen Kernel-Version der Hauptentwicklungslinie. Weitere Geschehnisse rund um den Linux-Kernel und andere Hardware-nahe Linux-Software finden Sie in den regulären Kernel-Logs Erwähnung.

Audio:

Audio - Asoc:

Graphics:

V4L/DVB:

Weitere Hintergründe und Informationen rund um Entwicklungen im Linux-Kernel und dessen Umfeld finden sich in vorangegangen Ausgaben des Kernel-Logs auf heise open. (thl/c't) (thl)