Na zozname e-mailovej komunikácie vývojárov Linuxového jadra bola navrhnutá predbežná implementácia ovládača drm-asahi pre GPU Apple AGX série G13 a G14, používané v čipoch Apple M1 a M2. Ovládač je napísaný v jazyku Rust a navyše zahŕňa súbor univerzálnych obalov nad subsystémom DRM (Direct Rendering Manager), ktoré je možné použiť na vývoj iných grafických ovládačov v jazyku Rust. Publikovaný súbor patchov je zatiaľ navrhnutý len na diskusiu medzi vývojármi jadra (RFC), ale môže byť prijatý do hlavného súboru po dokončení recenzovania a odstránení zistených nedostatkov.
Od decembra ovládač patrí do balíka s jadrom pre distribúciu Asahi Linux a bol testovaný používateľmi tohto projektu. Ovládač môže byť použitý v distribúciách Linuxu na zabezpečenie práce grafického prostredia na zariadeniach Apple s SoC M1, M1 Pro, M1 Max, M1 Ultra a M2. Pri vývoji ovládača bola učinená snaha nielen zvýšiť bezpečnosť minimalizovaním chýb pri manipulácii s pamětí v kóde, ktorý beží na strane CPU, ale aj zabezpečiť čiastočnú ochranu proti problémom, ktoré vznikajú pri interakcii s firmvérom. Konkrétne, ovládač poskytuje určité obaly pre nebezpečné štruktúry zdieľanej pamäte so zložitými reťazcami ukazovateľov, ktoré sa používajú vo firmvéri na interakciu s ovládačom.
Navrhnutý ovládač sa používa v kombinácii s Mesa-ovalačom asahi, ktorý zabezpečuje podporu OpenGL na úrovni užívateľského priestoru a úspešne prechádza testami kompatibility s OpenGL ES 2 a je takmer pripravený na podporu OpenGL ES 3.0. Pri tom ovládač, ktorý pracuje na úrovni jadra, bol pôvodne vyvíjaný s ohľadom na budúcu podporu API Vulkan a softvérové rozhranie pre interakciu s užívateľským priestorom bolo navrhnuté s ohľadom na UAPI, poskytované novým ovládačom Intel Xe.
Zdroj: opennet.ru
