Linux 5.5: HDCP-Support bei AMD und Treiberverbesserungen zum Stromsparen Update

Linux Kernel 5.5

Trends & News | Kernel-Log

Der neue Kernel bringt Treiber für neue Grafik und Netzwerkchips von AMD, Intel, oder Realtek. Neu auch: Support für Gaming-Keyboards von Logitech.

Das am letzten Januarmontag oder ersten Februarmontag erwartete Linux 5.5 bringt wieder einen riesigen Haufen neuer und überarbeiteter Treiber, die den Hardware-Support signifikant verbessern. Durch die Umbauten wird jetzt etwa die neue Radeon RX 5600 unterstützt. Bei einen Sunxi-SoC, der auf so manchem Einplatinencomputer sitzt, lässt sich jetzt der H.265-Decoder verwenden. Ein Realtek-WLAN-Treiber liefert jetzt bessere Performance. Außerdem gab es gleich bei mehreren Treibern kleinere Änderungen, die bei Notebooks auf etwas längere Akkulaufzeiten hoffen lassen. Die folgenden Absätze liefern Details zu diesen und weiteren Treiberneuerungen von Linux 5.5:

Durch Detailverbesserungen am Treiber Amdgpu läuft die am 21. Januar vorgestellte Radeon RX 5600 mit Linux 5.5. Damit das klappt, muss man das System aber zugleich auch mit aktuellen Firmware-Dateien versorgen.

Der für moderne Radeon-Grafikchips zuständige Treiber kann außerdem jetzt die Datenübertragung zum Monitor per HDCP verschlüsseln (1, 2); das gelingt mit GPUs seit der Raven-Ridge-Generation, die etwa in Ryzen-2000G-CPUs steckten Das Ganze ist vorwiegend für Linux-basierte Betriebssysteme wie ChromeOS gedacht, die hochauflösende Videos von Netflix, Amazon & Co. wiedergeben sollen. Diese Systeme hatten daher entsprechende Kernel-Patches teilweise schon integriert und weitere Vorkehrungen getroffen, um HDCP umfassend zu unterstützen. Sie schützen sich oft auch mit UEFI Secure Boot und ähnlichen Techniken vor Modifikationen, damit findige Bastler kopiergeschützte Videodaten nicht schon vor der Übertragung an den Monitor abgreifen.

Geringe Leistungsaufnahme und längere Akkulaufzeit verspricht Unterstützung für PSR (Panel Self-Refresh) im Amdgpu-Treiber, denn durch die Technik kann sich der Grafikchip teilweise schlafen legen, solange sich am dargestellten Bildschirminhalt nichts ändert. Eine geringe Leistungsaufnahme ist auch das Ziel der jetzt unterstützten AMD-Techniken "Dynamic VCN Powergating" bei Raven- und Raven2-Chips sowie BACO (Bus Active, Chip Off) bei den älteren GPUs der Generationen Sea Islands, Tonga, Fiji und Polaris.

Intels Entwickler haben Änderungen beigesteuert, damit ihr Grafiktreiber auch Systeme unterstützt, in denen neben einer Intel-CPU mit integriertem Grafikprozessor ein bei Bedarf zuschaltbarer Grafikprozessor des Herstellers steckt. Derlei gab es bislang nicht, wird aber durch Intels Einstieg in den Markt für dedizierte Grafikchips bald möglich.

