Configurar una ATI Radeon en Debian GNU/Linux
September 4th, 2005
Últimamente he estado tratando de hacer funcionar la aceleración 3D de mi nueva tarjeta gráfica, una ATI Radeon 9550. Teóricamente deberÃa haber sido fácil, desde la página de ATI te bajas el instalador y entre las opciones que tiene, una de ellas es generar paquetes especÃficos para Debian. El problema es que no importa que el instalador tenga éxito o no, siempre te dirá que el proceso ha sido un éxito. El segundo problema es que la información en cristiano es más bien cero y en inglés poco más. Por ello este mini-tutorial.
Qué debemos hacer y qué necesitamos:
- Desinstalar todo lo relacionado con nvidia
Si, como era mi caso, tu anterior tarjeta era una nvidia, desinstálala ahora mismo, te ahorrará muchos quebraderos de cabeza más adelante. Para ello, ejecuta:/usr/bin/nvidia-installer --uninstall
- Fuentes del kernel
Necesitarás las fuentes del kernel para poder compilar el módulo que necesitamos. Si has compilado tu propio kernel esto no es ningún problema, si no, si estas usando un kernel de Debian, puedes obtener los paquetes ya creados de la página de Flavio Stanchina (está en inglés) - Opciones del kernel
Tu kernel debe estar compilado con las siguientes opciones, de lo contrario tendrás problemas bien al compilar, bien al intentar cargar el módulo:- CONFIG_MODULES=y
- CONFIG_MODULE_UNLOAD=y
- CONFIG_KMOD=y
- # CONFIG_MODVERSIONS is not set
- CONFIG_MTRR=y
- CONFIG_AGP=m
- CONFIG_AGP_chipset=m
- CONFIG_DRM=m
- CONFIG_DRM_RADEON=m
- # CONFIG_FB is not set
- # CONFIG_FB_RADEON is not set
- CONFIG_TMPFS=y
- Obtener el instalador y generar los paquetes
Para ello primero debes descargar el instalador de la página de ATI. Teniendo en cuenta si tienes instalado el servidor de X de XFree para i386, de XFree para ia64 o de XOrg, deberás bajarte un instalador u otro. Bájate el archivo .run que es el que te permitirá crear los páquetes para debian.
Una vez descargado, ejecútalochmod u+x ati-driver-installer-8.16.20-i386.run ./ati-driver-installer-8.16.20-i386.run
Por supuesto, es probable que en tu caso, la versión del archivo cambie, usa el sentido común
Selecciona la opción generar paquetes para una distribución especÃfica y elige tu versión de Debian, en mi caso Debian/unstable, en el tuyo la que tengas instalada.
Los paquetes que crea estarán en el directorio /tmp. - Instalar los paquetes
De los cinco paquetes que aparecen en el directorio /tmp, sólo dos son fundamentales y son los que instalaremosdpkg -i /tmp/fglrx-driver_8.16.20-1_i386.deb dpkg -i /tmp/fglrx-kernel-src_8.16.20-1_i386.deb
- Compilar el módulo del kernel e instalarlo
Primero eliminamos cualquier fuente del driver que pudiesemos tener de pruebas anteriores, ejecutandorm -rf /usr/src/modules/fglrx*
Después descomprimimos las fuentes del módulo (sabemos que están ahà porque se han creado al instalar el paquete fglrx-kernel-src_8.16.20-1_i386.deb en el paso anterior).
cd /usr/src tar xjf fglrx.tar.bz2
Para compilar el módulo hay tantos métodos como formas de compilaar el kernel, yo siempre recomiendo hacerlo The Debian Way, es decir usando el comando make-kpkg. Para ello iremos al directorio con las fuentes del núcleo y crearemos un paquete con el módulo
cd linux make-kpkg --added-modules fglrx modules_image
Es probable, que, según con que opciones compilases tu kernel, necesites añadir bien –append-to-version “[nombre]“, bien –revision “[revision]” o incluso ambas opciones.
El paquete generado estará en el directorio /usr/src, lo instalamos como siempre condpkg -i fglrx-[version].deb
Por último, hemos de cargarlo con
modprobe fglrx
Si tienes algún problema ejecuta dmesg y actua en consecuencia, lo más usual es que tengas cargado algún otro módulo de drm. Puedes ver los módulos que tienes cargados con lsmod.
- Configura las X
Edita el fichero de configuración /etc/X11/XF86Config-4 (o el fichero de configuración de XOrg [/etc/X11/xorg.conf] si es lo que usas tú) y asegurate que en la seccion Device tienes en la lÃnea Driver la cadena “fglrx”. Por ejemploSection "Device" Identifier "ATI_Radeon" Driver "fglrx"
Reinicia las X y ejecuta
glxinfo
Debes obtener algo parecido a
name of display: :0.0 display: :0 screen: 0 direct rendering: Yes server glx vendor string: SGI server glx version string: 1.2 server glx extensions: GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context client glx vendor string: ATI client glx version string: 1.3 client glx extensions: GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context, GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_ATI_pixel_format_float, GLX_ATI_render_texture
Referencias. La mayorÃa de la información necesaria para crear este tutorial viene de diversos foros, y de la página de Flavio Stanchina y de Gentoo ATI Radeon FAQ. Ambas páginas en inglés-]]>











