Personaliza con Geeks & Linux Atelier!:

ATI Logo

Antes de comenzar, y lamento ser aguafiestas, es que para los que gozamos de un Inspiron 1501 con una ATI Radeon Xpress o varias otras tarjetas de video compatibles con DX9, ATI nos ha tirado al olvido. Así es, la compañía optó por mover estos drivers a lo que se conoce como legacy, es decir, drivers que ya no serán actualizados para poder enfocarse mejor en las nuevas tecnologías. Así es como que el último driver compatible es el Catalyst 9.3 (al momento de escrbir esto van en la 9.5). Me parece lamentable puesto que mi equipo tiene 2 años de antigüedad, no creo que sea tan viejo como para que sus drivers dejen de actualizarse. Como sea, eso no es lo peor de todo…

Lo peor de todo es que Canonical está haciendo lo mismo que tanto nos molesta de Microsoft – forzarnos a actualizar el hardware -. Esto como es de esperarse se debe a problemas de dependencias de algunos paquetes. La situación es la siguiente:

  • Jaunty viene con…
    • xorg-driver-fglrx 9.4 (primer problema; no es compatible con nuestra tarjeta de video) y,
    • xserver-common 1.6

El segundo problema aparece cuando nos damos cuenta que el driver anterior de ATI (fglrx 9.3) requiere una versión más vieja de xserver, específicamente la 1.5.x Esto nos lleva al triste desenlace que no hay manera de instalar el driver privativo en Ubuntu 9.04. Intenté instalar la versión anterior (haciendo un downgrade de xserver 1.6 al 1.5.x) desde los repositorios de Intrepid y luego instalar el fglrx, pero no me fue bien. Al final opté por quedarme con Intrepid y esperar hasta que haya alguna solución.

Bueno, así que vamos a recordar la instalación de los 9.3 en nuestro good ol’ Intrepid…

Nota: Este artículo es bastante antiguo y lo he ido actualizando en la medida que los drivers cambiaban. Particularmente los 3 últimos puntos deberían estar bastante obsoletos, pero los dejo por si acaso a alguien les podrían servir :). Ya que hace tiempo que dejé de utilizar GNOME y Compiz, hay muchas cosas relativas a ellas que ya no manejo, así que sería muy bueno que alguien me dijese si no están demás.

El artículo va a constar de varias partes, de manera que puedas acceder rápidamente a lo que estás buscando. Si ya sigues este how-to desde antes te recomiendo que te pases al punto 1.2.1:

  1. Instalación drivers propietarios de ATI 9.3
    1. Método Automático
      1. Ubuntu 8.04 (Hardy Heron) (Sólo versión 8.6)
      2. Ubuntu 8.10 (Intrepid Ibex) (Recomendado)
    2. Método Manual
      1. Desde una versión anterior
      2. Desde cero
  2. Configurando el Driver
  3. Verificando
  4. Compiz Fusion y AIGXL (al parecer ya no es útil, pero la dejo por si acaso)
  5. Suspender (pendiente)
  6. Hibernar (pendiente)

1.Instalación drivers propietarios de ATI 9.3

1.1. Método Automático

La realizaremos a través de una aplicación conocida como Envy, proyecto de Alberto Milone, que funciona como un script, descargará el driver y lo configurará por tí. En teoría realiza los mismo pasos que voy a detallar en la siguiente sección. Por lo que entiendo es bastante seguro, pero la verdad es que no me fío mucho de este tipo de aplicaciones y prefiero hacerlo yo de forma manual. Es más seguro y también sirve para aprender.

1.1.1.Ubuntu Hardy Heron (8.04)

Esta versión de Ubuntu trae en sus repositorios la versión 8.3.

Nota: Esta versión (8.10) no está disponible con EnvyNG, así que lo que a continuación se detalla es respecto al driver 8.6 (en caso de que quieras quedarte con esa versión).

