Die Neuerungen von Linux 2.6.34

Seite 4: Linux 2.6.34: Treiber

Inhaltsverzeichnis

Die Sound-Treiber des Kernels sind nun auf dem Stand der Alsa-Treiber-Version 1.0.22.1 und bringen ersten Treiber-Code für die Version 2.0 der USB-Audio-Spezifikation mit; neu ist auch Unterstützung für die von Asus vertriebene Soundkarte Xonar DS.

Zum Input-Subsystem stießen Treiber für Touchscreen-Interfaces verschiedener Hersteller. Neu dabei sind außerdem Treiber für die Magic Mouse von Apple und das Logitech Flight System G940.

Herstellerspezifische Notebook-Treiber werden in Zukunft von Matthew Garrett im Rahmen des Subsystems "x86 platform drivers" betreut. In das zog ein einfacher, bislang nur die Displayhelligkeit regelnde Treiber eeepc-wmi ein, der mit neueren EeePCs von Asus zusammenarbeitetet, die WMI für die Funktionstasten nutzen. Darüber hinaus gab es zahlreiche Detailverbesserungen an den bislang vom ACPI-Maintainer verwalteten Treibern für Notebooks von Asus, Dell, Lenovo/IBM, MSI und Toshiba.

Der xHCI-Treiber für USB-3.0-Controller-Chips heißt statt xhci nun xhci_hcd und folgt damit dem Namensschema anderer Treiber für USB Host Controller. Durch eine von Torvalds selbst umgesetzte Änderung wartet der USB-Storage-Treiber in Zukunft statt fünf nur mehr eine Sekunde, bevor er ein neu angestecktes USB-Speichergerät anspricht. Verschiedene Distributionen haben die Wartezeit schon länger reduziert oder komplett ausgesetzt.

Mehr Infos

Was sich an den Treibern für Ihr System geändert hat

Über das Git-Web-Frontend auf Kernel.org lassen sich Informationen zu Änderungen an einzelnen Dateien des Linux-Kernels aufrufen – das können Sie nutzen, um herauszufinden, ob es Neuerungen an den auf Ihrem System eingesetzten Treibern gab. Dazu muss man allerdings wissen, wo sich die Treiberdateien im Quellcodebaum des Linux-Kernels finden. Bei den modularisierten Kerneln der Distributionen helfen häufig die Ausgaben des Programms modinfo bei der Suche, das man mit den von lsmod ausgegebenen Namen der geladenen Module aufruft:

$ /sbin/modinfo e100 e1000 | grep filename:
filename: /lib/modules/[...]/kernel/drivers/net/e100.ko
filename: /lib/modules/[...]/kernel/drivers/net/e1000/e1000.ko

Liegt ein kompiliertes Modul etwa in [...]/kernel/drivers/net/e100.ko, dann findet sich dessen Quellcode im Linux-Quellcodearchiv normalerweise im Verzeichnis drivers/net/ in Dateien mit ähnlichem Namen – etwa e100.c im Falle des Treibers e100 für 100-MBit-Netzwerkhardware von Intel. Andere Module wie der für Intels PCI-Gigabit-LAN-Chips zuständige Treiber e1000 haben hingegen ein eigenes Verzeichnis unterhalb von drivers/net/.

Kennt man die ungefähre Position des Treiber-Quellcodes, navigiert man im Git-Webinterface der Linux-Quellen über die Tree-Ansicht zu den jeweiligen Quellcode-Dateien und ruft über den Link "History" eine Übersicht über die jüngsten Änderungen an den zugehörigen Dateien oder dem ganzen Verzeichnis auf. Im Verzeichnis für die Netzwerktreiber lassen sich so beispielsweise die Änderungen am Treibercode von e100 (drivers/net/e100.c) und e1000 (drivers/net/e1000/) anzeigen und begutachten.

Es ist nicht klar, ob überhaupt noch Geräte im Umlauf sind, die eine solche Wartezeit benötigen; möglicherweise ist sie nur historisch bedingt. Die Änderung soll helfen, diese Frage zu klären: Torvalds kommentiert das Ganze mit den Worten "Mal sehen, ob irgendwer aufschreit" ("Let's see if anybody screams").

Zum Staging-Zweig stieß der Treiber crystalhd für den HD-Video-Beschleuniger Broadcom Crystal HD. Größere Verbesserungen – darunter eine, die die Performance verbessert – gab es am ebenfalls im Staging-Bereich angesiedelten DisplayLink-Treiber udlfb (1, 2, 3). Durch einige Änderungen am Treiber rtl8192e sollen die von ihm unterstützten Realtek-Chips im Betrieb nun erheblich weniger Leistung aufnehmen.