Differences between revisions 71 and 72
Revision 71 as of 2019-08-16 23:39:54
Size: 7139
Editor: nodiscc
Comment: add CategoryProprietarySoftware CategoryHardware CategoryVideo
Revision 72 as of 2020-03-27 09:37:58
Size: 7109
Comment: removed CategoryProprietarySoftware (page describes open source display drivers, proprietary ones are in ATIProprietary)
Deletions are marked like this. Additions are marked like this.
Line 161: Line 161:

CategoryProprietarySoftware
CategoryHardware CategoryVideo
CategoryHardware CategoryVideo

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.

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:

  1. 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.
  2. Add "contrib" and "non-free" components to /etc/apt/sources.list, for example:

    # Debian 10 "Buster"
    deb http://deb.debian.org/debian buster main contrib non-free
  3. Update the list of available packages:

    # apt-get update
  4. 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
  5. 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
  • 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

Debian Stretch comes with a version 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


CategoryHardware CategoryVideo