La forma más sencilla es instalar EnvyNG es a través de los repostorios:

  1. Abrimos Synaptic (Sistema > Administración > Gestor de Paquetes Synaptic)
  2. Buscamos el paquete envyng-gtk y lo instalamos
  3. Ejecutamos EnvyNG accecediendo desde Aplicaciones > Herramientas del sistema
  4. Escogemos el driver en cuestión y listo :P.

Sorprendentemente sencillo…

1.1.2. Ubuntu Intrepid Ibex (8.10)

El Gestor de Controladores Restringidos (el nombre del paquete es jockey-gtk) nos alertará que hay un driver y bastaría hacer click y luego instalar. Si estoy en lo correcto, Intrepid ya viene con la versión 9.3 desde los repositorios, por lo que la actualización manual no sería necesaria, pero de todas maneras a algún loco con versionitis o a algún desafortunado le podría ser útil.

1.2. Método Manual

1.2.1. Desde una versión anterior

Si ya tenemos instalado el driver anterior, no tendría mucho sentido realizar todo desde el comienzo, así lo trataré de simplificar un poco.

  1. Revisamos que tengamos todas las aplicaciones necesarias.
    • sudo apt-get install build-essential cdbs fakeroot dh-make debhelper debconf libstdc++5 dkms linux-headers-generic
  2. Descargamos el driver desde la página
    • wget https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-9-3-x86.x86_64.run
  3. Desde una terminal (Aplicaciones > Accesorios > Terminal) y ejecutamos el instalador
    • sh ati-driver-installer-9-3-x86.x86_64.run --buildpkg Ubuntu/intrepid
    • A diferencia de las veces anteriores, nos pedirá instalar algunas dependencias extras
  4. Actualizamos los paquetes
    • sudo dpkg -i xorg-driver-fglrx* fglrx-kernel-source* fglrx-amdcccle*
  5. Si acaso nos sale algo así como: “El distribuidor del paquete ha publicado una versión actualizada [...]“, nos está preguntando por nuestra configuración de Compiz, si queremos mantenerla pulsamos N y si no, pulsamos Y continuamos (hace tiempo que ya no utilizo Compiz, así que no tengo idea si aún aparece un mensaje como tal, agradecería si alguien me lo puede confirmar para eliminar este punto o dejarlo).
  6. Reiniciamos
    • Si se te perdió el botón de reinicio (como a mí), reinicia desde la consola con sudo reboot

Si todo salió correctamente, salta al punto 2.

1.2.3. Desde cero

Nota: Sospecho que varios de estos pasos ya no son necesarios y que bastaría con lo mismo del punto anterior, pero lo dejo por si acaso.

Nota2: Esta última vez (luego de la vuelta desde Jaunty) instalé los drivers desde los repositorios y luego seguí el punto anterior por lo que insistiría que esto esta obsoleto.

  1. Revisamos que tengamos todas las aplicaciones necesarias.
    • sudo apt-get install build-essential cdbs fakeroot dh-make debhelper debconf libstdc++5 dkms linux-headers-generic
  2. Descargamos el driver desde la página de ATI/AMD.
    • wget https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-9-3-x86.x86_64.run
  3. Abrimos Synaptic y borramos todo lo que contenga fglrx en el nombre (Marcar Eliminar Completamente).
    • En mi caso sólo apareció un paquete: xorg-driver-fglrx (el que se instala por el Gestor de Controladores Restringidos).
  4. Volvemos a nuestra terminal y ejecutamos el instalador.
    • sh ati-driver-installer-9-3-x86.x86_64.run --buildpkg Ubuntu/intrepid
    • Nos solicitará instalar algunas dependencias (si no, no hay de que preocuparse)
  5. Hardy ya viene con un módulo y dado que vamos a usar uno nuevo, tenemos que desactivar el antiguo (ponerlo en la blacklist).
    1. sudo gedit /etc/default/linux-restricted-modules-common
    2. Buscan una línea que dice DISABLED_MODULES="" y le agregan “fglrx” sin comillas de manera que el archivo quede así: DISABLED_MODULES="fglrx"
  6. sudo gedit /etc/modprobe.d/blacklist-restricted (si es que existe, si no, no importa), y comentamos la línea (poniendo un “#”, sin las comillas al comienzo) “blacklist fglrx”. Si te aparece un archivo en blanco como a mí, no hagas nada.
  7. Borramos si acaso hubiese algún módulo en el kernel.
    • sudo rm /usr/src/fglrx-kernel*.deb
  8. Descargamos e instalamos éste paquete desde los repos de Intrepid.
  9. Instalamos los paquetes.
    • sudo dpkg -i xorg-driver-fglrx* fglrx-kernel-source* fglrx-amdcccle*
  10. Si acaso nos sale algo así como: “El distribuidor del paquete ha publicado una versión actualizada [...]“, nos está preguntando por nuestra configuración de Compiz, si queremos mantenerla pulsamos N y si no, pulsamos Y continuamos (hace tiempo que ya no utilizo Compiz, así que no tengo idea si aún aparece un mensaje como tal, agradecería si alguien me lo puede confirmar para eliminar este punto o dejarlo).
  11. Reiniciamos
    • Si se te perdió el botón de reinicio (como a mí – de nuevo-), reinicia desde la consola con sudo reboot

2. Configurando el Driver

Abrimos una consola (Aplicaciones > Accesorios > Terminal) y ejecutamos el siguiente comando: sudo aticonfig --initial. Aquí podemos obtener tres resultados:

  • $ sudo aticonfig --initial
    Found fglrx primary device section
    Nothing to do, terminating.
  • Algo sobre cambiando “ati” por “fglrx”
  • Archivo no iniciado:
  • $ sudo aticonfig --initial
    Uninitialised file found, configuring.
    Using /etc/X11/xorg.conf
    Saved back-up to /etc/X11/xorg.conf.original-0

En el primer caso, pasa al siguiente punto, si es el segundo o tercer caso, reinicia el equipo (sudo reboot) o el entorno gráfico (<Ctrl>+<Alt>+<Bksp>).

3. Verificando

Abrimos una consola y ejecutamos fglrxinfo, aquí te dejo mi ejemplo:

pablo@laptop:~$ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI Radeon Xpress Series
OpenGL version string: 2.1.8543 Release

Lo importante, es que tiene que decir ATI y no Mesa.

Podemos utilizar otros comandos para evaluar, fgl_glxgears, glxinfo | grep direct (esperamos que diga: Direct Rendering: Yes) y glxgears.

Si todo salió bien, ya tenemos aceleración gráfica con el último driver… ¡felicitaciones!. Si utilizas Hardy o Intrepid, ya debería estar listo y bastaría comenzar a jugar con Compiz (o Warsow… u Open Arena @_@).

Obsoleto:

Al intentar con esta última versión del controlador aún así no obtenía aceleración gráfica, la solución es sencilla:

  • Alt + F2
  • gksudo gedit /etc/X11/xorg.conf
  • Buscamos una sección que diga algo así:

  • Section "Device"
    Identifier "ATI Technologies Inc RS485 [Radeon Xpress 1100 IGP]"
    Driver "ati"
    BusID "PCI:1:5:0"
    EndSection

  • Y cambiamos “ati” por “fglrx”
  • Reiniciamos el servidor gráfico Ctrl + Alt + Backspace (guarda tu trabajo no guardado)

OJO: Si ingresan al Gestor de Controladores Restringidos verán algo así:

Es totalmente normal que no esté el tick en el checkbox.

4. Compiz-Fusion y AIGLX (¿deprecated?)

Al parecer este punto ya no es necesario, pero lo dejo por si acaso a alguien aún le es útil (ojalá que alguien me confirme para saber si lo elimino o lo dejo.

  1. Ya con nuestro driver funcionando procederemos a desinstalar xgl.
    • Sistema > Administración > Gestor de Paquetes Synaptics > Buscar > xserver-xgl > Botón derecho > Marcar para eliminar completamente > Aplicar
    • sudo apt-get remove --purge xserver-xgl
  2. Abrimos xorg.conf con nuestro editor de textos favorito (usaré gedit)
    • Alt + F2 > gksudo gedit /etc/X11/xorg.conf (si usas KDE, cambia gedit por kate)
    • sudo gedit /etc/X11/xorg.conf
  3. Nos desplazamos hacia el final del archivo, dónde debería haber algo más o menos como esto:
  4. Section "Extensions"
    Option "Composite" "0"
    EndSection

    Y lo cambiamos para que quede así:

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

  5. Ahora tenemos que reiniciar el servidor gráfico (Ctrl + Alt + Backspace) o el equipo y podremos empezar a disfrutar de los efectos sin XGL.
  6. Para acceder a la configuración lo haces por Sistema > Preferencias > Apariencia > Efectos Visuales (si ya instalaste el paquete que menciono a continuación, podrías escoger Personalizado). Es una buena idea instalar compizconfig-settings-manager, para poder personalizar más los efectos. Luego puedes acceder desde Sistema > Preferencias > Advanced Desktop Settings (CompizConfig Settings Manager).

5. Suspender

Supuestamente la instalación de los últimos drivers debía de arreglar el bug que existía con el Kernel de Gutsy (2.6.22), si bien algunas personas indican que sí les solucionó el problema, yo no tuve tanta suerte (para variar). Pero como este blog no está pensado para personas con suerte, investigaremos :P. Al menos a mí, si lo trataba de suspender, el portátil se suspendía, pero no volvía :(. Si tienen otro problema quizá esta solución podría, como no podría servirles. Independiente del caso, antes de seguir leyendo comprueba si tu equipo se suspende o no.

  1. Editamos el archivo de configuración que administra la energía.
    • Alt + F2 > gksudo gedit /etc/default/acpi-support
    • sudo gedit /etc/default/acpi-support
  2. El archivo se compone de varias entradas, busca éstas, y asegúrate que queden como te indico:
  3. SAVE_VBE_STATE=false

    POST_VIDEO=false
    En mi caso, las dos estaban como true

  4. Ahora cruza los dedos…y ruega porque tu equipo se suspenda.

Perfecto, el equipo se suspende, ahora intentemos hibernarlo…

6.Hibernar

Al parecer, la culpa que el equipo fuera incapaz de hibernarse no tenía relación con el driver y se debía a alguna mala configuración mía. Hace poco que decidí instalar desde cero (mucho trasteo :P) y me funcionó correctamente, incluso antes de actualizar el driver. De todas formas a alguien le podría ser útil, así que queda aquí.

¡¿Qué?! ¡¿No sirve?!

¡Detente! ¡Suelta el laptop y no lo tires por la ventana!

¿Más tranquilo?

Ok, continuemos…

Cuando intenté hibernar mi equipo, alcanzé a leer esto (sacado de /var/log/kern.log/):

Feb 2 01:32:34 ubuntu kernel: [ 205.104000] swsusp: Cannot find swap device, try swapon -a.

Antes de que me devolviera indicándome que había habido un error…

Instalación ATI 8.2 con AIGXL en Ubuntu + arreglo suspender/hibernar en Dell Inspiron 1501

Me llamó la atención error por el comando que ejecutó (además de mencionar a la swap), así que investigue sobre el comando swapon y más específicamente el swapon -a. Este comando como su nombre bien lo indica se encarga de activar la partición de intercambio, el añadido de la -a lo que hace es montar todas las particiones swap.

Por algún extraño motivo, el /etc/fstab a pesar de tener la entrada de este estilo:

#/dev/sda6
UUID=b4596e76-ab31-4256-8b35-ec8c0fa5fb5d none swap sw 0 0

Al intentar utilizar:

# swapon /dev/sda6

Se activaba la swap, y podía hibernar el equipo, el problema era luego, cuando lo encendía, me tiraba errores y por alguna razón la swap no era capaz de montarse.

Mi investigación -para resumir-, me llevo que por alguna razón mi equipo no estaba utilizando bien ese UUID. Así que opté por utilizar directamente la dirección del dispositivo, así que dejé mi /etc/fstab algo así:

/dev/sda6 none swap sw 0 0

Finalmente, luego de mucho buscar modifiqué este archivo:

/etc/initramfs-tools/conf.d/resume

y cambie:

RESUME=UUID=b4596e76-ab31-4256-8b35-ec8c0fa5fb5d

por…

RESUME=/dev/sda6

Luego, ejecuté el update-initramfs -u

Luego de eso logré que el portátil pudiera despertar y la verdad es que lo hace bastante rápido :P.

¿La receta?

Dar un paso-a-paso, me resultaría un poco difícil dado la gran cantidad de cosas que hice. Advierto que puede ser arriesgado y tienen que tener mucho cuidado, sobre todo en algunos pasos, así que si eres lo suficientemente osado, adelante, pero no me puedo responsabilizar. Hazlo bajo tu propio riesgo :P. En realidad no es nada del otro mundo, sólo tienes que hacerlo con calma y lee, no te apures.

  1. Nos volvemos root (sudo su)
  2. fdisk -l | este comando nos indicará nuestras particiones y dónde debería estar la swap, en mi caso en /dev/sda6. Fíjate bien, de aquí depende que hagas las cosas resulten o no. Apréndete ese número y estarás bien.
  3. mkswap /dev/sda6 | eso es arriesgado, si te equivocas de partición puedes dejar la embarrada, si lo haces con calma no debería pasar nada. Creo que podrías hacer lo mismo desde gparted. Formateas esa partición como linux-swap. (Por alguna razón en mi caso se corrompía).
  4. gedit /etc/fstab | tiene varias líneas, fíjate que quede como mi ejemplo de arriba (ese UUID puedes borrarlo), pero con la partición que corresponda (la misma que te mostró fdisk y la misma que formateaste como swap)
  5. gedit /etc/initramfs-tools/conf.d/resume | El archivo sólo tiene una línea, déjalo como puse en el ejemplo de más arriba, RESUME=/dev/<partición que salió en fdisk, que formateaste con mkswap o gparted y que metiste en el /etc/fstab>
  6. update-initramfs -u

Luego de eso, intenta hibernar el equipo y al encenderlo debería funcionar.

Cualquier cosa, dejen un comentario :).

Nota final: Me acabo de dar cuenta que mi principal fuente de donde obtuve la información no está, así que pido miles de disculpas, desconozco desde que momento, pero ahora la agrego:

Fuente: Unofficial Ati Linux Driver Wiki


  1. Vamos... sabemos que quieres comentar algo ;)

  1. Freddy Duarte (Responder) El 7 de Julio del 2009 a las 18:21

    Una consulta, quiero suspender solo la pantalla, y no me deja, alguna sugerencia?, solo se oscurece.

  2. [...] tags: 200m, ati, fglrx, FPS, glxgears, inspiron, jaunty, r200, r300, xpress by PaBLoX Como ya saben, no nos es posible utilizar los drivers propietarios de ATI (fglrx) en nuestras vetustas (?) [...]

  3. [...] ya saben, no nos es posible utilizar los drivers propietarios de ATI (fglrx) en nuestro prehistórico Dell [...]

  4. xeddx (Responder) El 29 de Marzo del 2009 a las 23:13

    pana tengo la misma aspire 5530 me gustaria ponerme en contacto contigo para ver como colocamos el ubuntu yo todavia estoy enfrascado en el wifi pero bueno cualquier cosa que sepas avisame a eduardox3x@hotmail.com y si me das tu correo te aviso lo que he hecho

  5. Abel O'Rian (Responder) El 22 de Junio del 2009 a las 22:03

    brr, me faltó el link:
    http://dtupelektro.blogspot.com/2009/05/aceleracion-ati-xpress-radeon-200m.html

    ahi si. Me aumentó el glxgears de 300 a 600 :)

    Saludos.

  6. PaBLoX (Responder) El 6 de Julio del 2009 a las 14:15

    Deduzco que tuviste le mismo problema que tuve yo, porque lo creo creo no habría problema en hacer lo que quieres en Intrepid… ¡cuéntanos como te fue!


Avísame de los futuros comentarios via e-mail. También puedes suscribirte sin comentar.

XHTML: Puedes utilizar (con criterio) estas etiquetas: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>