Translation(s): English - Français - Italiano - Melayu - Русский


This page describes how to install the ATI proprietary video driver (fglrx) on Debian systems. The free driver (xserver-xorg-video-radeon) works just fine - use it. But when you want to run OpenCL-dependent applications or desire complete 3D acceleration then you need to bite into this forbidden fruit. For OpenCL also follow instructions on ATIStream.

fglrx stands for FireGL and Radeon for X, the proprietary (non-free) display driver made available by ATI Technologies (now AMD). This driver provides 2D and 3D acceleration for AMD/ATI Radeon HD and FireGL video cards. Information on supported devices can be found towards the end of this page.

For 3D acceleration, fglrx requires an associated Linux kernel module. Its compilation can be automated via module-assistant or DKMS. The Debian packages perform a completely automated installation with DKMS.

<!> Support of chips prior to the R600 series (i.e. models up to and including the Radeon X1950) was dropped at fglrx-driver 1:9-4-1.1 Support of R600 and R700 chips (Radeon HD 2000/3000/4000 series) was dropped at fglrx-driver 1:12-6~beta-1.2. The latter are helped with the now separate package fglrx-legacy-driver.

An alternative to all the above, especially so for the chips no longer supported by the vendor's driver, is the "radeon" open source driver. It provides 3D acceleration via DRI but cannot be used for OpenCL.

Installation

Family; marketed names

codename

squeeze

wheezy

sid

Radeon ancient

free radeon driver only

Radeon XD 1xxxxx; ....

RVxyz

no

yes

yes

FireGL 9999

RVabc

no

backports

no (Xorg: wheezy, driver: wheezy-backports)

Radeon HD 2xxx

yes

backports

yes (driver: experimental)

Sid

The problem with Debian unstable is that the X binary is repeatedly ahead of AMD/ATI's drivers. So, for running the non-free upstream drivers, one should consider installing the X binaries from Wheezy or snapshot.debian.org rather than the very latest. Installation works in complete analogy to Squeeze, just the system needs to be told from where to retrieve the packages for X Window when unstable has brought something new that AMD has not yet adjusted for. There are two main mutually compatible concepts:

At the time of writing (2012/05/08) xserver-xorg-core 2:1.11.4-1 of Wheezy but not 2:1.12 of unstable is working just fine together with fglrx-driver 1:12-4-1. If in doubt, to install the that version, perform

apt-get install xserver-xorg-core=2:1.11.4-1

and then ask for the hold as shown above. Update: Shortly after that writing, nothing worked and only got back to life recently3.

Wheezy

AMD released a fix for the segfaults the 12.6 update had caused (see #671320). This "point release" recently migrated to testing and should work. It would be nice to hear about some independent success story here.

Squeeze

  1. Add a "non-free" component to /etc/apt/sources.list, for example:

    # Debian Squeeze/6.0
    deb http://ftp.us.debian.org/debian squeeze main contrib non-free
  2. Update the list of available packages, then install the relevant linux-headers, fglrx-control and fglrx-driver packages:

    # aptitude update
    # aptitude -r install linux-headers-2.6-$(uname -r|sed 's,[^-]*-[^-]*-,,') fglrx-control fglrx-driver

    This will also install fglrx-glx, fglrx-modules-dkms and other recommended packages. DKMS will build the fglrx module for your system.

  3. If the X Window System is running, exit your desktop environment or window manager. If a display manager is in operation, switch to a virtual console and stop it. For example:

    # invoke-rc.d gdm3 stop

    or

    # invoke-rc.d kdm stop
  4. Unload the radeon and drm modules:

    # modprobe -r radeon drm

    If this command failed with error: Module radeon is in use then you should reboot the system. (It may be necessary when framebuffer uses radeon driver.)

  5. Create or amend /etc/X11/xorg.conf to include a Device section and request use of the fglrx driver:

    This command creates and configure automatically a xorg.conf file to use the ATI proprietary driver:

    # aticonfig --initial

    You can otherwise edit it by yourself:

    # sensible-editor /etc/X11/xorg.conf

    A minimal /etc/X11/xorg.conf example is shown below:

    Section "Device"
        Identifier  "ATI"
        Driver      "fglrx"
    EndSection
    
    Section "Screen"
        Identifier "Default Screen"
        DefaultDepth     24
    EndSection
    Save the file and exit the editor before continuing.
  6. Start the X Window System (startx) as a regular user, or start your display manager. For example:

    # invoke-rc.d gdm3 start

    or

    # invoke-rc.d kdm start

Kernel Modules

The canonical location for information on building these files is in the README.Debian shipped with fglrx-source. Assuming you still have non-free enabled, you should be able to install it with.

The readme can be viewed with

Depending on which method of installing you choose, you will need to install different dependencies. The recommended way is to use module-assist.

Configuring xorg

After installing everything, you will want to configure it.

The two main ways to do this are using aticonfig and amdcccle.

aticonfig will generate you a new xorg config from scratch: aticonfig --initial. This might be handy after you have installed for the first time.

If you are after a graphical tool to help you quickly switch on external monitors (or change other settings) then amdcccle is the tool for you. It requires running as root/with sudo, as it changes the xorg.conf

Supported Devices

Refer to the "Product Family Support" sections within the ATI Proprietary Driver Release Notes:

See Also

{X} Be aware that upgrading from packages created by the ATI installer is and will most probably NEVER be supported by the Debian maintainer of the fglrx-driver package(s)!