Absence d'accélération 3D sur ATI Radeon 7500 sous Wheezy

Bonjour à tous,

Après moultes recherches sur le web, je n’ai pu trouver de solution à mon problème d’accélération 3D sur mon portable ThinkPad T42. Je me tourne donc vers vous pour essayer de le régler.

Mon ordinateur est donc un ThinkPad T42 qui tourne sous une Wheezy à jour, dont la carte graphique est une ATI Radeon 7500 :

$ uname -a
Linux thinkpad 3.2.0-4-486 #1 Debian 3.2.51-1 i686 GNU/Linux

$ lspci | grep VGA
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RV200 [Mobility Radeon 7500]

J’ai bien installé les firmware-nonfree, et le pilote Radeon est présent :

# apt-cache policy xserver-xorg | grep "*"
 *** 1:7.7+3~deb7u1 0

# apt-cache policy xserver-xorg-video-radeon | grep "*"
 *** 1:6.14.4-8 0

# apt-cache policy firmware-linux-nonfree | grep "*"
 *** 0.36+wheezy.1 0

Malheureusement l’accélération n’est pas matériel mais logiciel

$ glxinfo | grep renderer
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 0x209)

Voici quelques extraits de dmesg et de mon log Xorg si cela peut servir.

[code]
$ dmesg | grep -e drm -e radeon
[ 7.565780] [drm] Initialized drm 1.1.0 20060810
[ 8.501814] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
[ 8.501823] [drm] No driver support for vblank timestamp query.
[ 8.501834] [drm] Initialized radeon 1.33.0 20080528 for 0000:01:00.0 on minor 0
[ 28.580049] [drm] Setting GART location based on new memory map
[ 28.581166] [drm] Loading R100 Microcode
[ 28.761267] platform radeon_cp.0: firmware: agent loaded radeon/R100_cp.bin into memory
[ 28.761385] [drm] writeback test succeeded in 1 usecs

$ cat /var/log/Xorg.0.log | grep -e radeon -e drm -e AIGLX
[ 26.371] (==) AIGLX enabled
[ 26.435] (II) LoadModule: “radeon”
[ 26.436] (II) Loading /usr/lib/xorg/modules/drivers/radeon_drv.so
[ 26.497] (II) Module radeon: vendor=“X.Org Foundation”
[ 26.659] (II) [KMS] drm report modesetting isn’t supported.
[ 26.744] drmOpenDevice: node name is /dev/dri/card0
[ 26.745] drmOpenDevice: open result is 9, (OK)
[ 26.746] drmOpenByBusid: Searching for BusID pci:0000:01:00.0
[ 26.746] drmOpenDevice: node name is /dev/dri/card0
[ 26.747] drmOpenDevice: open result is 9, (OK)
[ 26.747] drmOpenByBusid: drmOpenMinor returns 9
[ 26.747] drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0
[ 28.313] drmOpenDevice: node name is /dev/dri/card0
[ 28.314] drmOpenDevice: open result is 9, (OK)
[ 28.314] drmOpenDevice: node name is /dev/dri/card0
[ 28.314] drmOpenDevice: open result is 9, (OK)
[ 28.314] drmOpenByBusid: Searching for BusID pci:0000:01:00.0
[ 28.314] drmOpenDevice: node name is /dev/dri/card0
[ 28.314] drmOpenDevice: open result is 9, (OK)
[ 28.314] drmOpenByBusid: drmOpenMinor returns 9
[ 28.314] drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0
[ 28.314] (II) [drm] DRM interface version 1.4
[ 28.315] (II) [drm] DRM open master succeeded.
[ 28.315] (II) RADEON(0): [drm] Using the DRM lock SAREA also for drawables.
[ 28.315] (II) RADEON(0): [drm] framebuffer handle = 0xe0000000
[ 28.315] (II) RADEON(0): [drm] added 1 reserved context for kernel
[ 28.315] (II) RADEON(0): [drm] installed DRM signal handler
[ 28.335] (II) RADEON(0): [drm] register handle = 0x28020000
[ 28.761] (II) RADEON(0): [drm] Added 32 65536 byte vertex/indirect buffers
[ 28.762] (II) RADEON(0): [drm] Mapped 32 vertex/indirect buffers
[ 28.762] (II) RADEON(0): [drm] dma control initialized, using IRQ 11
[ 28.762] (II) RADEON(0): [drm] Initialized kernel GART heap manager, 5111808
[ 32.366] (II) AIGLX: Screen 0 is not DRI2 capable
[ 32.366] drmOpenDevice: node name is /dev/dri/card0
[ 32.366] drmOpenDevice: open result is 10, (OK)
[ 32.367] drmOpenByBusid: Searching for BusID pci:0000:01:00.0
[ 32.367] drmOpenDevice: node name is /dev/dri/card0
[ 32.367] drmOpenDevice: open result is 10, (OK)
[ 32.367] drmOpenByBusid: drmOpenMinor returns 10
[ 32.367] drmOpenByBusid: Interface 1.4 failed, trying 1.1
[ 32.367] drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0
[ 32.532] (EE) AIGLX error: radeon does not export required DRI extension
[ 32.532] (EE) AIGLX: reverting to software rendering
[ 33.419] (II) AIGLX: Loaded and initialized swrast[/code]

Si je comprends bien, il me dit que m’ont écran is not DRI2 capable et que donc il passe en rendu logiciel.
Ce qui est assez gênant, je n’ai pas le Gnome-Shell et je ne peux jouer aux jeux 3D :confused:

Quelqu’un saurait-il comment résoudre ce problème ?

Merci par avance,
Philippe.

Et as tu également essayé le pilote propriétaire fglrx ?

Il n’est plus supporter, la page du wiki dit d’installer le pilote Radeon (qui est sensé prendre en charge correctement la carte selon le site de xorg), mais surtout je ne veux pas de pilote non-libre : un firmware c’est déjà assez suffisant comme ça :wink:

Houla oui en effet c’est une très vieille carte…à mon avis il n’y a pas de chance d’obtenir gnome-shell avec.

Certes la carte est vieille mais quand même, elle possède une accélération 3D matérielle qui ne fonctionne pas sous Wheezy.

Sur le site X.org dans la gestion de la 3D on peut lire :

Sur la page dédiée aux programmes testés en 3D, SupertTuxKart est signalé comme platinium et ça lag tellement que je ne peux y jouer.

Mais selon ce rapport de bug, cela semblerai être du au passage vers Wheezy.
Apparemment, il fallait avant lancer le noyau avec une option de modeset sur le pilote radeon, mais même cela ne fonctionne plus maintenant.
Affaire à suivre.
Si quelqu’un à des idées…

Ma remarque ne sera pas très utile, mais juste pour compléter, le rapport de bug que tu cites est le suivant: #707902
… et ne concerne pas tout à fait le même chipset:

01:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI RV100 QY [Radeon 7000/VE] [1002:5159]

Comment ça se passe en supprimant firmware-linux-nonfree ?

Problème résolu !! :smiley:

En fait cela vient du KMS (Kernel Mode Setting).
Afin d’avoir accès au fonction de rendu direct (dri et dri2), il faut passer par une gestion dans le noyau et non dans l’espace utilisateur.
Pour cela, on crée un fichier /etc/modprobe.d/radeon-kms.conf et on met dedans :

ce qui revient à lancer le noyau avec l’option radeon.modeset=1

Ce mode permet aussi d’avoir les terminaux virtuels dans une plus grande résolution, et les passages entre terminaux virtuels sont plus rapides.

À cause d’une ancienne configuration, ce mode était désactivé dans mon fichier radeon-kms.conf.

Bon ! Supertuxkart plante direct au démarrage, pas de gnome-shell (carte sans doute trop vieille, bien qu’elle soit OpenGL 1.3 compliant et que ce devrait être suffisant), mais j’ai au moins un rendu matériel et non logiciel.
Quand je lance glxgears j’ai les fps alignés sur le taux de rafraîchissement de mon écran, et le cpu ne s’enflamme pas !! \o/

Salut tout le monde,
j ai le meme probleme que toi sur un t40ibm grace a ton topic j ai reussi a active l acceleration 3d mais je n arrive pas a changer la resolution
peux tu me filer ton fichier xorg.conf ? :slightly_smiling:
merci