Collabora huet Fortschrëtter bei der Kärentwécklung ugekënnegt Linux Den Tyr-Treiber, deen a Rust geschriwwe gouf, ass fir ARM Mali GPUs entwéckelt, déi Command Stream Frontend (CSF) Technologie benotzen, wéi zum Beispill de Mali G310, G510 a G710. Tyr soll fäeg sinn, d'GNOME Desktop Ëmfeld, de Weston Composite Server a Vollbildspiller wéi SuperTuxKart auszeféieren. D'Performance gëtt als vergläichbar mat dem Panthor-Treiber geschat, deen a C geschriwwe gouf.


Den Tyr-Chauffeurcode gouf am Kernel akzeptéiert Linux 6.18, déi Ufank Dezember erauskomme soll. Den Treiber ass awer nach net prett fir reegelméisseg Benotzung vu reegelméissege Benotzer a gëtt als experimentelle Prototyp fir d'Testen vun Abstraktiounen fir d'Treiberentwécklung an der Rust-Sprooch ugesinn.
De Framework fir den neien Treiber ze kreéieren benotzt Komponenten vum abstrakten Treiber rust_platform_driver an dem Nova Treiber, deen fir NVIDIA GPUs entwéckelt, a Rust geschriwwe gouf an dem Kernel bäigefüügt gouf. Linux 6.16. D'Funktionalitéit fir d'Interaktioun mat der Mali GPU gouf vum bestehenden Panthor (Direct Rendering Manager) DRM Treiber portéiert, deen a C geschriwwe gouf. D'uAPI vum Tyr Treiber ass identesch mat der uAPI vum Panthor Treiber, sou datt en mat bestehenden User-Space Komponenten benotzt ka ginn.
D'CSF-Technologie, déi zënter der 10. Generatioun vu Mali GPUs benotzt gëtt, ass bemierkenswäert dofir, datt se e puer Treiberfunktiounen op d'Firmware-Säit verlagert huet an en neit Modell fir d'Organisatioun vun der Aarbechtsausféierung op der GPU benotzt huet. Bei GPUs mat enger CSF-Interface gëtt amplaz vun engem Modell baséiert op der Sendung vun enger Aarbechtskette e Modell baséiert op engem Kommandofloss mat Planung vun der Kommandofloss-Queue op der Firmware-Säit benotzt. Fir d'Aarbecht vum Scheduler z'organiséieren, ass e separaten Cortex-M7 Mikrocontroller an der GPU agebaut, an eng speziell Kommandoausféierungseenheet (Command Execution Unit) ass zur Verfügung gestallt fir CSF-Instruktiounen auszeféieren.
Source: opennet.ru
