AMD/ATI Open Source Drivers (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 : Advanced Micro Devices, Inc. [AMD/ATI] Barts PRO [Radeon HD 6850] [1002:6739]
See HowToIdentifyADevice/PCI for more information.
Support for 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.
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-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.
The following procedure will install the open source display driver packages, DRI modules (for 3D acceleration) and driver firmware/microcode:
Add "contrib" and "non-free" components to /etc/apt/sources.list, for example:
# Debian 7 "Wheezy" deb http://http.debian.net/debian/ wheezy main contrib non-free
Update the list of available packages:
# apt-get update
# apt-get install firmware-linux-nonfree libgl1-mesa-dri xserver-xorg-video-ati
- 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' [ 3.685235] [drm] Loading BARTS Microcode [ 3.768988] platform radeon_cp.0: firmware: agent loaded radeon/BARTS_pfp.bin into memory [ 3.861487] platform radeon_cp.0: firmware: agent loaded radeon/BARTS_me.bin into memory [ 3.929626] platform radeon_cp.0: firmware: agent loaded radeon/BTC_rlc.bin into memory [ 4.442259] platform radeon_cp.0: firmware: agent loaded radeon/BARTS_mc.bin into memory
If you are experiencing screen flickering / blinking in dual monitor mode with AMD/ATI video cards, this issue is cause by Flash player, the following steps might fix that issue.
- Using your browser view any webpage containing a flash video
- Right click on the video, select "Settings" option, uncheck "Enable hardware acceleration" option
- Close your browser, reopen it, right click on the video, select "Settings" option, check "Enable hardware acceleration" option
Thanks to krnb0iek for this solution
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.
Section "Device" Driver "radeon" ... 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 EndSection