Projet Avivo : un pilote libre pour cartes ATI avant Noël ?

linuxPlusieurs personnes travaillent actuellement à ce que certains utilisateurs de Linux appelleraient probablement le Saint Graal : un pilote entièrement libre pour les cartes graphiques embarquant des GPU d’AMD/ATI. Ces cartes sont connues depuis des années pour donner du fil à retordre à ceux qui préfèrent les manchots, généralement prisonniers entre un pilote libre, mais ne supportant pas tous les modèles, et un modèle propriétaire, détectant toutes les cartes mais causant d’autres problèmes.

À une époque, beaucoup ont regardé le projet nommé « R300 » comme leur messie, mais les résultats escomptés n’ont pas été au rendez-vous, malgré un avancement certain du travail énorme qu’un tel pilote peut demander. À cette époque, les personnes qui développaient pour ce projet se sont réparties sur d’autres composants importants comme Mesa, qui est l’implémentation libre d’OpenGL pour la 3D, la DRI (Direct Rendering Infrastructure) ou encore le fameux projet baptisé « Nouveau » qui doit fournir un pilote libre pour les cartes NVIDIA.

amd logo Le projet ressuscité, nommé « Avivo », est dirigé par Jérôme Glisse, qui s’occupait déjà du pilote R300. Quelques personnes travaillent avec lui sur ce qui représente une dose assez conséquente de recherche et de reverse-engineering. Actuellement, le pilote Avivo vise l’ensemble des cartes à base de GPU R500 et R600 et gère seulement quelques fonctions de base comme le DAC (digital to analog converter), le LVDS (low-voltage differential signaling) et le TMDS (transition minimized differential signaling).

Le pilote contient tout juste de quoi afficher quelque chose à l’écran, mais maintenant que la base a été mise en place, le reste pourrait accélérer. Une bonne partie de l’architecture du pilote peut en effet être héritée du travail réalisé il y a plusieurs années sur le pilote R300, notamment l’accélération XAA utilisée pour la 2D par le serveur X.org.

Il reste évidemment des différences importantes, comme par exemple les shaders. Selon Jérôme Glisse, cette partie est plus délicate mais des documents disponibles sur le site d’AMD donnent un bon aperçu de ce qu’il est nécessaire de faire. Le problème, par contre, est que ce travail pourrait s’avérer rapidement totalement redondant.

R600 HD 2900XT
Radeon 2900XT

Les changements en prévision dans la DRI et dans Mesa vont propulser l’accélération OpenGL pour la 2D et la 3D directement dans le serveur X.org. Il s’agit donc pour le chef de projet d’une future perte de temps, mais le manque de précision sur les calendriers de tous ces projets ne lui laisse guère le choix si son pilote doit fonctionner correctement.

Selon Glisse, AMD n’a pas montré de signe volontaire et/ou évident d’engagement dans le projet, mais on sait que le projet d’un pilote totalement libre est quelque part dans les nuages. La firme sait que le projet Avivo existe, car il y a eu plusieurs fois communication, mais elle n’a pas réellement tendu la main, pas plus qu’elle n’a tendu le bâton. AMD et NVIDIA se sont plusieurs fois exprimées sur le sujet, indiquant que le grand problème des pilotes réellement libres était que leur propriété intellectuelle serait étalée au grand jour.

Jérôme Glisse ajoute que le développement de pilotes est un des rares domaines du logiciel libre où il reste vraiment beaucoup de place pour d’autres développeurs. Il précise en outre que de nouvelles personnes seront les bienvenues, mais une expérience certaine des cartes graphiques est obligatoire, ainsi que du temps, car le projet vise le long terme.

Même si la Free Software Foundation a déclaré que les pilotes libres faisaient partie des priorités dans le développement, l’obligation d’avoir recourt au reverse-engineering en fait un travail difficile et souvent ingrat. Une première préversion du pilote devrait être disponible avant Noël, mais le calendrier reste encore à confirmer.


PS : merci siocnarf ;)

Vous n'avez pas encore de notification

Page d'accueil
Options d'affichage
Abonné
Actualités
Abonné
Des thèmes sont disponibles :
Thème de baseThème de baseThème sombreThème sombreThème yinyang clairThème yinyang clairThème yinyang sombreThème yinyang sombreThème orange mécanique clairThème orange mécanique clairThème orange mécanique sombreThème orange mécanique sombreThème rose clairThème rose clairThème rose sombreThème rose sombre

Vous n'êtes pas encore INpactien ?

Inscrivez-vous !