Klassischer Treibercode, der Gallium3D nicht verwendet, wurde aus Mesa entfernt

Alle klassischen OpenGL-Treiber wurden aus der Mesa-Codebasis entfernt und die Unterstützung für die Infrastruktur für ihren Betrieb wurde eingestellt. Die Wartung des alten Treibercodes wird in einem separaten „Amber“-Zweig fortgesetzt, diese Treiber werden jedoch nicht mehr im Hauptteil von Mesa enthalten sein. Auch die klassische xlib-Bibliothek wurde entfernt und es wird empfohlen, stattdessen die Variante gallium-xlib zu verwenden.

Die Änderung betrifft alle in Mesa verbliebenen Treiber, die nicht die Gallium3D-Schnittstelle verwendeten, einschließlich i915- und i965-Treiber für Intel-GPUs, r100 und r200 für AMD-GPUs sowie Nouveau-Treiber für NVIDIA-GPUs. Anstelle dieser Treiber wird empfohlen, Treiber zu verwenden, die auf der Gallium3D-Architektur basieren, wie Iris (Gen 8+) und Crocus (Gen4-Gen7) für Intel-GPUs, radeonsi und r600 für AMD-Karten, nvc0 und nv50 für NVIDIA-Karten. Durch das Entfernen klassischer Treiber wird die Unterstützung für einige ältere Intel-GPUs (Gen2, Gen3), AMD Radeon R100 und R200 sowie ältere NVIDIA-Karten entfernt.

Die Gallium3D-Architektur vereinfacht die Entwicklung von Mesa-Treibern und eliminiert die Codeduplizierung, die bei klassischen Treibern auftritt. In Gallium3D werden die Aufgaben der Speicherverwaltung und Interaktion mit der GPU von den separaten Kernelmodulen DRM (Direct Rendering Manager) und DRI2 (Direct Rendering Interface) übernommen und den Treibern ein vorgefertigter State-Tracker mit Unterstützung für eine Wiederverwendung zur Verfügung gestellt Cache von Ausgabeobjekten. Klassische Treiber erfordern die Pflege eines eigenen Backends und Status-Trackers für jede Hardwareplattform. Sie sind jedoch nicht an die DRI-Module des Linux-Kernels gebunden, sodass sie in Betriebssystemen wie Solaris verwendet werden können.

Source: opennet.ru

Kommentar hinzufügen