En Linux-driver til Apple AGX GPU, skrevet i Rust, tilbydes til gennemgang.

Mailinglisten for Linux-kerneudviklere tilbyder en foreløbig implementering af drm-asahi-driveren til Apple AGX G13- og G14-seriens GPU'er, der bruges i Apple M1- og M2-chips. Driveren er skrevet på Rust-sproget og inkluderer desuden et sæt universelle bindinger over DRM-undersystemet (Direct Rendering Manager), som kan bruges til at udvikle andre grafikdrivere i Rust-sproget. Det offentliggjorte sæt patches tilbydes indtil videre kun til diskussion af kerneudviklere (RFC), men kan accepteres i hovedsammensætningen efter afslutning af gennemgangen og eliminering af identificerede mangler.

Siden december har driveren været inkluderet i kernepakken til Asahi Linux-distributionen og er blevet testet af brugere af dette projekt. Driveren kan bruges i Linux-distributioner til at organisere driften af ​​det grafiske miljø på Apple-enheder med SoC M1, M1 Pro, M1 Max, M1 Ultra og M2. Ved udviklingen af ​​driveren blev der forsøgt ikke kun at forbedre sikkerheden ved at minimere fejl ved arbejde med hukommelse i kode udført på CPU-siden, men også at yde delvis beskyttelse mod problemer, der opstår ved interaktion med firmwaren. Især giver driveren visse bindinger til usikre delte hukommelsesstrukturer med komplekse kæder af pointere, der bruges i firmwaren til at interagere med driveren.

Den foreslåede driver bruges i kombination med asahi Mesa-driveren, som understøtter OpenGL i brugerrummet og består med succes kompatibilitetstest med OpenGL ES 2 og er næsten klar til at understøtte OpenGL ES 3.0. Samtidig er driveren, der kører på kerneniveau, i første omgang udviklet under hensyntagen til fremtidig understøttelse af Vulkan API, og softwaregrænsefladen til at interagere med brugerplads er designet med øje for UAPI'en fra den nye Intel Xe-driver.

Kilde: opennet.ru

Tilføj en kommentar