Linux 5.2 unterstützt eine ganze Latte neuer Grafikchips Update

Linux Kernel 5.2

Trends & News | Kernel-Log

Linux 5.2 bringt Grafiktreiber für eine Reihe neuer Intel-Prozessoren mit. Beim Grafiktreiber für AMD-GPUs gab es lediglich Optimierungen, weil die Entwickler gerade was Größeres vorbereiten.

Das im Juli erwartete Linux 5.2 bringt einen ganzen Schwung verbesserter Grafiktreiber mit. Durch sie unterstützt der Kernel jetzt die Intel-GPUs von drei neuen Prozessorgenerationen. Ferner haben die Entwickler den Support für virtuelle Maschinen und erweiterte Farbräume optimiert. Unterstützung für AMDs neue Grafikprozessorgeneration steht für Linux 5.3 auf der Agenda.

Der Kernel-Grafiktreiber i915 unterstützt jetzt die GPU von Intel-Prozessoren mit dem Codenamen "Ice Lake". Zu ihr gehören etwa die ersten Core-i-CPUs der zehnten Generation, die Intel kürzlich vorgestellt hat und die für flache Notebooks ausgelegt sind. Diese 10-nm-Prozessoren sind die ersten, in denen Intels Grafikprozessor der elften Generation sitzt. Support für solche Gen11-GPUs steckt auch schon in den Vorgängern von Linux 5.2 – er gilt dort aber als unvollständig, daher muss man ihn über den Kernel-Startparameter i915.alpha_support=1 explizit aktivieren. OpenGL- und Vulkan-Treiber für diese Chips bringt das im Juni erwartete Mesa 19.1.

