En Linux-driver for Apple AGX GPU, skrevet i Rust, er foreslått for gjennomgang.

En foreløpig implementering av drm-asahi-driveren for Apple AGX G13- og G14-seriens GPU-er som brukes i Apple M1- og M2-brikkene, er foreslått på e-postlisten for Linux-kjerneutviklere. Driveren er skrevet i Rust og inkluderer i tillegg et sett med universelle bindinger over DRM (Direct Rendering Manager) delsystemet som kan brukes til å utvikle andre grafikkdrivere i Rust. Det publiserte settet med oppdateringer har så langt blitt foreslått kun for diskusjon av kjerneutviklere (RFC), men kan godtas i hovedteamet etter at gjennomgangen er fullført og de identifiserte manglene er eliminert.

Siden desember har driveren vært inkludert i pakken med kjernen for Asahi Linux-distribusjonen og har blitt testet av brukere av dette prosjektet. Driveren kan brukes i Linux-distribusjoner for å organisere det grafiske miljøet på Apple-enheter med SoC M1, M1 Pro, M1 Max, M1 Ultra og M2. Ved utvikling av driveren ble det forsøkt ikke bare å øke sikkerheten ved å minimere feil ved arbeid med minne i koden utført på CPU-siden, men også å delvis beskytte mot problemer som oppstår ved interaksjon med fastvaren. Spesielt gir driveren visse bindinger for usikre delte minnestrukturer med komplekse kjeder av pekere som brukes i fastvaren for å samhandle med driveren.

Den foreslåtte driveren brukes sammen med asahi Mesa-driveren, som gir brukerplass OpenGL-støtte og består OpenGL ES 2-kompatibilitetstester og er nesten klar til å støtte OpenGL ES 3.0. Samtidig er driveren som jobber på kjernenivå i utgangspunktet utviklet under hensyntagen til fremtidig støtte for Vulkan API, og programmeringsgrensesnittet for samhandling med brukerplass er utformet med et øye på UAPI levert av den nye Intel Xe-driveren.

Kilde: opennet.ru

Legg til en kommentar