LinuxPedia

Wiki libre et indépendant dédié à GNU-Linux et BSD.

Outils pour utilisateurs

Outils du site


debian:debian_ati

Les pilotes libres "radeon - ati"

Il s'agit ici des matériels supportés par les pilotes libres ati, radeon, radeonHD qui correspondent aux paquets “xserver-xorg-video-ati”, “xserver-xorg-video-radeon” et “xserver-xorg-video-radeonhd”. Pour les cartes graphiques plus anciennes également “xserver-xorg-video-r128” et “xserver-xorg-video-mach64”. Ces paquets sont généralement installés automatiquement comme dépendances du paquet “xserver-xorg-video-all”.
Depuis que AMD/ATi a commencé politique de libération des caractéristiques de ses cartes, les pilotes libres ont connu un développement nettement accéléré.

<note>Un signe $ précède les commandes qui ne nécessitent pas de droits administrateur ; un signe # précède celles qui nécessitent des droits administrateur (ces signes ne font <color red>PAS</color> partie des commandes). Les lignes qui ne commencent pas par un signe $ ou # correspondent au résultat de la commande précédente.
Les touches utilisées sont indiquées entre crochets, exemple [ctrl] pour la touche “contrôle”</note>

Cartes supportées

Cartes supportant la 3D avec le driver libre mach64
  • Toutes les ATI Rage PRO (les performances sont très mauvaises, car le driver n'est pas fini)
Cartes supportant la 3D avec le driver libre r128
  • Toutes les ATI Rage 128
Cartes supportant la 3D avec le driver libre Radeon
  • R100 : Radeon 7200
  • RV100 : Radeon 7000(VE), M6
  • RS100 : Radeon IGP320(M)
  • RV200 : Radeon 7500, M7, FireGL 7800
  • RS200 : Radeon IGP330(M)/IGP340(M)
  • RS250 : Radeon Mobility 7000 IGP
  • R200 : Radeon 8500, 9100, FireGL 8800/8700
  • RV250 : Radeon 9000PRO/9000, M9
  • RS300 : Radeon 9100 IGP
  • RS350 : Radeon 9200 IGP
  • RV280 : Radeon 9200PRO/9200/9200SE/9250 M9+
  • RV350 : Radeon 9600PRO/9600SE/9600, M10/M11, FireGL T2
  • RV380 : Radeon X600, M24 (uniquement à partir d'Ubuntu 6.10)
  • RV480 : Radeon X850xt
  • R423 : Radeon X800 PCIE (uniquement à partir d'Ubuntu 6.10)
  • RV370 : Radeon X300, M22 (uniquement à partir d'Ubuntu 6.10)
Cartes dont le support 3D est expérimental avec le driver libre Radeon
  • R300 : Radeon 9700PRO/9700/9500PRO/9500/9600TX, FireGL X1/Z1
  • R350 : Radeon 9800PRO/9800SE/9800, FireGL X2
  • R360 : Radeon 9800XT
  • RV360 : Radeon 9600XT
  • RV410 : Radeon Mobility X700
  • R420 : Radeon X800

En fait toutes les cartes ATI sauf les X1xxx.

Cartes récentes

Le support des cartes récentes évolue rapidement, avec le pilote “radeon” mais également avec le projet parallèle “radeonHD”. Pour des informations mises à jour voir La documentation des pilotes libres "radeon/radeonHD"

Installation

On sauvegarde son fichier de configuration xorg :

# cp /etc/X11/xorg.conf /etc/X11/xorg.bak

On édite son fichier de configuration /etc/X11/xorg.conf

# nano /etc/X11/xorg.conf

Après la section “Module” on ajoute :

Section "Extensions"
           Option "RENDER" "Enable"
   EndSection

Dans la section “Device”, on remplace le driver par “radeon” (ou “ati” : c'est identique) :

Driver         "radeon" # ancienne valeur est vesa généralement

Optimisation

On peut aussi (toujours dans la section “Device”) ajouter ou modifier les options qui boostent (voir la page de man : “man radeon” pour plus de détails).
Voici un exemple qui marche pour une radeon 9200 (les lignes commençant par “#” ne sont pas active) :

Section "Device"
        Option "AccelMethod" "XAA" # Use XFree86 Acceleration Architecture
        Option "AccelDFS"    "1" # mettez à 0 si vous avez une carte AGP
#       Option 	"AGPMode" "4" # Décommentez si vous avez une carte AGP
#       Option "AGPSize" "128" # Décommentez si vous avec une carte AGP AGP aperture size
        Option "GARTSize" "64"
        Option "RingSize" "8"
        Option "BufferSize" "2"
        Option "EnablePageFlip" "1" # Enable page flipping for 3D apps
        Option "ColorTiling" "1"
        Option "EnableDepthMoves" "yes"
        Option "UseFBDev" "false"
        Option "RenderAccel" "true" # Enable the hardware render acceleration
        Option "mtrr" "on"
        Option	"SubPixelOrder" "none"
        Option "DPMS"
        Option "DynamicClocks" "on"


Pilote non libre "fglrx"

Certaines cartes ou certaines fonctionnalités ne sont malheureusement pas supportées par les pilotes libres, c'est souvent le cas des cartes les plus récentes, des circuits graphiques intégrés des ordinateurs portables récents, ou de certaines fonctions (“CrossFire”, etc…).
Pour ce type de matériel il peut être nécessaire d'utiliser le pilote non libre “fglrx” développés par AMD/ATI.

Installer "fglrx" depuis les dépôts Debian

Il s'agit de la méthode conseillée, elle nécessite d'avoir dans votre fichier “sources.list” les dépôts “non-free”, par exemple pour la distribution “testing” :

deb http://ftp.fr.debian.org/debian/ testing main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ testing main contrib non-free

Pour plus d'information sur le fichier “sources.list” consultez la page "Gestions des paquets Debian".

Ensuite il faut installer les paquets nécessaires, à savoir :

  • fglrx-source (nécessaire à la compilation du module noyau)
  • fglrx-atieventsd
  • fglrx-glx
  • fglrx-driver
  • fglrx-glx-ia32 (optionnel, uniquement sur architecture amd64 pour des programmes 32bits)
  • fglrx-control (le panneau de control)
  • module-assistant
  • build-essential (peut être installé automatiquement par “module-assistant”)
  • linux-headers-$(uname -r) (peut être installer automatiquement par “module-assistant”, inutile si vous possédez les sources du noyau courant)

<note tip>L'arrivée du paquet “fglrx-modules-dkms” à partir de Debian Squeeze permet de se passer totalement de cette procédure, le module sera recompilé automatiquement pour tous les noyaux présents, y compris les noyaux compilés par vos soins. Pour utiliser dkms vous n'avez pas besoin du paquet “fglrx-source”, ni de module-assistant. On n'arrête pas le progrès chez Debian !</note>

En version courte cela donne :

# aptitude update
# aptitude install fglrx-source fglrx-driver fglrx-glx fglrx-control fglrx-atieventsd module-assistant build-essential linux-headers-$(uname -r)
# module-assistant a-i fglrx
# aticonfig --initial
# reboot

Vous pouvez moduler la liste des paquets installés, par exemple en ajoutant les paquets de compatibilité 32bit (sur amd64), ou en installant que le strict nécessaire dans un premier temps (fglrx-source, fglrx-driver, module-assistant).
La commande “module-assistant” (peut être abrégé en “m-a”) utilise l'option “a-i” pour “auto-install”. Cela revient à faire exécuter à “module-assistant” une série d'étape (update, prepare, [get], build, install) qui aboutiront si tout va bien à la compilation, l'installation et le chargement du module noyau fglrx.
Un paquet “fglrx-kernel-$(uname -r).deb” sera créé dans /usr/src, utile en cas de réinstallation (utilisez “dpkg -i” pour le réinstaller). Pendant la phase “prepare” “module-assistant” doit normalement installer un environnement de compilation (dont les “headers” du noyau, “build-essential”…), mais ça ne pose pas de problème d'installer ces paquets manuellement auparavant.
“aticonfig” sert à initialiser le fichier “xorg.conf”, si vous préférez ne pas laisser l'outil de configuration “aticonfig” modifier votre xorg.conf, vous pouvez omettre cette étape et effectuer les modifications nécessaires à la main. Cela consiste à modifier (ou créer) la section “Device” :

Section "Device"
    Driver         "fglrx"
EndSection

Le redémarrage ne devrait pas être strictement nécessaire, dans la plupart des cas vous pouvez passer en console (touches [ctrl][alt][F1]), stopper le serveur graphique avec, respectivement pour KDE et Gnome (l'un OU l'autre) :

# /etc/init.d/kdm restart
# /etc/init.d/gdm restart

Parfois cela échoue, et le redémarrage s'impose.

Pour vérifier que tout fonctionne, vous pouvez faire en console :

$ fglrxinfo

La commande devrait vous renvoyer des informations sur la version du pilote, et votre matériel. Autre vérification qui nécessite l'installation du paquet “mesa-utils” :

$ glxinfo | egrep '(rendering|OpenGL)'

Ça devrait renvoyer “direct rendering = yes”, et “ATI” comme fournisseur de OpenGL.

Quelques mots sur “module-assistant”, il peut s'utiliser avec une interface graphique type “ncurses” en console. Si vous préférez cette méthode il suffit de taper “module-assistant” ou “m-a” dans une console avec des droits root, et de suivre les étapes proposées par l'interface.

Étapes de préparation, indispensables lors de la première utilisation :

Choix du module à compiler ([espace] pour sélectionner) :

Lancer la compilation du module :

Installer le paquet “.deb” créé :

Si l'une de ces étapes échoue, vérifier votre environnement de compilation (sources (configurées) et/ou “headers” du noyau, liens symboliques correctes dans “/lib/modules/$(uname -r)”, etc…).

:!: Lors d'une mise à jour de version de noyau, ou du pilote “fglrx”, vous devrez recompiler un module. Dans la pratique il suffit de procéder à la mise à jour des paquets :

  • Le noyau si c'est lui qui est mis à jour, puis redémarrage sur ce nouveau noyau avant de recompiler et installer un module avec “module-assistant”.
  • Les paquets “fglrx-*” si c'est le pilote qui est mis à jour (y compris “fglrx-source”)

Dans les deux cas, effacez le paquet “fglrx-kernel-$(uname -r).deb” (à moins qu'il ne soit appelé à resservir) qui se trouve dans le répertoire /usr/src (avec “rm”, attention à ne pas se tromper de cible !), et utilisez “module-assistant” pour compiler un nouveau module et l'installer. Ne désinstallez pas le paquet du module précédent, vous le ferez une fois le nouveau module créé et installé par module-assistant, et de cette manière vous gardez une porte de sortie en cas de problème… Un redémarrage (du serveur graphique ou du système) plus tard et ça devrait rouler.

Méthode "manuelle" avec l'installateur ATi

Si pour une raison quelconque vous préférez utiliser l'installateur fourni par ATi, vous devrez le télécharger à partir du site AMD/ATi. Une fois le fichier “ati-driver-installer-$version.run” téléchargé, lancez en console :

# sh ati-driver-installer-9-9-x86.x86_64.run --listpkg

Created directory fglrx-install.syJfuQ                                                
Verifying archive integrity... All good.                                              
Uncompressing ATI Proprietary Linux Driver-8.65..........................................................
==================================================                                                                         
 ATI Technologies Linux Driver Installer/Packager                                                                          
==================================================                                                                         
List of generatable packages:                                                                                              

Package Maintainer(s): Aric Cyr <aric.cyr@gmail.com>
                      Mario Limonciello <superm1@gmail.com>
Status: *UNVERIFIED*                                       
Debian Packages:                                           
        Debian/sid                                         
        Debian/unstable                                    
        Debian/etch                                        
        Debian/stable                                      
        Debian/lenny                                       
        Debian/testing                                     
        Debian/experimental                                      

[...liste trop longue...]

Status: *UNVERIFIED*
Ubuntu Packages:
        Ubuntu/7.10
        Ubuntu/8.04
        Ubuntu/8.10
        Ubuntu/9.04
        Ubuntu/gutsy
        Ubuntu/hardy
        Ubuntu/intrepid
        Ubuntu/jaunty
        Ubuntu/karmic
        Ubuntu/source

For example, to build a Debian Etch package, run the following:
% ./ati-driver-installer-<version>-<architecture>.run --buildpkg Debian/etch

La version de l'installateur sera sans doute différente pour vous, à adapter. À partir de là il ne vous reste qu'à repérer le nom de votre distribution, par exemple “Debian/testing” et de lancer la création des paquets avec :

# sh ati-driver-installer-9-9-x86.x86_64.run --buildpkg Debian/testing

Si tout se passe bien vous trouverez plusieurs paquets “.deb” dans le répertoire courant, il vous restera à les installer avec :

# dpkg -i *.deb

À lancer dans le répertoire où se trouvent les paquets créés par l'installateur ATi, et ne laissez pas traîner d'autres paquets “.deb” dans le même répertoire, sinon ils seront (ré)installés également avec cette commande ! Si “dpkg” vous renvoie une erreur de dépendance entre les paquets, lisez le message d'erreur pour connaître l'ordre d'installation. Par exemple si l'erreur est “paquet “A” dépend de paquet “B” mais celui-ci n'est pas installé”, installez le paquet “B” et recommencez.

Quand tout ça est terminé, il reste à initialiser le fichier /etc/X11/xorg.conf avec :

# aticonfig --initial

et redémarrer (le serveur graphique uniquement, ou carrément le système, selon les goûts…).

À noter que l'installateur dispose d'une option d'auto-installation, elle fonctionne parfois, quand ça n'est pas le cas elle peut mettre un joyeux bazar dans votre système… Je ne la conseillerai pas ici.

:!: À chaque mise à jour du noyau, ou des pilotes bien entendu, la procédure est à reprendre… Soyez certains de bien désinstaller la version précédentes.

Les désavantages du non-libre

Le pilote “fglrx” n'est pas libre, ses sources ne sont pas disponibles et les développeurs de Debian ne peuvent rien aux problèmes qui seraient créés par ce pilote… Pas la peine de se plaindre auprès d'eux donc si ça part en cacahouète. Tout au plus pouvez-vous espérer de l'aide sur la procédure d'installation si vous employez la méthode “Debian” (par les dépôts).
Une fois le module installé votre noyau sera marqué “tainted” (“teinté” ou “pollué”), en cas de crash du système cela risquera de compromettre le diagnostique.
Le pilote “fglrx” est notoirement insatisfaisant, il est très souvent en retard sur les versions du noyau, refuse de compiler avec des versions récentes, fonctionne mal avec les effets de bureau “composite” et ne dispose pas d'une accélération video performante… Bref, de bonnes raisons de suivre et de tester régulièrement les pilotes libres, et de soutenir leur développement.

Amusez-vous bien !

Liens

Pilotes libres “ati”/“radeon” :

Pilote non-libre “fglrx” :

—- Retour à la page Debian

debian/debian_ati.txt · Dernière modification : 2018/11/17 12:52 de 127.0.0.1