Differences between revisions 65 and 66
Revision 65 as of 2017-07-06 11:49:18
Size: 6715
Editor: BenHutchings
Comment: Add references to amdgpu drivers and new firmware-amd-graphics package
Revision 66 as of 2017-08-18 17:01:59
Size: 6742
Editor: Diego Alonso
Comment: added spanish translation link
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: English - [[fr/AtiHowTo|Français]] - [[it/AtiHowTo|Italiano]] - [[ru/AtiHowTo|Русский]] -~ ~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: English - [[fr/AtiHowTo|Français]] - [[es/AtiHowTo|español]] - [[it/AtiHowTo|Italiano]] - [[ru/AtiHowTo|Русский]] -~

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

AMD/ATI Open Source Drivers (amdgpu, radeon, r128, mach64)

This page describes use of the open source display drivers for ATI/AMD graphics hardware on Debian systems. For information on the proprietary driver, see ATIProprietary.


The AMD/ATI graphics processing unit (GPU) series/codename of an installed video card can usually be identified using the lspci command. For example:

  • $ lspci -nn | grep VGA
    01:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Barts PRO [Radeon HD 6850] [1002:6739]

See HowToIdentifyADevice/PCI for more information.


Support for newer AMD graphics hardware is provided by the xserver-xorg-video-amdgpu package.

Support for older AMD (nee ATI) graphics hardware is provided by the xserver-xorg-video-ati driver wrapper package, which depends on three hardware-specific driver packages:

The ati wrapper driver autodetects whether your hardware has a Radeon, Rage 128, or Mach64 or earlier chip and load the radeon, r128, or mach64 xorg video driver as appropriate.

Supported Devices

The amdgpu driver in Debian 9 "Stretch" supports newer AMD GPUs.

The radeon driver in Debian 8 "Jessie" supports R100 to Hawaii (Radeon 7000 - Radeon R9 290) GPUs. See the radeon(4) manual page and the radeon page on the X wiki for more information.


Proprietary, binary-only firmware (aka microcode) was removed from the Debian kernel's radeon DRM driver in linux-2.6 2.6.29-1, to resolve Debian bug 494009. The firmware can be provided by installing the firmware-amd-graphics or firmware-linux-nonfree package.

Without this package installed, poor 2D/3D performance in the radeon driver is commonly experienced. Some GPUs may require firmware to operate the X Window System, or do dual display.


The following procedure will install the open source display driver packages, DRI modules (for 3D acceleration) and driver firmware/microcode:

  1. Add "contrib" and "non-free" components to /etc/apt/sources.list, for example:

    # Debian 8 "Jessie"
    deb http://httpredir.debian.org/debian/ jessie main contrib non-free
  2. Update the list of available packages:

    # apt-get update
  3. Install the firmware-linux-nonfree, libgl1-mesa-dri and xserver-xorg-video-ati packages:

    # apt-get install firmware-linux-nonfree libgl1-mesa-dri xserver-xorg-video-ati
  4. Restart your system to load GPU device firmware.


  • Use of firmware/microcode used by the radeon DRM driver can be verified using the dmesg command. For example:

    $ dmesg | grep -E 'drm|radeon' | grep -iE 'firmware|microcode'
    [    5.268609] [drm] Loading BARTS Microcode
    [    5.329862] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/BARTS_pfp.bin
    [    5.341300] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/BARTS_me.bin
    [    5.347745] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/BTC_rlc.bin
    [    5.347911] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/BARTS_mc.bin
    [    5.353336] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/BARTS_smc.bin
    [    5.369449] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/SUMO_uvd.bin
  • Screen flickering with Adobe Flash: see FlashPlayer#flickering.


In most cases, manual configuration for the open source display drivers is not required, as the Xorg X server automatically detects and configures available hardware.

The following optional configuration can be used to increase 3D performance. See the xorg.conf(5) and radeon(4) manual pages for more information.

  • Section "Device"
     Driver "radeon"
     Identifier "My GPU"
     Option "AccelMethod" "XAA"
     # XAA/EXA
     Option "AccelDFS"    "1"
     # 1/0 On for PCIE, off for AGP
     # Manpage: Use  or  don't  use accelerated EXA DownloadFromScreen hook
     # when possible.
     Option "AGPMode" "1"
     # 1-8 Does not affect PCIE models.
     Option "AGPFastWrite" "1"
     # 1/0 Does not affect PCIE models. Not recommended.
     Option "GARTSize" "64"
     # 0-64 Megabytes of gart (system) memory used.
     # Wrongly defaults to 8MB sometimes, see your logfile.
     # Bigger seems better.
     Option "EnablePageFlip" "1"
     # 1/0 Increases 3D performance substantially
     # seemingly in XAA mode only
     Option "ColorTiling" "1"
     # 1/0 Increases 3D performance substantially
     # affected stability only positively on my system

Hybrid Graphics

AMD ships hybrid graphics with Intel cards . Both the cards get turned on in turn overheating the computer and it also makes lot of noise.

Debian Stretch (testing)

Debian Stretch comes with the latest MESA version which supports DRI Offloading. Make sure both Intel and radeon drivers are installed. It also needs firmware-linux-nonfree package to get it to work.

Check if both the cards are getting listed :

$ xrandr --listproviders

The above listing should give both the names of the cards and the associated drivers. In order to have the Radeon card handle the graphic intensive process use:

$ xrandr --setprovideroffloadsink radeon Intel

You can test the settings with the command:

$ DRI_PRIME=1 glxinfo | grep "OpenGL renderer"

Where the output should be AMD.

So using the option DRI_PRIME you could run 3D/games/movies which need extra graphic power.

See Also