Linux 5.2 unterstützt die GPUs einiger kürzlich eingeführten oder bald erwarteten Intel-Prozessoren. (Bild: c't-Online-Artikel "Prozessorfahrpläne von AMD und Intel" )

Der neue Kernel unterstützt auch schon die GPUs der noch nicht erhältlichen Intel-Platform "Elkhart Lake (EHL)", die wie Ice Lake eine Gen11-GPU enthält, aber auf Embedded-Prozessoren (Atom) und Billig-CPUs (Atom-Celerons) zielt. Ferner weiß der Kernel jetzt auch den Grafikprozessor von CPUs der "Comet Lake"-Generation inklusive ihres Platform Controller Hubs (PCH) anzusprechen. Auch sie sind noch nicht erhältlich und für Desktop-PCs und leistungsstärkste Notebooks gedacht. Weitere Details zu den Einsatzgebieten von diesen und weiteren jüngst eingeführten oder bald erwarteten Prozessoren liefert der kürzlich auf c't online veröffentlichte Text "Prozessorfahrpläne von AMD und Intel".

Die Kernel-Entwickler haben ferner den Cirrus-Treiber generalüberholt, der vergleichsweise simple Grafikchips anspricht, die das oft mit KVM und Xen kombinierte Qemu emulieren kann. Der Treiber konnte dadurch um 70 Prozent schrumpfen, da er jetzt auf viel Basisinfrastruktur des Kernels aufbaut, die in den letzten Jahren für Grafiktreiber geschaffen wurde. Dadurch lernt er zugleich einige für moderne Systeme wichtige Funktionen wie Wayland-Support.

Der Grafiktreiber für den normalerweise von VirtualBox emulierten Grafikchip hat den Staging-Bereich verlassen und ist somit fortan ein regulär gepflegter Treiber. Das ist etwa für Distributionen wichtig, die Code des Staging-Bereichs meiden, weil für ihn Sonderregeln gelten. Dort liegende Treiber erfüllen etwa die normalen Qualitätsansprüche der Linux-Entwickler nicht und können ohne Vorwarnung verschwinden, weil die sonst von Torvalds hochgehaltene Prämisse "keine Regressionen" dort allenfalls eingeschränkt gilt. Während der Zeit im Staging-Bereich wurde der früher extern gewartete Vboxvideo-Treiber enorm verbessert und schrumpfte dabei zugleich erheblich, denn wie der Cirrus-Treiber setzt auch der VirtualBox-Treiber jetzt auf Basisinfrastruktur für Grafiktreiber auf. Durch sie hat er auch an Funktionsumfang zugelegt und beherrscht moderne Features wie das seit Linux 4.12 verstärkt genutzte Atomic Modesetting.

Neu dabei ist der Grafiktreiber Aspeed, der für Linux-Distributionen gedacht ist, die auf dem Aspeed AST2500 laufen. Dabei handelt es sich um einen als Fernwartungs/Sytemmanagement-Controller (Baseboard Management Controller/BMC) arbeitenden SoC (System on Chip), der häufiger auf modernen Serverboards steckt. Der Treiber ist nicht zu verwechseln mit dem schon länger in Linux enthaltenen Grafiktreiber Ast, mit dem der Host ein PCI-Device ansprechen kann, was dieser SoC bereitstellt.

Auch dabei: Änderungen an der Basisinfrastruktur und dem Intel-i915-Treiber, durch die sich der Farbraum jetzt bei jedem Monitoranschluss separat festlegen lässt. Bei Mehrschirmsystemen können Userspace-Anwendungen bei den Monitoren individuell auf Colorspaces wie 601, 709 oder BT2020 umschalten, um so die Darstellungsqualität mit dem erweiterten Farbraum zu verbessern – beispielsweise, wenn ein Video in einem solchen Format encodiert wurde und auf einem Monitor im Vollbild wiedergegeben wird.

Das ist auch für die Linux-Unterstützung zur Ausgabe mit High Dynamic Range (HDR) relevant, an der Intel-Entwickler seit einer Weile arbeiten; einige Grundlagen hierzu sollen in Linux 5.3 einfließen. Bei dieser Version wollen die Entwickler auch Patches nachrüsten, um das eLLC genannte Embedded DRAM (eDRAM) der stärkeren Intel-GPUs seit der Skylake-Generation als Cache nutzen zu können, was die Performance verbessert.

Die im Text erwähnten Neuerungen sind nur die sprichwörtliche Spitze des Eisbergs, denn allein bei den AMD- und Intel-Treiber gab es noch zahlreiche weitere Änderungen. (Bild: git.kernel.org – a2d635decbfa )

Der Kommentar des Git-Commit mit dem Gros an Grafiktreiberänderungen nennt noch eine ganze Reihe weiterer Neuerungen rund um den Direct Rendering Manager (DRM) des Kernels und den darauf aufbauenden Grafiktreiber. Durch eine der Änderungen kann man jetzt etwa alte, vermutlich von aktuellen Userspace-Grafiktreiber kaum noch genutzte, Programmierschnittstellen lahmlegen, wodurch das Modul mit den DRM-Kernfunktionen um zehn Prozent kleiner ausfällt.

Der Nouveau-Treiber, der moderne Nvidia-Chips unterstützt, weiß jetzt auch die TU117-GPUs anzusprechen, die etwa bei der GeForce GTX 1650 im Einsatz sind.

Beim für moderne Radeon-GPUs zuständigen Treiber Amdgpu gab es allerlei Feintuning am Freesync-Support, der bei Linux 5.0 zum Kernel stieß und durch dynamische Anpassung der Bildwiederholrate (Variable Refresh Rate/VRR) für flüssige 3D-Darstellung sorgt. Vega-12 und Vega-20-Chips dürften dank besserem Support für BACO (Bus Active, Chip Off) sparsamer laufen. Neu dabei ist experimenteller und standardmäßig inaktiver Treibercode für die elfte Generation von AMDs System Management Unit (SMU), die Taktfrequenzen, Spannungen, Power Management, Lüfterregelung und einiges andere steuert. Dieser noch junge Treibercode, der nur die SMU von Vega20-GPUs unterstützt, soll den PowerPlay-Code ersetzen, der bislang solche Aufgaben regelt. Das sind Vorarbeiten zur Unterstützung der neuen Grafikprozessor-Generation "Navi", die AMD offenbar im Juli einführen will. AMDs Entwickler arbeiten offenbar darauf hin, Unterstützung für diese Grafikprozessoren in Linux 5.3 und Mesa 19.2 zu integrieren.

Schrittweise aktualisierter Text zu Linux 5.2

Die Neuerungen des am 8. oder 15 Juli erwarteten Linux 5.2 sind seit dem 20. Mai absehbar, als Linus Torvalds die erste Vorabversion dieser Kernel-Version freigegeben hat. Damit hat er die "Merge Window" genannte Phase des Entwicklungszyklus abgeschlossen, in der er alle wesentlichen Umbauten für eine neue Kernel-Version vornimmt. Größere, erwähnenswerte Änderungen erfolgen danach nur in Ausnahmefällen; es passiert auch nur äußerst selten, dass die Entwickler eine umfangreichere, im Merge Window integrierte Änderung vor der Fertigstellung deaktivieren oder gar entfernen.

Das Kernel-Log der c't kann daher bereits jetzt die Neuerungen der nächsten Linux-Version in einem detaillierten Text beschreiben. Er wird zwischen Erstpublikation und der Fertigstellung des neuen Kernels mehrfach erweitert, um die wesentlichen Änderungen der verschiedenen Kernel-Bereiche schrittweise in leichter handhabbaren Mengen zu beschreiben. Der Text reißt daher die Highlights bislang nur an und beschreibt nur die Neuerungen bei Grafiktreibern näher; es folgen aber noch Textupdates, die sich Dateisystemen & Storage, Netzwerk-Unterstützung, Treibern, Infrastruktur & Architektur-Support noch näher widmen und dabei auch Details zu den Highlights liefern.

Der Newsticker von heise online und der Twitter-Account @kernellog erwähnen größere Erweiterungen des Textes zum neuen Linux-Kernel. Diese finden Sie immer auf der ersten Artikelseite; ältere Textpassagen finden Sie auf den folgenden Seiten. Details zur Versionshistorie des Artikels liefert das Changelog am Artikelende.

Kommentare

Kommentare lesen (411 Beiträge)

Anzeige