Ailweithio'r gyrrwr VGEM yn Rust

Cyflwynodd Maíra Canal o Igalia brosiect i ailysgrifennu gyrrwr VGEM (Darparwr GEM Rhithwir) yn Rust. Mae VGEM yn cynnwys tua 400 llinell o god ac yn darparu backend caledwedd-agnostig GEM (Rheolwr Gweithredu Graffeg) a ddefnyddir i rannu mynediad byffer i yrwyr dyfais 3D meddalwedd megis LLVMpipe i wella perfformiad rasterization meddalwedd.

VGEM fydd yr ail yrrwr graffeg Rust i redeg ar lefel y cnewyllyn (y cyntaf oedd gyrrwr Asahi DRM (Rheolwr Rendro Uniongyrchol) ar gyfer yr Apple AGX GPU a ddefnyddir mewn sglodion Apple M1 / ​​M2). Roedd angen creu rhwymiadau newydd i weithio o'r cod Rust gyda'r ddyfais platfform, y math XArray, a thyniadau cysylltiedig â DMA megis ffensys DMA. Ar y cam datblygu presennol, mae'r gyrrwr bron yn barod, yn pasio'r rhan fwyaf o brofion IGT, ac eithrio dau wiriad (vgem_slow a vgem_basic@unload), ond mae angen gwella cefnogaeth IOCTL.

Ffynhonnell: opennet.ru

Ychwanegu sylw