Linux lernt langsam Unterstützung für Intels bald erwartete Grafikkarten. (Bild: c't / Florian Müssig)

Auch an anderen Stellen haben die Entwickler den Support für den "Gen12" genannten Grafikkern verbessert, denn dieser steckt auch in den GPUs von Desktop- und Notebook-Prozessoren der "Tiger Lake"-Reihe, die Intel wohl in der zweiten Jahreshälfte als Nachfolger für Ice Lake einführen will. Intels Mitarbeiter haben ferner Unterstützung für den SoC (System on Chip) "Jasper Lake" nachgerüstet. Wie gewohnt ist der Treiber-Support für diese noch nicht erhältlichen Chips noch unfertig und muss explizit aktiviert werden. Nicht nur beim Konfigurieren des Kernels via DRM_I915_FORCE_PROBE, sondern auch im Betrieb – etwa, indem man beim Booten den Parameter i915.force_probe=* angibt. Diese Tricks reichen den Entwicklern aber noch nicht, daher haben sie jetzt eine weitere Hürde eingeführt, um den vorerst nur für Entwickler gedachten Treibercode noch besser von Anwendern fernzuhalten.

VMware-Entwickler haben eine Infrastruktur für "Coherent Memory Support" beigesteuert. Diese Technik zu koordinierten Speicherzugriffen kann Performance kosten, ist aber zur korrekten Implementation von OpenGL- und Vulkan-Grafiktreibern in virtuellen Maschinen (VMs) nötig, die per Paravirtualisierung mit dem Wirt interagieren.

Der MSM-Treiber für Qualcomm-GPUs unterstützt jetzt auch den Adreno 510, der in einigen Snapdragon-SoCs sitzt. Zur besserer Unterstützung der Prozessoren dieser Serie stieß zudem ein Treiber Ocmem dazu, der dem Grafiktreiber Arbeitsspeicher bereitstellen kann.

Weitere Neuerungen rund um die Grafiktreiber von Linux umreißt der wichtigste Git-Pull-Request des Direct Rendering Managers (DRM) und seiner Treiber.

Der Video-Beschleunigungstreiber Cedrus kann jetzt auch HEVC/H.265 über die Hardware dekodieren. Dieser maßgeblich über eine viel beachtete Crowdfunding-Kampagne finanzierte Treiber spricht die Cedar genannte Video Processing Unit (VPU) einiger Allwinner-Prozessoren der Sunxi-Reihe an, die sich auf einer Reihe von populären Einplatinencomputern finden. Allerdings kam nicht genug Geld zusammen, damit die Programmierer auch für Support von H.264-Encoding sorgen. Ungewiss ist, ob der Treiber diese und einige andere noch fehlende Features je lernt, denn die zuständigen Entwickler wenden sich jetzt anderen Projekten zu.

Die Sondertasten der Logitech-Gaming-Tastaturen G15 und G510 funktionieren jetzt (1, 2); wie man diese ausreizt, erläutert der zuständige Entwickler in seinem Blog. Außerdem unterstützt Linux jetzt Touchpads besser, die die Spezifikationen für "Windows Precision Touchpads" einhalten.

Neu dabei ist auch Support für die Netzwerkfunktion, die Intels Tiger-Lake-Prozessoren bieten sollen. Ferner spricht Linux nun auch Realteks Gigabit-Ethernet-Chip RTL8117 an, der auf einigen Mainboards für die neuesten Desktop-CPUs von AMD und Intel sitzt. Einige Anpassungen am WLAN-Treiber für den Reaktek RTL8723BU versprechen dessen Sendegeschwindigket deutlich zu steigern – der Treiber kommt aber dennoch fürs Erste nicht an die TX-Performance heran, die ein anderer, von Realtek selbst gepflegter Treiber erzielt.

Der neue Kernel hat bereits viele Änderungen zur Handhabung von USB4 erhalten (u. a. 1, 2, 3, 4, 5, 6, 7, 8, 9). Der Rest zur Unterstützung des aus Thunderbolt 3 hervorgegangenen Verbindungsstandards soll bei Linux 5.6 folgen. Apropos Thunderbolt 3: Der Software Connection Manager unterstützt die Technik jetzt. Das ist derzeit vor allem für Apple-Systeme wichtig, denn da kann sich die Firmware nicht um das Verbindungsmanagement kümmern, wie das bei PCs typischerweise der Fall ist.

Einige Umbauten an Audio- und USB-Treibern versprechen die Leistungsaufnahme einiger moderner Notebooks ein klein wenig zu senken und so die Akkulaufzeit zu verlängern. Zu diesen Änderungen zählen etwa einige Patches rund um die HDMI-Audio-Codecs-Treiber für AMD-Prozessoren (1, 2, 3, 4). Systeme mit Intels aktuellen Prozessoren profitieren durch einen Anpassung beim XHCI-Treiber .

Die Audio-Treiber für GeForce-Chips beherrschen die Audio-Übertragung per DisplayPort nun auch, wenn der Datenaustausch mit MST (Multi Stream Transport) erfolgt (1, 2, 3). Über einen neuen Mechanismus können Distributionen jetzt besser festlegen, welcher Audio-Treiber standardmäßig für Intel-Chips genutzt wird, für die es mehrere Treiber gibt. Das ist auch aus Stromsparaspekte wichtig, denn einige Treiber arbeiten effizienter. Die Treiber der Google Embedded Controller und die Audio-Funktion einiger System-on-a-Chip-Prozessoren beherrschen jetzt Wake on Voice (WoV), mit dem sich einige der neueren Chromebooks über Sprachkommandos wie "Ok Google" aufwecken und steuern lassen (u. a. 1, 2, 3).

Linux 5.5 unterstützt jetzt auch die Firmware-TPM-Lösung der Zen+-CPUs von AMD. Diese und andere Optimierungen und Erweiterungen beim Hardware-Support, die dieser Text erwähnt, sind indes nur die Spitze des Eisbergs: Allein durch neue und verbesserte Treiber unterstützt Linux 5.5 über 350 Geräte oder Geräteklassen mehr als sein Vorgänger; bei rund 40 davon handelt es sich um PCI/PCIe-Geräte, wie die Datenbanken der Linux Kernel Driver DataBase (LKDDb) zeigen.

Weitere Änderungen in diesem Bereich nennen die Kommentare der wichtigsten Git-Merges aus den Bereichen Character Devices, Drivers Core, HMM, HID, Input (1, 2), RDMA, Hardware Monitoring, Media, MFD, MMC, Platform, Sound, Staging, Thunderbolt, Thermal, TPMd, USB.

Wo der Linux-Kernel überall wichtig ist und involviert ist, zeigt indes ein simpler Patch im Input-Subsystem, der einen in der Spezifikation für Human Interface Decives (HID) festgelegten Tastencode für einen "Electronic Privacy Screen" Kernel-seitig definiert. Dieser Oberbegriff meint aktive Techniken, die den Bildschirminhalt vor neugierigen Blicken von der Seite schützen sollen. In diese Klasse fällt beispielsweise die seit Linux 5.4 unterstützte PrivacyGuard-Funktion einiger aktueller Thinkpads von Lenovo; HP verbaut in einigen seiner Notebooks eine ähnliche Technik namens SureView.

Durch die Definition des Tastencodes im Kernel können Desktop-Umgebungen nun zuverlässig und Hersteller-übergreifend erkennen, wenn der Anwender die Funktionstaste zum Ein- und Ausschalten der Privacy-Funktion betätigt, und können eine entsprechende Reaktion auslösen. Dadurch müssen Desktop-Umgebungen auch nur diesen einen Keycode lernen, denn falls die Funktionstaste eines Notebooks einen anderen Keycode sendet, kann der Tastaturtreiber das abfangen und stattdessen den jetzt definierten Tastencode an den Desktop schicken.

Die Kernel-Entwickler haben außerdem wieder Dutzende Patches integriert, um bekannte Eigenarten oder Marotten (Quirks) von Hardware so abzufangen, dass Anwender nichts davon mitbekommen und alles wie vorgesehen funktioniert. Eine dieser Anpassungen sollte etwa die Sound-Qualität des Lenovo Carbon X1 der sieben Generation verbessern, wo der Bass-Kanal nicht richtig konfiguriert wurde. Mit dem gab es auch beim Acer 8951G ein Problem, das behoben wurde. Auch die Stumm-LED des HP ProBook 645 G4, der Headset-Anschluss von Xiaomi-Laptops oder die integrierten Lautsprecher des Asus UX431FLC sollten jetzt wie vorgesehen funktionieren. Das waren nur Beispiele aus dem Audio-Bereich, aber es gibt auch Patches, die Marotten von Tastaturen, Ein-/Austastern, PCI-Controllern, Netzwerkchips, USB-Controllern und andere Hardware abfangen. Insgesamt hat Linux 5.5 mehrere Dutzend solcher Sonderbehandlungen gelernt (siehe zur Problematik auch den frei abrufbaren c't-Artikel "Kompatibilitätsprobleme beseitigen und Linux besser machen").

Schrittweise aktualisierter Text zu Linux 5.5

Die Neuerungen des in der Nacht auf den 27. Januar oder 3. Februar erwarteten Linux 5.5 sind seit dem 9. Dezember absehbar, denn da hat Linus Torvalds die erste Vorabversion dieses Kernels freigegeben. Wie üblich bringt sie alle wesentlichen Änderungen schon mit, denn mit dem ersten "RC" (Release Candidate bzw. Ridiculous Count) hat er wie üblich die "Merge Window" genannte Phase des Entwicklungszyklus abgeschlossen, in der die Entwickler das Gros der Umbauten für eine neue Kernel-Version vornehmen. Größere, erwähnenswerte Änderungen erfolgen danach nur in Ausnahmefällen; es passiert auch äußerst selten, dass Torvalds umfangreiche, im Merge Window integrierte Änderungen vor der Fertigstellung deaktiviert oder gar wieder entfernt.

Das Kernel-Log der c't kann daher schon jetzt die Neuerungen der nächsten Linux-Version detailliert beschreiben. Da jede neue Linux-Version enorm viele Anpassungen in zahlreichen Bereichen bringt, machen wir das schrittweise, um die wesentlichen Änderungen in leichter handhabbaren Mengen zu erläutern. Deshalb erweitern wir den Text zwischen Erstpublikation und der Fertigstellung des neuen Kernels mehrfach. Der Artikel beschreibt daher bislang auch nur die Änderungen bei Dateisystemen & Storage, Architektur-Support, Grafiktreibern und Netzwerk-Unterstützung sowie die Highlights anderer Bereiche. Es folgen noch Texterweiterungen, die Neuerungen bei Infrastruktur und Sicherheit näher beschreiben; mit diesen Erweiterungen reichen wir dann auch Details zu den bislang nur angerissenen Highlights nach.

Der Newsticker von heise online und der Twitter-Account @kernellog erwähnen größere Erweiterungen des Kernel-Logs zur nächsten Linux-Version. Das neueste Update finden Sie immer auf der ersten Seite des Artikels, ältere Textpassagen auf den folgenden Seiten. Details zur Versionshistorie des Artikels liefert das Changelog am Artikelende.

Kommentare

Kommentare lesen (140 Beiträge)