Ubuntu Installation Guide
Method 1: Installing Breezy's Included Driver (8.16.20)
The fglrx driver supports Radeon 8500+ and the X-series cards (see release notes). When running the dpkg-reconfigure commands you can accept the defaults whenever you aren't sure.
Installing the driver
sudo apt-get install xorg-driver-fglrx sudo apt-get install linux-restricted-modules-$(uname -r) #Okay if it is already installed sudo dpkg-reconfigure xserver-xorg #Select the fglrx driver and 64-bit users should deselect int10a
You have to downgrade to an older version of libdri.a due to an incompatilbity with the ATI drivers. Download it here
Change to download directory:
gunzip libdri.a.gz sudo cp /usr/X11R6/lib/modules/extensions/libdri.a libdri.a.old sudo cp libdri.a /usr/X11R6/lib/modules/extensions/
If you wish to revert to any non-fglrx driver you will need to copy the libdri.a.old file back over the fglrx version.
All platforms: Ctrl-Alt-Backspace to restart your desktop.
Confirm that it works
$ fglrxinfo display: :0.0 screen: 0 OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: MOBILITY RADEON 9700 Generic OpenGL version string: 1.3.5272 (X4.3.0-8.16.20)
If you have a widescreen LCD display that is stuck at 1024x768 then it is probably the bug in the 8.16.20 driver that was fixed in 8.18.X (see the next section).
The output of dmesg | grep fglrx and /var/log/Xorg.0.log are most useful when looking for errors.
Method 2: Generating/Installing Ubuntu packages for the newer 8.20.x drivers
Important Warning: Installation of this driver requires removing the restricted-modules package in order to work. That package includes drivers for madwifi (Atheros wireless cards), nvidia cards, and a handful of other devices. I provide a work-around for the madwifi drivers, but you need to perform it before removing the restricted modules (jump to end of this this post).
When running the dpkg-reconfigure command you should answer the questions that you know and take the defaults for the rest. You might want to say no to the monitor detection--it has caused X-Windows to crash for some people.
Remove existing fglrx driver
Remove Breezy's included drivers if they are installed:
sudo apt-get remove xorg-driver-fglrx sudo apt-get remove fglrx-control sudo apt-get remove linux-restricted-modules-$(uname -r) sudo dpkg-reconfigure xserver-xorg #select the "ati" module
Installing the new driver
Download the ATI driver installer: Click here
Change to the download directory. Make sure that you have the universe and multiverse repositories enabled before doing these steps. Sample sources.list
sudo apt-get install gcc-3.4 module-assistant build-essential sudo apt-get install fakeroot dh-make debconf libstdc++5 gcc-3.3-base sudo sh ./ati-driver-installer-8.21.7-i386.run --buildpkg Ubuntu/breezy sudo dpkg -i ./xorg-driver-fglrx_8.21.7-1_i386.deb sudo dpkg -i ./fglrx-control_8.21.7-1_i386.deb sudo dpkg -i ./fglrx-kernel-source_8.21.7-1_i386.deb
Compile the kernel driver:
sudo module-assistant prepare sudo module-assistant update sudo module-assistant a-i fglrx
Update the xorg.conf file:
sudo aticonfig --initial
All platforms: Ctrl-Alt-Backspace to restart your session.
Confirm that it worked
$ fglrxinfo display: :0.0 screen: 0 OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: MOBILITY RADEON 9700 Generic OpenGL version string: 2.0.5582 (8.21.7)
Look for error messages in /var/log/Xorg.0.log and kern.log.
In order to continue using the madwifi driver you can do the following before removing the linux-restricted-modules package and rebooting.
sudo cp /lib/modules/$(uname -r)/volatile/ath_hal.ko /lib/modules/$(uname -r)/kernel/ sudo depmod -a $(uname -r)
Kernel module not working after upgrade from previous version with same kernel
I manually built this driver as described back when 8.18.8 was released. Once 8.19.10 got released, I followed the same steps to rebuild. Unfortunately every time the kernel module was built, it wanted to remove it because it couldnt satisfy the xorg fglrx driver 8.18.8. I looked in /usr/src/ and saw a deb file that I was assuming was being rebuilt. I followed these steps to properly rebuild:
sudo rm /usr/src/fglrx-kernel-* sudo module-assistant a-i fglrx