Kernel-Log – Was 3.3 bringt (4): Treiber

Der Nouveau-Treiber spricht ab Linux 3.3 neuere GeForce-Chips an; Intels GPU-Stromspartechnik RC6 soll jetzt endlich zuverlässig arbeiten. Der Poulsbo-Grafiktreiber und einige Hyper-V-Treiber verlassen den Staging-Zweig, in den neue Treiber für Android einzogen.

In Pocket speichern vorlesen Druckansicht 14 Kommentare lesen
Lesezeit: 35 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis

Der Intel-Grafiktreiber erhielt mit Linux 3.3 eine Anpassung, durch die der Kernel jetzt den tiefsten Schlafzustand der Intel-GPU-Stromspartechnik RC6 meidet. Dadurch soll diese Technik nun zuverlässig mit den Grafikkernen arbeiten, die in Intels Prozessoren der derzeit aktuellen Generation Sandy-Bridge stecken. RC6 spart laut Messungen der c't typischerweise 3 bis 5 Watt im Leerlauf; Anwender berichten teilweise von noch größeren Spareffekten. Bei sparsamen Notebooks kann solch eine Reduktion die Leerlauf-Leistungsaufnahme um 30 bis 40 Prozent senken und so die Akku-Laufzeit spürbar verlängern.

Doch auch bei Kernel 3.3 bleibt RC6 bei Sandy-Bridge-CPUs standardmäßig ausgeschaltet und muss über den Kernel-Parameter i915.i915_enable_rc6=1 manuell aktiviert werden; die Intel-Entwickler erwägen, die Technik bei Linux 3.4 standardmäßig einzuschalten. Indes haben die Kernel-Hacker die erst seit Linux 3.1 automatisch verwendete, aber längst nicht so effiziente Stromspartechnik Frame Buffer Compression (FBC) bei Linux 3.3 wieder standardmäßig lahmgelegt, da Probleme aufgetaucht sind.

Die Nouveau-DRM/KMS-Treiber für Grafikchips von Nvidia unterstützen ab Kernel 3.3 erstmals die Audio-Ausgabe via HDMI bei Grafikchips ab dem NVA3, der auch als GT215 bekannt ist (1, 2, 3, 4); solche Grafikkerne sitzen beispielsweise auf den GeForce-Modellen GT 240, 320 und 335M, den GTS-Modellen 250M, 260M, 350M und 360M sowie deren Nachfolgern. Der Nouveau-Treiber von Linux 3.3 steuert erstmals die GPU mit dem Codenamen NVD9 an, die unter anderem die GeForce-GT-Modelle 520, 520M, 520MX sowie die GeForce 410M verwenden. Zudem gab es eine Reihe von Änderungen, welche die nach wie vor rudimentäre Unterstützung für Stromspar- und Lüfter-Management im Nouveau-Treiber ein klein wenig verbessern. Der Nouveau-Treiber erhielt zudem einige Funktionen zur Unterstützung von Nvidias Grafikchip-Zuschalttechnik Optimus.

Mehr Infos

Entwicklungsstand

Bei der Freigabe der sechsten Vorabversion von Linux 3.3 erklärte Torvalds, dass diese möglicherweise die letzte Vorabversion sein könnte. Wahrscheinlich dürfte Linux 3.3 daher zum Anfang der nächsten Woche oder dem Beginn der Folgewoche erscheinen, sofern er und seine Mitstreiter nicht noch größere Probleme finden.

Der Radeon-DRM/KMS-Treiber für Grafikchips von AMD unterstützt nun HDMI-Audio-Ausgabe bei den Chips der Evergreen-Generation, die häufig, aber nicht immer auf GPUs der Radeon-HD-5000er-Serie sitzen. Die Informationen zur Ansteuerung der HDMI-Audio-Hardware wurden mit Hilfe von Reverse Engineering ermittelt; wie gut der so entstandene Code arbeitet, muss der Feldtest zeigen. Der neue "GPU virtual memory support" legt einige Grundlagen für einen Open-Source-Treiber für die "Southern Islands"-Grafikchips, die auf einigen Grafikkarten der kürzlich eingeführten Radeon-HD-7000-Serie im Einsatz sind; dieser Code soll langfristig zudem die CPU entlasten, wenn Command Streams an die GPU gesendet werden. Die mit 3.3 eingebauten Multiple Fence Queues für den Radeon-DRM/KMS-Treiber rüsten einige Funktionen nach, die unter anderem zur Nutzung der UVD genannten Video-Einheiten nötig ist.

Der neue "DMA aware ttm page pool code" vereinfacht das Virtual Memory Management im Radeon-DRM/KMS-Treiber und ermöglicht den Einsatz des von Radeon und Nouveau verwendeten GPU-Speicherverwaltungstechnik TTM (Translation Table maps) unter Xen. Einige weitere Änderungen an den Grafiktreibern finden sich bei den kleinen Perlen am Ende des Artikels und im Haupt-Git-Pull-Request von DRM-Subsystem-Betreuer Dave Airlie.

Der von Intel-Mitarbeiter und Kernel-Urgestein Alan Cox entwickelte DRM/KMS-Grafiktreiber für die Intels-Grafikkerne GMA500, GMA600 und GMA3600 zog in das DRM-Subsystem ein (u. a. 1, 2, 3, 4, 5); der Treiber war zuvor unter anderem Namen einige Monate im Staging-Bereich für verbesserungsbedürftigen Code. Auch der gereifte Treiber unterstützt allerdings nur die wichtigsten Funktionen der Grafikchips. Der GMA500 in Intels Embedded-Chip US15W ("Poulsbo") wurde auch in einigen Netbooks verbaut und hat dort einigen Linux-Anwendern in den letzten Jahren reichlich Kopfschmerzen bereitet: Die Treiber-Situation war lange recht verfahren, weil Intel die proprietären Treiber nicht direkt zum Download anbot und die im Umlauf befindlichen Treiber mit aktuellen Linux-Distributionen häufig nicht oder nicht gut funktionierten.

Die von Microsoft selbst vorangetriebenen Netzwerk-, HID- und Maus-Treiber für die eigene Virtualisierungsschnittstelle Hyper-V sind nach mehreren Jahren im Staging-Bereich nun so weit gereift, dass sie in die zuständigen Subsysteme umziehen konnten. Der Storage-Treiber hat den Sprung knapp verpasst; er soll den Staging-Bereich mit dem Kernel 3.4 verlassen, womit dann auch der letzte Hyper-V-Treiber das Staging-Siegel ablegt.