How to Install and Configure AMD GPU Drivers on Arch Linux

This guide will walk you through the process of installing and configuring the correct drivers for your AMD GPU on Arch Linux.

Arch Linux is renowned for its simplicity, rolling release model, and extensive user control. One key area where this control becomes especially useful—but also a bit intimidating—is in managing hardware drivers, particularly for GPUs. If you have an AMD graphics card and you’re setting up Arch Linux, this guide will walk you through the process of installing and configuring the correct drivers for your AMD GPU. We’ll cover everything from identifying your hardware to installing the appropriate packages and troubleshooting common issues.


1. Understanding AMD GPU Driver Types

Before diving into installation, it’s essential to understand the different types of AMD GPU drivers available on Linux:

1.1. Open Source - AMDGPU

  • Default driver for most modern AMD GPUs (GCN 1.2 and newer, i.e., Radeon Rx 2xx/3xx and above).
  • Actively developed by AMD and the open-source community.
  • Supported directly in the Linux kernel and Mesa packages.

1.2. Open Source - Radeon

  • Older driver mainly used for legacy GPUs (pre-GCN 1.2).
  • Considered stable but less performant and with fewer features.
  • Used automatically if the GPU is not compatible with AMDGPU.

1.3. Proprietary - AMDGPU-PRO

  • A hybrid driver mainly intended for professional and enterprise environments.
  • Not officially supported on Arch Linux.
  • Typically avoided unless you require specific functionality (e.g., ROCm for compute workloads).

Note: For the majority of users, the open-source AMDGPU driver is the recommended and supported choice on Arch Linux.


2. Checking Your AMD GPU Model

Start by identifying your GPU so you can determine which driver you need.

Run the following command

lspci -k | grep -EA3 'VGA|3D|Display'

Look for output similar to this:

03:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 [Radeon RX 6800 XT]
Subsystem: XFX Pine Group Inc.
Kernel driver in use: amdgpu
Kernel modules: amdgpu

If the kernel driver in use is already amdgpu, your system is using the correct driver.

You can also use:

lshw -c video

If lshw is not installed, install it via:

sudo pacman -S lshw

3. Installing AMD GPU Drivers

Assuming you are using a supported GPU (GCN 1.2 or newer), follow these steps to install the open-source AMDGPU drivers.

3.1. Update your system

sudo pacman -Syu

3.2. Install required packages

sudo pacman -S xf86-video-amdgpu mesa lib32-mesa
  • xf86-video-amdgpu: X.org driver for AMDGPU (for X11 users).
  • mesa: OpenGL library.
  • lib32-mesa: 32-bit support for Mesa (required for gaming and Wine/Proton).

3.3. For older GPUs

If your GPU is too old to use amdgpu, install:

sudo pacman -S xf86-video-ati

You can also blacklist amdgpu if necessary, though most systems will automatically detect the right driver based on the kernel.


4. Verifying Driver Installation

After installation, reboot your system:

sudo reboot

Once back in, confirm that the AMDGPU driver is in use:

dmesg | grep amdgpu

Or, again:

lspci -k | grep -EA3 'VGA|3D|Display'

Check GLX and direct rendering

glxinfo | grep "OpenGL renderer"

If you don’t have glxinfo, install it via:

sudo pacman -S mesa-utils

You should see something like:

OpenGL renderer string: AMD Radeon RX 6800 XT (navi21, LLVM 15.0.7)

5. Enabling Hardware Acceleration (Optional)

For smoother video playback, you may want to enable VA-API (Video Acceleration API).

Install the necessary packages

sudo pacman -S libva-mesa-driver lib32-libva-mesa-driver

Test VA-API

vainfo

If successful, you’ll see details about supported codecs.

For video players like mpv or vlc, you can enable VA-API hardware acceleration for more efficient playback.


6. Setting Up Vulkan Support

If you plan to play games or run applications that use Vulkan (like many Steam games), install these:

sudo pacman -S vulkan-radeon lib32-vulkan-radeon

You can verify Vulkan support with:

vulkaninfo | less

If vulkaninfo is not found, install it:

sudo pacman -S vulkan-tools

7. Configuring Xorg or Wayland

Depending on your desktop environment or window manager, you’ll be using Xorg or Wayland.

7.1. Xorg

With the xf86-video-amdgpu driver installed, Xorg will typically auto-configure your GPU. However, you can add a manual configuration if needed:

Create a configuration file:

sudo nano /etc/X11/xorg.conf.d/20-amdgpu.conf

Paste in:

Section "Device"
    Identifier "AMD"
    Driver "amdgpu"
EndSection

Save and reboot.

7.2. Wayland (e.g., GNOME, KDE with Wayland)

Wayland support is available via Mesa and kernel drivers, and AMD’s open-source stack works quite well. No special setup is required. Just ensure you’re running a Wayland session (check with echo $XDG_SESSION_TYPE).

If it returns wayland, then you’re good to go.


8. Troubleshooting Tips

Here are some common issues and how to resolve them:

8.1. Black screen or no display after boot

  • Add nomodeset to kernel parameters temporarily and boot into a TTY.
  • Check /var/log/Xorg.0.log or journalctl -xe for clues.
  • Make sure the right driver is installed.

8.2. Vulkan not working

  • Double-check that both 64-bit and 32-bit Vulkan packages are installed.
  • Ensure that no vulkan-intel or conflicting drivers are installed.

8.3. Performance issues

  • Try running benchmarks like glmark2 to evaluate performance.
  • Ensure that hardware acceleration is enabled (vainfo).
  • Check for thermals and throttling with radeontop or sensors.

8.4. Applications crash with segmentation fault

This can sometimes happen due to mismatched Mesa versions or lib32 packages. Reinstall these:

sudo pacman -S mesa lib32-mesa vulkan-radeon lib32-vulkan-radeon

9. Conclusion

Installing and configuring AMD GPU drivers on Arch Linux is a straightforward process once you understand your GPU model and the associated driver architecture. The open-source amdgpu driver, combined with Mesa and Vulkan support, offers excellent performance, even for gaming and heavy workloads. With the right packages and a few verification steps, you can be confident that your AMD GPU is running at its full potential on your Arch Linux system.

As always with Arch, documentation is your best friend—make regular use of the Arch Wiki, and don’t hesitate to consult community forums or man pages when exploring advanced configurations.

Whether you’re setting up a gaming machine, a media center, or a development workstation, AMD’s open-source support ensures that you’re getting a reliable and efficient graphics experience on Linux.


Resources: