So I'm on 17.04 and I know that amdgpu-pro isn't available on the 4.10 kernel. But I was curious about what I was running, so I used
lspci -k | grep -EA3 'VGA|3D|Display'
and it returned
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Hawaii XT / Grenada XT [Radeon R9 290X/390X]
Subsystem: ASUSTeK Computer Inc. R9 290X DirectCU II OC
Kernel driver in use: radeon
Kernel modules: radeon, amdgpu
So does that mean I have amdgpu but radeon is in use? I can't seem to find info on how to switch between drivers. Other related questions I have is does anyone know about oibaf as an alternative, or can anyone tell me if it's worth the effort to role back kernels? I primarily use this as a gaming rig, and I'm getting terrible compatibility out of radeon. I'd rather not have to go back to 16.10 just because amd seems to have no love for us linux users.
The new way of doing this does not involve blacklisting any modules. You only have to send two parameters to the kernel:
For Caribbean Islands GPUs
For Sea Islands GPUs
I personally like to add it as default, so I edit /etc/default/grub, and then I add the kernel parameters to GRUB_CMDLINE_LINUX_DEFAULT, like this:
Remember to run update-grub and reboot the system so the changes take effect.
I can confirm this works for a 390x running Ubuntu since 17.10. Also tried 18.04, 18.10, 19.04, 19.10, 20.04 since I keep using it as they get released. (I believe you can also do the same on 17.04)
Alternatively, if you want to enable the new Dynamic Power Management and Display Code experimental support, you need to also add the following lines
For more information regarding DC code check this link: https://wiki.archlinux.org/index.php/AMDGPU#AMD_DC
From my personal experience with a 390x card, DC code was unstable and I had to disable it to get an stable kernel. I haven't retried to enable it in the last couple of months so I don't know if this bug in DC was fixed.
Blacklisting it did the trick. I'm now running AMDGPU, at least until pro becomes available. I'll list the steps as the answer in case anyone else comes looking for answers.
Blacklisting built in kernel modules is done at startup, so grub does the work. Edit
with the editor of your choice and add
in to GRUB_CMDLINE_LINUX_DEFAULT right next to anything that might already be there, such as quiet splash. Then, save the changes and update grub.
Reboot and you should be using AMDGPU instead of radeon. I should stress making sure your card is compatible, else blacklisting your gfx module is likely to cause problems.
I was able to install amd open source (radeon) drivers with these steps
- update kernel above 4.16:
- add the following kernel parameters, separator is space:
- set the power state of the gpu to performance:
- install vulkan drivers:
- check driver with:
- check openGL with: