Gráfica ATI (o como volver al driver libre radeon).

Disclaimer: La idea de éste post es ahorrarle trabajo al próximo incauto que crea que volver al driver libre después de haber usado el privativo es solo coser y cantar, y no me hago responsable de lo que rompas en tu equipo.

Imagen Radeon

Como me gusta Liquorix y probar de vez en cuando como funciona mi equipo con nuevos planificadores,(como el archiconocido Brain Fuck Scheduler de Con Kolivas), he decidido que no puedo seguir con el controlador privativo que muy gentilmente proporciona la gente de AMD, ya que el mismo falla con sus DKMS cada dos por tres si nos salimos del “estándar” por lo que he preferido sacrificar un poco de potencia gráfica por funcionalidad, (que eso de que no funcione la interfaz gráfica cada vez que hay un cambio de kernel suele acaba con la paciencia de cualquiera).

En mi caso al ser mi tarjeta gráfica una vieja ATI HD 5550, usaba el controlador fglrx que viene en los repositorios de Debian que me proporcionaba unos 3000 fps en promedio (pero que el de la página compilado tampoco va a logra mejores resultados), por lo que para desinstalar y estar seguro de que no queda nada en el equipo que huela a controlador privativo AMD/ATI hay que hacer lo siguiente:


  sudo apt-get remove --purge glx-alternative-fglrx fglrx*
  sudo apt-get install --reinstall glx-alternative-mesa libegl1-mesa libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core
  sudo dpkg-reconfigure xserver-xorg


Note: Si no está instalado mesa, pues lo instalan, que hay que darle aceleración 3D al equipo y solo con el driver no es suficiente.

Luego reinicias y si te das cuenta que las cosas van muy mal es porque las personas de AMD son muy simpáticas y se han encargado de colocar el driver libre radeon entre la lista negra de los módulos que no debe cargar nunca para siempre el kernel Linux y aunque hayas desinstalado el driver privativo te han dejado la joya ahí para que pienses que era mejor dejar todo como estaba, para eliminar esto tienes que borrar o comentar la linea o el archivo siguiente:

/etc/modprobe.d/blacklist-fglrx.conf

Si no lo borras debe quedar así:

# Advanced Micro Devices, Inc.
# radeon conflicts with AMD Linux Graphics Driver
#blacklist radeon

Vuelves a reiniciar y en mi caso al volver a usar glxgears las fp no subían de 60, y el scroll en las páginas web iba a trompicones,  por lo que leyendo un poco supe que había que hacer un xorg.conf de forma manual porque estaban quedando flecos en la configuración automática que dejaba mucho que desear por lo tanto creé una ruta y un archivo como el siguiente:

sudo vim /etc/X11/xorg.conf.d/20-radeon.conf

Note: Si por casualidad existe un /etc/X11/xorg.conf y el mismo no está vacío os recomiendo renombrarlo.

Luego el archivo lo rellenamos con la configuración siguiente (funciona con seguridad en los redwood):


Section "Device"
        Identifier  "Isma controla"
        Driver  "radeon"
        Option  "SWcursor"              "0" #software cursor might be necessary on some rare occasions, hence set off by default
        Option  "EnablePageFlip"        "1"  #supported on all R/RV/RS4xx and older hardware, and set on by default
        Option  "AccelMethod"           "EXA" #valid options are XAA, EXA and Glamor. Default value varies per-GPU.
        Option  "RenderAccel"           "1"  #enabled by default on all radeon hardware
        Option  "ColorTiling"           "1"  #enabled by default on RV300 and later radeon cards.1/0 Increases 3D performance substantially
        Option  "EXAVSync"              "0" #default is off, otherwise on. Only works if EXA activated
        Option  "EXAPixmaps"            "1"  #when on icreases 2D performance, but may also cause artifacts on some old cards. Only works if EXA activated
        Option  "AccelDFS"              "1"  #default is off, read the radeon manpage for more information
        Option  "DRI"                   "1"  #https://www.illumos.org/attachments/131/xorg.conf
        Option  "MigrationHeuristic"    "greedy" #Evita que el scroll en la aceleración 2D vaya lento.
EndSection

Section "Module"
        Load    "dbe"
        Load    "ddc"
        Load    "dri"                           # importante para la aceleración
        Load    "extmod"
        Load    "freetype"
        Load    "glx"
        Load    "bitmap"
        Load    "int10"
        Load    "vbe"
EndSection

Section "DRI"
        Mode    0666                            #http://www.esdebian.org/wiki/graficas-ati
EndSection

Section "Extensions"
        Option  "Composite"             "Enable"
EndSection


Para finalizar activamos KMS para que se cargue desde el inicio para ello agregamos radeon en /etc/modules y modificamos o creamos el archivo /etc/modprobe.d/radeon-kms.conf con lo siguiente:

options radeon modeset=1

Al finalizar si lo hemos hecho todo bien reiniciamos y ejecutamos el siguiente script para ver si hay alguna diferencia:

grep VGA /proc/pci || lspci | grep VGA | colrm 1 4 ; 
egrep "model name|MHz" /proc/cpuinfo ; 
xdpyinfo | egrep "version:|dimensions|depth of" ; 
glxinfo | egrep -A2 "direct rendering|OpenGL vendor" ; 
uname -sr ; 
vblank_mode=0 glxgears & sleep 30 ; killall glxgears

Que en mi caso he subido a 2500fps un poco más bajo que con el controlador privativo pero casi unas 50 veces mejor que en el caso original.
Note: Para usar glxgears tiene que estar instalado mesa-utils

 

 

References:
https://wiki.archlinux.org/index.php/ATI#Enable_early_KMS
http://www.esdebian.org/wiki/graficas-ati#3
http://www.free3d.org/
https://wiki.ubuntu.com/X/Troubleshooting/VideoDriverDetection#Problem:Need_to_purge-fglrx

 

glxgears [-info] [-display displayname]

 

 
Licencia:
https://creativecommons.org/licenses/by-sa/4.0/
by-sa

3 comments

  1. Hola, he llegado aquí buscando como mejorar el rendimiento de mi vieja Radeon Mobility X1600, en Lubuntu 14.04, ya que también me da como resultado 60 fps en glxgears (700 fps en modo nomodeset) y tengo problemas con el video en youtube a pantalla completa, por ejemplo. He seguido tu tuto pero no he visto nada diferente. La parte de crear “sudo vim /etc/X11/xorg.conf.d/20-radeon.conf” la carpeta xorf.conf.d no existe y “agregamos radeon en /etc/modules” no entiendo bien que hay que hacer. No puedo instalar los drivers privativos ya que hace medio siglo que no tiene soporte la tarjeta.
    Creo que hay algun problema en la configuración de la tarjeta y estas configuraciones manuales tengo la sensación de que van a solucionar el problema.
    Espero que puedas ayudarme, un saludo!

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *