Amd rx 590 not working debian Buster

i’m having difficulties getting my AMD RX 590 to work at all on Debian buster.
i have installed firmware-amd-graphics and xserver-xorg-video-ati and it still wont work even in text mode.
the display stops showing anything new after " fb: switching to amdgpudrmfb from EFI VGA "
here is the output of dmesg: https://pastebin.com/Xk7M5zjx
does anybody have any experience getting this graphics card to function?
if so, how did you do it?
if it helps, i do have access to the machines serial console.

Hey there, so my first question for you is did it work before you “fixed” it? :smile: Also, is this a headless or a desktop system? Why would you opt for Debian testing vs. something more stable like Ubuntu 18.04 (does it work there out-of-the-box)?

I could be wrong, but I’m pretty sure that the new open source amdgpu driver ships with the kernel, so at least the xserver-xorg-video-ati package seems superfluous (at best) to me.

relevant output

[    2.929221] amdgpu 0000:00:09.0: firmware: failed to load amdgpu/polaris10_k_mc.bin (-2)
[    2.929225] firmware_class: See https://wiki.debian.org/Firmware for information about missing firmware
[    2.929228] amdgpu 0000:00:09.0: Direct firmware load for amdgpu/polaris10_k_mc.bin failed with error -2
[    2.929231] mc: Failed to load firmware "amdgpu/polaris10_k_mc.bin"
[    2.929290] [drm:gmc_v8_0_sw_init [amdgpu]] *ERROR* Failed to load mc firmware!
[    2.929348] [drm:amdgpu_device_init.cold.28 [amdgpu]] *ERROR* sw_init of IP block <gmc_v8_0> failed -2
[    2.929352] amdgpu 0000:00:09.0: amdgpu_device_ip_init failed
[    2.929354] amdgpu 0000:00:09.0: Fatal error during GPU init
[    2.929357] [drm] amdgpu: finishing device.
[    2.943024] amdgpu: probe of 0000:00:09.0 failed with error -2

Doesn’t look like they have firmware for your card. As these are the only firmwares they have listed in the url in the logs.

amdgpu/polaris10_ce.bin
amdgpu/polaris10_mc.bin
amdgpu/polaris10_me.bin
amdgpu/polaris10_mec2.bin
amdgpu/polaris10_mec.bin
amdgpu/polaris10_pfp.bin
amdgpu/polaris10_rlc.bin
amdgpu/polaris10_sdma1.bin
amdgpu/polaris10_sdma.bin
amdgpu/polaris10_smc.bin
amdgpu/polaris10_smc_sk.bin
amdgpu/polaris10_uvd.bin
amdgpu/polaris10_vce.bin
2 Likes

debian stable has kernel 4.9. which has some issues with pci resetting and threadripper.
debian testing uses a much more up-to-date kernel that kinda “just works” on threadripper.

is there a version of amdgpu i could download that has the firmware for my card?

AMD seems to be saying they support your card on Ubuntu 18.04, SLES 15, CentOS 7, and RHEL 7. Can you get far enough into the boot process on either of those to install something? As for needing recent kernels, @wendell often mentions ukuu (Ubuntu Kernel Update Utility) in videos. I think that Ubuntu 18.04 LTS might work out decently well for you after a touch of tweaking.

after adding amdgpu.dpm=0 to my kernel arguments, it just works.
why would this not be stated in any of Debian’s or AMDGPU’s documentation?

Strange, not sure what turning the dynamic power management off would now cause the firmware to work correctly.

Methinks somethings’ a bit buggered on Debians’ side. Worth trying one of the supported distros and checking to see if you still have to apply that fix.

i might try that just to see if it works. im not familiar with any of those distros so that isnt likely a permanent fix for me.
ive noticed that the performance of this card on debian is extreemly dissapointing. is the amdgpu.dpm=0 related to that at all?

DPM is used to regulate the power state of the card. Think of something similar to the CPU governor but for the GPU.

What you do can for testing is to set it to high performance and then do your tests, otherwise the card might be locked into a low-power state which could explain why performance is low for you.

try these two things to force the power level for your card.

sudo echo 'high' > '/sys/class/drm/card0/device/power_dpm_force_performance_level'
sudo echo 'performance' > '/sys/class/drm/card0/device/power_dpm_state''

From @anon63470048’s script.

1 Like

i tried both those commands. they both fail with “permission denied”. even when i execute them as root.
upon investigation, i found that neither of those files actually exist.
i suspect that amdgpu doesnt bother creating files related to dpm since i have disabled it in my kernel parameters.

Interesting, because those should still exist even with dpm turned off.

1 Like

update: i have managed to get to my desktop environment on debian buster (testing) without the need for the amdgpu.dpm=0 parameter by installing mesa 18.3 from Debian’s experimental repository. buster only officially supports mesa 18.2, so i expect to encounter stability issues with this configuration.

I don’t think Buster is ready for the limelight yet.

2 Likes