For the AMD Radeon R9 390, Fedora will, by default, use the open source driver ‘radeon’ – which is generally sufficient for average workloads, but if you want to game, or want to use Vulkan, you probably want the AMD-written open source driver ‘amdgpu’. It is not just a matter of installing the driver, and some extra configuration will be required to utilize this driver for graphics cards in the Southern Islands and Sea Islands family of AMD cards, since support for these models is considered experimental.
The solution also varies depending on whether your card is Southern Islands or Sea Islands.
|Card Family||Models||Module Parameter|
|Southern Islands||HD7750-HD7970, R9 270, R9 280, R9 370X, R7 240, R7 250||amdgpu.si_support=1|
|Sea Islands||HD7790, R7 260, R9 290, R7 360, R9 390||amdgpu.cik_support=1|
First, determine which kernel driver is currently in use:
lspci -k | grep -EA3 'VGA|3D|Display'
Kernel driver in use result says
amdgpu you’re working, there’s nothing for you to do except install Vulkan (if that’s your goal). If your result says
radeon, read on.
- Install the amdgpu driver, along with Vulkan (both x64 and x86):
sudo dnf install xorg-x11-drv-amdgpu mesa-vulkan-drivers.x86_64 mesa-vulkan-drivers.i686 vulkan-loader.x86_64 vulkan-loader.i686 vulkan-tools
- If you plan to use Vulkan with Wine:
sudo dnf install wine-dvxk.x86_64 wine-dvxk.i686
- The GRUB Bootloader needs to be modified to (a) disable the ‘radeon’ driver for your card and (b) enable the module parameter for amdgpu. Edit
/etc/default/grubappend one of the following inside the quotes on the
- For Southern Island cards: radeon.si_support=0 amdgpu.si_support=1
- For Sea Island cards: radeon.cik_support=0 amdgpu.cik_support=1
- Build the GRUB config:
- For EFI systems:
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
- For BIOS systems:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
- For EFI systems:
If everything went according to plan, after reboot you should be able to login and run
vulkaninfo without errors. Now you can install Lutris, use Proton on Steam, or do any of the other things that Vulkan allows.
If your GUI doesn’t load after reboot, you can restore your machine back to the previous configuration by pressing CTRL+ALT+F2, logging in, editing /etc/default/grub to remove the added text, and running grub2-mkconfig like before.
These instructions are intended for Fedora Linux, but with some minor modification to the grub2-mkconfig command, and substituting your package manager for dnf, you can probably adapt them to other Linux distributions.
For additional information, refer to the Arch or Gentoo wikis.
2 thoughts on “Enabling amdgpu on Fedora 31 for using Vulkan with R7 and R9 Radeon cards”
I’ve got a hybrid setup and this only switched the driver for my APU. What further steps do I need to take to switch the driver on my card?
THANKS! I had installed Lutris and League of Legends but the game was crashing after login screen. Now I can play the game!