En Linux-drivrutin för Apple AGX GPU, skriven i Rust, föreslås för granskning.

En preliminär implementering av drm-asahi-drivrutinen för Apple AGX G13- och G14-seriens GPU:er som används i Apple M1- och M2-chips har föreslagits på e-postlistan för utvecklare av Linux-kärnan. Drivrutinen är skriven i Rust och innehåller dessutom en uppsättning universella bindningar över DRM-delsystemet (Direct Rendering Manager) som kan användas för att utveckla andra grafikdrivrutiner i Rust. Den publicerade uppsättningen patchar har hittills endast föreslagits för diskussion av kärnutvecklare (RFC), men kan accepteras i huvudgruppen efter att granskningen är klar och de identifierade bristerna har eliminerats.

Sedan december har drivrutinen inkluderats i paketet med kärnan för Asahi Linux-distributionen och har testats av användare av detta projekt. Drivrutinen kan användas i Linux-distributioner för att organisera den grafiska miljön på Apple-enheter med SoC M1, M1 Pro, M1 Max, M1 Ultra och M2. Vid utvecklingen av drivrutinen gjordes ett försök att inte bara öka säkerheten genom att minimera fel vid arbete med minne i koden som exekveras på CPU-sidan, utan också att delvis skydda mot problem som uppstår vid interaktion med firmware. I synnerhet tillhandahåller drivrutinen vissa bindningar för osäkra delade minnesstrukturer med komplexa kedjor av pekare som används i den fasta programvaran för att interagera med drivrutinen.

Den föreslagna drivrutinen används tillsammans med asahi Mesa-drivrutinen, som ger OpenGL-stöd för användarutrymme och klarar OpenGL ES 2-kompatibilitetstester och är nästan redo att stödja OpenGL ES 3.0. Samtidigt utvecklas drivrutinen som arbetar på kärnnivå initialt med hänsyn till framtida stöd för Vulkan API, och programmeringsgränssnittet för att interagera med användarutrymme är designat med ett öga på UAPI som tillhandahålls av den nya Intel Xe-drivrutinen.

Källa: opennet.ru

Lägg en kommentar