I-Collabora idaluliwe nge-blog post esinye seziqophamlando zakamuva ngaphakathi kwemisebenzi yabo eyethulwe, futhi kunjalo imemezele ukuhlanganiswa kwesilawuli osekukade kulindelwe izinhlamvu okwengeza ukusekelwa kwesizukulwane se-10 se-Arm Mali GPUs ku-drm-misc. Lo mshayeli eyaziwa kangcono ngokuthi "Panthor", ungumshayeli womthombo ovulekile oklanyelwe ngqo isizukulwane se-310 iMali GPU (G510, G710, GXNUMX).
Kushiwo ukuthi ukuhlanganiswa kwesilawuli kumelela umzamo wokubambisana weminyaka emibili kanye nomsebenzi phakathi konjiniyela abambalwa nezinkampani, i-Collabora igqamisa ukubaluleka kokubambisana ekuthuthukisweni kobuchwepheshe obuphambili.
Ukubamba iqhaza kwe-Arm kule nqubo bekubalulekile, hhayi kuphela ukunikeza ukufinyelela kumadokhumenti abalulekile, kodwa futhi nokubamba iqhaza ngenkuthalo ekubuyekezeni nasekunakekeleni ngokubambisana komshayeli we-kernel.
Ekuqaleni, ukuthuthukiswa komshayeli omusha kwenziwa ngokusebenzisa ubunjiniyela obuhlanekezelwe, kodwa-ke i-ARM yajoyina iphrojekthi, ihlinzeka ngokufinyelela kumadokhumenti futhi ibamba iqhaza ekubuyekezweni kwekhodi. Abasebenzi ababili be-ARM banyuselwe esimweni somshayeli osebenza ndawonye we-Linux kernel. Ngokuzayo, uma umshayeli we-OpenGL eselungile, umsebenzi uzogxila ekusebenziseni umshayeli we-Vulkan we-Mali GPUs entsha kanye nokubuyekeza umshayeli okhona we-Vulkan wama-Mali GPU amadala.
Lo mshayeli isebenzisa ubuchwepheshe be-CSF (Command Stream Frontend) ukudlulisa imisebenzi ethile ukusuka kusilawuli ukuya ohlangothini lwe-firmware, esiza ukwehlisa umthwalo ku-CPU futhi inikeze imodeli entsha yokuhlela umsebenzi ku-GPU. Umshayeli we-Panthor DRM (Direct Rendering Manager). yamukelwe egatsheni le-drm-misc futhi kulindeleke ukuthi ifakwe ku-Linux 6.10 kernel. I-Mesa iphinde yamukela izinguquko zokusekela umshayeli omusha, ozofakwa kumshayeli we-Panfrost Gallium we-Mali GPUs.
Esizukulwaneni esisha se-Mali GPUs, isihleli Sesiphathi Semisebenzi sithathelwa indawo isixhumi esibonakalayo se-CSF, esisebenzisa imodeli esekelwe ekugelezeni komyalo enokuhlelwa komugqa wokugeleza komyalo ohlangothini lwe-firmware esikhundleni semodeli esekelwe kokugeleza kwegazi. imisebenzi. Lokhu kuhlanganisa ukuhlanganiswa kwesilawuli esincane se-Cortex-M7 ku-GPU kanye neyunithi yokukhipha umyalo okhethekile ukuze kusetshenziswe imiyalo ye-CSF. Le misebenzi idinga inhlangano ehluke kakhulu ukuze idlulisele umsebenzi ku-GPU usuka endaweni yomsebenzisi.
Ekuqaleni, Kwenziwa umzamo wokusebenzisa ukusekelwa kwe-CSF-based Mali GPUs kumshayeli we-Panfrost DRM, kodwa abathuthukisi baphethe ngokuthi lokhu kuzosenza sibe nzima kakhulu isilawuli esikhona. Ngakho-ke, ku-CSF, bekulungile kakhulu ukudala isilawuli esisha esinezakhiwo ezahlukene. Isilawuli se-Panthor sisebenzisa i-uAPI entsha ngokuphelele, ingqondo entsha yokuhlela umsebenzi, kanye nendlela entsha yokulawula ye-MMU/GPU-VA. Isekelwe kukhodi yomshayeli ye-DRM ye-Panfrost ekhona, lapho ithatha khona ukuqaliswa komshayeli okujwayelekile, ukulawula imvamisa, namaphethini okuphatha amandla.
Ngaphezu kwakho, Kuthiwa umshayeli we-kernel uhlanganise isicelo engincibilikisasa enweba umshayeli Gallium ekhona ukusekela isizukulwane se-10 se-Arm Mali GPUs. Hlanganyela uphinde wasebenza ukuqinisekisa ukuthi amabhodi asekelwe e-Rockchip RK3588 ingalayishwa kusetshenziswa isitaki sesofthiwe esivuleke ngokuphelele. Ku-Rockchip RK3588, isithombe sesistimu esekwe ku-Debian kanye ne-bootloader evulekile zilungiselelwe ukufaka esikhundleni sezingxenye zobunikazi ze-BL31 (isigaba se-bootloader 3.1). Lokhu kubaluleke kakhulu kumapulatifomu e-R3588 e-Rockchip, lapho ukusebenza okuthuthukisiwe nokusebenza kahle kulindeleke ngenxa yalezi zibuyekezo.
Ukusebenza kumshayeli we-Gallium akubandakanyi kuphela ukunika amandla ukusekelwa kwama-GPU amasha, kodwa futhi nokuthuthukisa ukusebenza nokuhambisana nama-API wezithombe zesimanje. Lesi sandiso somshayeli siyingxenye yomzamo oqhubekayo wokuletha ukuzizwisa kwezithombe ezihlukile kumadivayisi ahlukahlukene kanye nezimo zokusetshenziswa.
Uma unjalo unentshisekelo yokwazi okwengeziwe ngayo, ungabheka imininingwane Kulesi sixhumanisi esilandelayo.