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.
Contents
-
AMD/ATI Open Source Drivers (amdgpu, radeon, r128, mach64)
- Identification
-
Drivers
- Supported Devices
- Firmware
- Installation
- Troubleshooting
- Configuration
-
Hybrid Graphics
- Debian Stretch (testing)
- See Also
- External Links
Identification
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.
Drivers
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.
Firmware
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.
Installation
The
following procedure will install the open source display driver
packages, DRI modules (for 3D acceleration) and driver
firmware/microcode:
- If you have previously used the non-free nvidia proprietary driver, then you need to uninstall it if you wish to use OpenGL accelerated graphics. The easiest way is to use the command:
# apt-get purge nvidia.
Don't forget the "." dot after nvidia - This erases every package with "nvidia" in its name. - 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
- 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.
Troubleshooting
- 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
- If files were unable to be loaded, ensure the firmware-linux-nonfree package is installed (refer to Installation).
- Screen flickering with Adobe Flash: see FlashPlayer#flickering.
Configuration
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 EndSection
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
- ATIProprietary - Installing the closed source proprietary driver