Kernel-Log – Was 2.6.37 bringt (5): Treiber

Unterstützung für flotte USB-3.0-Datenträger mit USB Attached SCSI Protocol (UASP), ein Audio-Loopback-Treiber und Erweiterungen zum Umgang mit dem Magic Trackpad von Apple sind nur einige der Neuerungen, welche die Hardware-Unterstützung bei der im Januar erwarteten Version 2.6.37 des Linux-Kernels verbessern.

In Pocket speichern vorlesen Druckansicht 9 Kommentare lesen
Lesezeit: 60 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis
Am Mittwoch vor Weihnachten hat Linus Torvalds die siebte Vorabversion von Linux 2.6.37 veröffentlicht. Dabei erwähnte er einige etwas größere Änderungen, die ihn teilweise etwas beunruhigen. Es ist daher recht wahrscheinlich, das zwischen Weihnachten und Neujahr oder kurz nach Silvester noch mindestens eine achte Vorabversion erscheint, bevor Linux 2.6.37 freigeben wird.

Das Kernel-Log schließt derweil die Mini-Serie "Was 2.6.37 bringt" mit einer Beschreibung verschiedener Treiber und der sie umgebenden Kernel-Infrastruktur ab. Bereits im ersten Teil der Serie waren Treiber für Grafik-Hardware das Thema; im dritten kamen die für Netzwerk- und Storage-Hardware zur Sprache. Der zweite war Dateisystemen gewidmet, der vierte den Änderungen rund um den Architektur- und Infrastruktur-Code des Kernels.

Neu zum Kernel stieß der "uas" genannte Treiber für das USB Attached SCSI Protocol (UASP), das flotten Datenaustausch mit USB-3.0-Datenträgern ermöglicht, welche diese Technik beherrschen. Wenig später präsentierte Luben Tuikov den alternativen, vermeintlich besseren Treiber uasp und schlug vor, doch diesen in den Kernel zu integrieren und uas rauszuwerfen. Daraus wurde allerdings nichts, da er nicht sonderlich geschickt vorging und einige der dokumentierten und undokumentierte Arbeitsweisen der Kernel-Entwickler missachtete; weitere Hintergründe dazu finden sich etwas verstreut in den Archiven der LKML.

Der XHCI-Treiber für USB-3.0-Controller bietet nun Unterstützung für Power-Management (1, 2, 3, 4); dadurch gelingt nun auch Suspend- und Resume, ohne dass man den Treiber vorübergehend entladen muss.

Wie geplant haben die Kernel-Entwickler den älteren der beiden FireWire-Stacks und die darauf aufbauenden Treiber entfernt, da der neuere Stack und dessen Treiber mehr Features bieten, flotter arbeiten und sicherer sind, wie es im Commit-Kommentar heißt. Dort werden auch noch einige der kleineren, zumeist nur unter sehr speziellen Umständen auftretenden Probleme des neuen Stacks beschrieben, der bei Version 2.6.22 zum Kernel gestoßen war.

Mauro Carvalho Chehab erwähnt im Haupt-Git-Pull-Request des Media/V4L/DVB-Subsystems, dass es viele Korrekturen, Aufräumarbeiten und Verbesserungen in diesem von ihm betreuten Bereich des Kernels gegeben habe. In letzte Kategorie fällt etwa die Erweiterung den Treibers cx231xx um Unterstützung für die Carraera, Shelby, RDx_253S und VIDEO_GRABBER genannte TV-Hardware. Einige neuere Treiber und größere Verbesserungen gab es auch rund um die noch junge Unterstützung für IR-Fernbedienungen und die zugehörigen Empfänger.

Laut Chehab seien zudem nahezu alle der verbliebenen V4L1-Treiber nun auf V4L2 portiert worden. Einige der verbliebenen V4L1-Treiber wurden als "Deprecated" eingestuft und in den Staging-Zweig verschoben, weil die Entwickler nach einer Portierung auf die neueren Schnittstellen keine Möglichkeiten zum Testen hätten und solch eine Portierung auch aufwendig sei; dazu zählen etwa die Treiber cpia und stradis, die bei 2.6.38 entfernt werden sollen.

Eine gute Zusammenfassung der Änderungen an den Alsa-Sound-Treibern des Kernels liefert deren Betreuer Takashi Iwai in seinem Haupt-Git-Pull-Request. Er erwähnt unter anderem den neuen Treiber snd-aloop. Mit ihm lassen sich "PCM Loopback Devices" aufsetzen, welche die zur Ausgabe empfangenen Daten über ein anderes Device wieder zurück an den Userspace sendet, was etwa für Synchonisations-Zwecke interessant sein kann. Die verschiedenen HDMI-Treiber für Hardware von AMD/ATI, Intel und Nvidia haben die Kernel-Hacker im Treiber snd-hda-codec-hdmi zusammengelegt.

Neben den bereits im dritten Teil der Mini-Serie "Was 2.6.37 bringt" genannten Änderungen an Staging-WLAN-Treibern gab es noch einige weitere im Bereich für Treiber, die den Qualitätsansprüchen ihrer Entwickler oder der Kernel-Hacker nicht genügt. Neben dem bereits erwähnten WLAN-Treibern brcm80211 und r8712u für Hardware von Braodcom respektive Realtek stieß auch der Treiber ath6kl für den auf Mobile- und Embedded-Einsatzgebiete abgestimmten Atheros-Chip AR6003 zum Staging-Bereich. Dort landete auch der Treiber bcm_wimax für einen von Sprint vertrieben Wimax Dongle mit Beeceem-Chip.

Die Treiber ti-st_blank (1, 2) und mrst-touchscreen sind im Staging-Bereich so weit gereift, dass sie das Unreif-Siegel ablegen konnten und von den Entwickler an die richtige Stelle des Kernel-Codes verschoben wurden. In den Staging-Zweig verschoben wurden autofs3 und smbfs, weil sich niemand mehr um diese kümmert; beide sollen vermutlich bald rausfliegen, wenn sich nicht noch jemand des Codes annimmt.

Ohne direkten Erfolg war die Staging-Integration des Codes für das HTC Dream, denn der wurde nun entfernt, weil sich niemand um die Weiterentwicklung dieser Code-Variante gekümmert hat; an einer andere Code-Variante wird aber weiter gearbeitet. Einen Überblick über weitere Änderungen im Staging-Bereich gibt der Haupt-Git-Pull-Request von Staging-Maintainer Greg Kroah-Hartman.