Linuxi toetuse rakendamise algatus Apple M1 kiibile, mida edendavad projektid Asahi Linux ja Corellium, on jõudnud tasemele, kus GNOME'i töölaua käivitamine Linuxi keskkonnas Apple M1 kiibiga varustatud süsteemil on võimalik. Kuvariväljund on korraldatud framebufferi kaudu ning OpenGL toimetamine on tagatud LLVMPipe'i programmiga. Järgmine samm on kasutada ekraaniprotsessorit, et saavutada kuni 4K eraldusvõime, mille jaoks on tagasikonstrukteeritud draiverid juba valmis.
Projekt Asahi on saavutanud algse toe M1 SoC komponendi integreerimise Linuxi tuumasse, mis ei ole seotud GPU-ga. Demonstreeritud Linuxi keskkonnas on lisaks tavalise tuuma võimalustele kasutatud mitmeid täiendavaid patše, mis on seotud PCIe, pinctrl draiveri ning ekraani draiveriga. Need täiendused võimaldasid võimaldada ekraaniväljundit ning saavutada USB ja Etherneti tööd. Graafika kiirendust ei ole veel kasutusele võetud.
Uinteresting on see, et SoC M1 tagasikonstrukteerimise jaoks rakendas projekt Asahi hüperviisori, mis töötab tasemel macOS ja M1 kiibi vahel ning jälgib ja logib kõiki toiminguid kiibiga läbipaistvas režiimis, selle asemel et proovida macOS draivereid disassembeldesa. SoC M1 spetsiifilisused, mis raskendavad kiibi toe rakendamist välistes OS-is, hõlmavad ekraaniregulaatori (DCP) koostööprotsessori lisamist. Sellele koostööprotsessorile on antud poolsus funktsionaalsusest macOS ekraani draiveris, mis kutsub välja koostööprotsessori valmis funktsioone spetsiaalse RPC-liidese kaudu.
Entusiastid on juba piisavalt RPC-liidese väljakutseid analüüsinud, et kasutada koopereerijat ekraanile kuvamiseks, samuti riistvara kursori juhtimiseks ning kompositsiooni ja skaleerimise toimingute teostamiseks. Probleem on selles, et RPC-liides sõltub firmware'ist ja muutub iga macOS versiooniga, seega plaanib Asahi Linux toetada ainult teatud firmware versioone. Esiteks tagatakse toetus firmware'ile, mis on saadaval macOS 12 'Monterey' puhul. Vajalikku versiooni firmware'i ei ole võimalik alla laadida, kuna iBoot installib firmware'i operatsioonisüsteemile ülemineku eel ja digitaalallkirja kontrollimisega.


Allikas: opennet.ru
