Installation des pilotes ATI fglrx
Installation des drivers ATI (fglrx) version rpm
A la rédaction de cet article, la dernière version est la 8.10.19 ; elle s'installe bien sur un noyau 2.6.10 (aucun warning), mais pas sur un 2.6.11 !
Téléchargement des drivers
Avant de télécharger les drivers, vous devez connaître la version du serveur X que vous utilisez.
Pour le savoir, tapez la commande :
X Window System Version 6.8.2
Release Date: 9 February 2005
X Protocol Version 11, Revision 0, Release 6.8.2
Build Operating System: Linux 2.6.8.1-24mdksmp i686 [ELF]
Current Operating System: Linux ceric35 2.6.8.1-24mdk #1 Tue Mar 8 18:31:13 CET 2005 i686
Build Date: 08 March 2005
Before reporting problems, check http://wiki.X.Org
to make sure that you have the latest version.
Module Loader present
Ici, la version utilisée est Xorg 6.8, mais la vôtre peut être différente (XFree 4.3 , par exemple)
Exception : si la version de votre serveur X est Xorg 6.7, vous devez télécharger et installer les drivers pour XFree 4.3.
Connectez-vous ensuite sur le site d'ATI : http://www.ati.com/ et téléchargez la version des drivers correspondants à la version de votre serveur X et à la version de votre processeur (32 bits ou 64 bits).
Installation des sources du noyau
Pour poursuivre l'installation, vous devez installer les sources correspondants au noyau que vous utilisez.
Installation
Tout d'abord, tapez la commande uname -r
pour savoir quelle version du noyau vous utilisez ; par exemple 2.6.8.1-24mdk. Vous devez donc installer les sources correspondant à cette version !
Cependant, sur ce point cela dépend des distributions.
Exemple : Sous mandrake, la commande urpmi kernel-source-2.6
installe les sources du noyau.
Vérification
Ensuite assurez-vous que la commande ls -l /usr/src
contient un lien nommé "linux" pointant sur les sources correspondant au noyau trouvé avec la commande précédente !
Exemple :
total 20
lrwxrwxrwx 1 root root 17 fév 28 09:03 linux -> linux-2.6.8.1-24mdk/
drwxr-xr-x 21 root root 4096 fév 28 09:03 linux-2.6.8.1-24mdk/
drwxrwxr-x 19 root root 4096 mar 8 18:31 linux-2.6.11/
drwxr-xr-x 3 root root 4096 fév 9 22:09 RPM/
Installation des drivers
Vous pouvez maintenant installer les drivers à l'aide de la commande :
########################################### [100%]
########################################### [100%]
Rendez-vous ensuite dans le dossier /lib/modules/fglrx et verifiez que le fichier fglrx.ko et bien ete généré (dans le cas d'une mise à jour verifiez que la date de modification est la date actuelle) :
drwxr-xr-x 4 root root 4096 mar 9 19:43 build_mod/
-rw-r--r-- 1 root root 297690 mar 9 19:14 fglrx.2.6.8.1-24mdk.ko
lrwxrwxrwx 1 root root 17 mar 9 19:44 fglrx.ko -> ./fglrx.2.6.8.1-24mdk.ko
-rw-r--r-- 1 root root 4105 mar 9 19:14 make.2.6.8.1-24mdk.log
-r--r--r-- 1 root users 10157 jan 4 01:05 make_install.sh
Si le fichier est absent : Déplacez-vous dans le dossier /lib/modules/fglrx/build_mod et entrez la séquence suivante :
# cd ..
# sh make_install.sh
Cela a pour effet de compiler et d'installer le module (vérifiez que la compilation ne produit pas d'erreurs) !
Enfin, vous pouvez vérifier que le driver a bien été installé en tapant : find /lib/modules -name "fglrx.ko"
; la ligne suivante doit au moins apparaître :
fglrxconfig
ATI fournit un utilitaire fglrxconfig pour générer le fichier de configuration de votre serveur graphique. Il demande divers renseignements sur votre clavier, votre souris, etc ...
Certaines questions n'étant pas évidentes, voici un exemple de configuration :
==============================================================================
ATI - FIRE GL - BE THE CREATOR
==============================================================================
This program will create the ATI "xorg.conf" file
- based on your selections - for the below listed boardtypes...
- ATI Radeon 8500 / 9100
- ATI FireGL 8700 / 8800 / E1
- ATI FireGL T2
- ATI Radeon 9000
- ATI Radeon 9200
- ATI Radeon 9500
- ATI Radeon 9600
- ATI Radeon 9700
- ATI Radeon 9800
- ATI FireGL Z1 / X1 / X2
- ATI Mobility M9
- ATI Mobility FireGL 9000
- ATI Mobility M9PLUS
The "xorg.conf" file usually resides in /etc/X11.
Press [Enter] to continue, press 'q'&[Enter] or [Ctrl]+'c' to abort.
==============================================================================
Mouse
==============================================================================
Specify the mouse port type. Choose one from the following list:
1. Serial Port
2. PS/2 or USB with PS/2 protocol
3. Inport Bus
Enter the number for your port type: [2] 2
Specify the mouse model. Choose one from the following list:
1. PS/2 Mouse (X11 generic ps/2 mouse driver)
2. PS/2 Wheel Mouse (X11 generic ps/2 wheel mouse driver)
3. Microsoft Intellimouse (PS2)
4. Microsoft IntelliMouse Explorer (PS2)
5. Kensington ThinkingMouse (PS2)
6. Logitech MouseManPlus (PS2)
7. Alps Glidepoint PS/2 Touchpad
8. Genius NetMouse
9. Genius NetScroll
Enter the number for your mouse model: [2] 2
If your mouse has only two buttons, it is recommended that you enable
Emulate3Buttons.
Do you want to enable Emulate3Buttons (y/n)? [n] n
Now give the full device name that the mouse is connected to, for example
/dev/tty00 or /dev/mouse or /dev/psaux (includes IBM Laptops).
Mouse device: [/dev/input/mice] /dev/input/mice
==============================================================================
Keyboard
==============================================================================
Please select one of the following keyboard types that is the better
description of your keyboard. If nothing really matches,
choose 1 (Generic 101-key PC)
1. Generic 101-key PC
2. Generic 102-key (Intl) PC
3. Generic 104-key PC
4. Generic 105-key (Intl) PC
5. Dell 101-key PC
6. Everex STEPnote
7. Keytronic FlexPro
8. Microsoft Natural
9. Northgate OmniKey 101
10. Winbook Model XP5
11. Japanese 106-key
12. PC-98xx Series
Enter a number to choose the keyboard type: [1] 4
Please select the layout corresponding to your keyboard
1. U.S. English
2. U.S. English w/ISO9995-3
3. Belgian
4. Bulgarian
5. Canadian
6. Czechoslovakian
7. German
8. Swiss German
9. Danish
10. Spanish
11. Finnish
12. French
13. Swiss French
14. United Kingdom
15. Hungarian
16. Italian
17. Japanese
18. Norwegian
Press [Enter] for the next page or
enter the number for your keyboard layout country: 12
==============================================================================
FireGL Display Settings
==============================================================================
Quad Buffer Stereo ("Active Stereo"):
This driver does support Quad Buffer Stereo ("Active Stereo")
in combination with a CRT monitor (refresh rate abt. 100 to 120 Hz)
and the appropiate stereo viewing subsystem hardware. This can be
e.g. a shutter glasses system (infrared or wired) or an active
polarisation device paired with passive stereo polarization glasses.
Do you want to enable "Quad Buffer Stereo" (y/n)? [n] n
==============================================================================
TV out Configuration
==============================================================================
Do you want to enable TV out (y/n)? [n] n
==============================================================================
FireGL Screen Layout
==============================================================================
------------------------------------------------------------------------------
| Maximum resolution for OpenGL operation
|
| - R200 chip family (Radeon 8500-9100 Pro, FireGL 8700/8800/E1):
| 2048x2048
| - R300 chip family (Radeon 9500-9700 Pro, FireGL T2/Z1/X1/X2):
| 2560x2560
------------------------------------------------------------------------------
Choose configuration from the list below
1. Single Head (1 screen, second dark)
2. Laptop Mode (Ability to toggle between internal / external screen)
3. Clone Mode (2 screens - same content)
4. Big Desktop (2 screens - one framebuffer)
5. Dual Head (2 screens - two drivers)
Enter the number for your configuration: [1] 1
==============================================================================
Single Head selected
==============================================================================
==============================================================================
Monitor Settings
==============================================================================
Now we want to set the specifications of the monitor(s). The two critical
parameters are the vertical refresh rate, which is the rate at which the
the whole screen is refreshed, and most importantly the horizontal sync rate,
which is the rate at which scanlines are displayed.
The valid range for horizontal sync and vertical sync should be documented
in the manual of your monitor. If in doubt, check the monitor database
/usr/X11R6/lib/X11/doc/Monitors to see if your monitor is there.
Press [Enter] to continue, press 'q'&[Enter] or [Ctrl]+'c' to abort.
You must indicate the horizontal sync range of your monitor. You can either
select one of the predefined ranges below that correspond to industry-
standard monitor types, or give a specific range.
It is VERY IMPORTANT that you do not specify a monitor type with a horizontal
sync range that is beyond the capabilities of your monitor. If in doubt,
choose a conservative setting.
hsync in kHz; monitor type with characteristic modes
1. 31.5 ; up to 640x480 @ 60 Hz (VGA)
2. 31.5 - 37.9; up to 800x600 @ 60 Hz (SVGA)
3. 31.5 - 48.4; up to 1024x768 @ 60 Hz (XGA)
4. 31.5 - 60.0; up to 1024x768 @ 75 Hz (XGA)
5. 31.5 - 68.7; up to 1024x768 @ 85 Hz (XGA)
6. 31.5 - 80.5; up to 1280x1024 @ 75 Hz (SXGA)
7. 31.5 - 91.1; up to 1280x1024 @ 85 Hz (SXGA)
8. Enter your own horizontal sync range
Enter your choice (1-8): [1] 6
You must indicate the vertical sync range of your monitor. You can either
select one of the predefined ranges below or give a specific range.
1. 20 - 60 (e.g. slow scan flat panels with DVI cable)
2. 50 - 70 (VGA)
3. 60 - 75
4. 60 - 85
5. 60 - 100
6. Specify your own vertical sync range
Enter your choice: [1] 3
==============================================================================
Display Modes
==============================================================================
The default resolution that the server will start-up with will be the first
listed mode that can be supported by the monitor and card.
Currently it is set to:
"640x480" for 24-bit
Modes that cannot be supported due to monitor or clock constraints will
be automatically skipped by the server.
1. Change the modes for 24-bit (24-bit color)
2. The modes are OK, continue.
Enter your choice: 1
Select your modes from the following list:
1 "640x480"
2 "800x600"
3 "1024x768"
4 "1152x864"
5 "1280x960"
6 "1280x1024"
7 "1400x1050"
8 "1600x1200"
9 "1792x1344"
Please list the digits and characters for the modes that you want to use.
For example, '632' selects "1280x1024" "1024x768" "800x600", with
the default mode of "1280x1024".
Which modes do you want? 632
The default resolution that the server will start-up with will be the first
listed mode that can be supported by the monitor and card.
Currently it is set to:
"1280x1024" "1024x768" "800x600" for 24-bit
Modes that cannot be supported due to monitor or clock constraints will
be automatically skipped by the server.
1. Change the modes for 24-bit (24-bit color)
2. The modes are OK, continue.
Enter your choice: 2
You can have a virtual screen (desktop), which is screen area that is larger
than the physical screen and which is panned by moving the mouse to the edge
of the screen. The largest resolution in the modelist is used for any of the
listed resolution with less dimensions. Each color depth can have a
differently-sized virtual screen. Virtual screens resolutions are set
for each color depth separately.
Note: This grafics adapter will always select the maximum
x and y resolution as the default virtual desktop resolution.
This complies with general X11 specifications. see "man XF86Config".
Do you want to use a virtual desktop where the dimensions are bigger
than your maximum x and y screen resolution? (y/n) [n] n
==============================================================================
Direct Rendering Interface Restrictions
==============================================================================
Please specify which restriction sheme you want to implement:
1. no restrictions - any user has access to the OpenGL ICD
2. limited to group 'users' - only group members can access the OpenGL ICD
3. limited to group 'root' - only group members can access the OpenGL ICD
4. limited to group 'video' - only group members can access the OpenGL ICD
5. limited to group 'dri' - only group members can access the OpenGL ICD
Enter the number for your default user restrictions: [1] 1
==============================================================================
Application Profiles
==============================================================================
Please select application specific profile:
1. Default
2. Individual Configuration of Capabilities
3. Maya
4. SOFTIMAGE|XSI
5. SOFTIMAGE|3D
6. Houdini 4.0
7. Houdini 5.0
8. Houdini 5.5
Enter the number for your profile: [1] 1
==============================================================================
Advanced Graphics Features Settings
==============================================================================
Do you want to initialize xfree86-dga (y/n)? [n] y
Do you want to export pseudo color visuals (y/n)? [n] n
Do you want to synchronize buffer swaps
with the vertical sync signal (y/n)? [n] n
==============================================================================
Full Scene Anti Aliasing (FSAA)
==============================================================================
Please select multi sample visuals you want to share:
1 = All (Visuals for 2,4 and 6 Samples per Pixel)
2 = Visuals for 2 Samples per Pixel
4 = Visuals for 4 Samples per Pixel
6 = Visuals for 6 Samples per Pixel
Please enter: [1] 1
Do you want to force multi sample visuals
for every OpenGL application? (y/n)? [n] n
Disable FSAA Gamma (y/n)? [n] n
Customize FSAA Multi Sample Position (y/n)? [n] n
==============================================================================
Advanced OS Settings
==============================================================================
External AGPGART module:
It is possible (but not recommended) to turn off the usage of
built-in agp support of the provided fglrx kernel module and
use the external AGP GART module (agpgart.o) of the Linux kernel.
If you want to use the external module then ensure that it loads
prior to the drivers full startup. In order to manually load the
external agpgart module execute this on the commandline (as root):
/sbin/insmod agpgart
or alternatively configure your system to auto load the module.
Do you want to use the external AGP GART module (y/n)? [n] y
AGP Locked User Pages
The grafics driver is able to read and write textures and bitmaps trough AGP
mapped and locked views of the main memory for the application's mem space.
Performing those mapping task depends on several successfull interaction steps
with the Linux kernel. A failure in this process might lead to some messages
in the kernel log. If these kernel functions are failing silently or in case
of other heavy incompatibility (e.g. a new kernel memory manger) then there
is a high chance that the system will hang as soon as the graphics adpater
wants to read from assumed but nor really mapped memory location.
If you do see that the advanced fgl_glxgears application halts your session
whilst the simple glxgears does run nicely then please disable this feature.
If you do see lots of notifications about failed kernel calls for mem locking
then please disable this feature and re-check the kernel message log.
Do you want to enable "AGP Locked User Pages" (y/n)? [y] y
TLS Method: *** this only applys to the FireGL workstation boards ***
The grafics driver supports two different methods of thread local storage.
The first method is fast but might immediately abort when used with
WineX, VM emulators or some other advanced programming tools.
The second method is up to 10% slower in a few rendering cases
but does nicely cope with any sort of exotic software.
For more details on this topic, please see the readme.
If not totally sure about your needs, then please select "0 - default".
0 - default (FireGL workstation boards: fast)
1 - fast operation (only for standard gnu C/C++ OpenGL applications)
2 - compatible operation (for WineX, VM emulators and some profilers)
Which storage method do you want to use? [0] 0
==============================================================================
Finish
==============================================================================
I am going to write the xorg.conf file now. Make sure you don't accidently
overwrite a previously configured one.
Do you want it written to the current directory as 'xorg.conf'? (y/n) y
Configuration et test
Passons maintenant à la configuration !
Chargement du module au demarrage
Editez le fichier /etc/modprobe.preload et ajoutez-y la ligne "fglrx".
Ce fichier doit aussi normalement contenir le nom du pilote du chipset de votre carte graphique.
Tapez /sbin/lsmod|grep "agp"
pour le déterminer.
Exemple :
fglrx
Lancement du driver
Tapez maintenant la commande :
Si le message "FATAL: Module fglrx not found." apparaît, c'est que l'installation s'est mal déroulée.
Redémarrage de la session
Vous pouvez maintenant relancer votre session !
Pour vous assurer de l'installation, la commande fglrxinfo
doit citer ATI et le nom de votre carte !
Exemple :
display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON 9200SE DDR Generic
OpenGL version string: 1.3.4893 (X4.3.0-8.10.19)
Quelques Bugs
"no kernel module build environment"
Si ce message apparaît lors de la compilation , c'est que les sources du noyau sont mal installées!
"conflicts with file from package ..."
Vérifiez que vous installez les drivers avec les options -Uh --force.
Erreur dans le fichier de log
Le fichier de log (/var/log/Xorg.0.log pour Xorg) contient :
Le module agpgart n'est probablement pas chargé.
Plus d'information sur le site d'ATI (en anglais) : rechercher "agpgart".
Ce probléme (signalé par diancech) est du à POSIX . Pour le résoudre, vous devez activer "POSIX shared memory".
Voici la marche à suivre (traduction de la version en anglais sur le site d'ATI)
Ajouter la ligne suivante dans le fichier /etc/fstab :
Montez "POSIX shared memory" :
Ensuite , tapez la commande mount | grep "shm"
, si tout s'est bien passé, la ligne suivante devrait apparaître :
Autre ressources
ATI Proprietary Linux Driver FAQ : http://www.ati.com/products/catalyst/linux.html.