The Open-Source AMD Linux Driver Stack Hitting Problems With The Radeon RX 590
Yesterday I bought a Sapphire Radeon Nitro+ Rx 590 8GB GDDR5 graphics card in order for conducting Linux benchmarks. The card arrived and so far I have yet to come up with a working driver combination for this 12nm Polaris graphics card. This may also explain why I was left completely in the dark for this launch besides the obvious leaks but with no review samples nor even any press briefing invite, which is why I ended up buying the card on launch day.
When booting an Ubuntu 18.10 system with the Linux 4.19.2 stable kernel and Mesa 19.0-devel paired with the very latest AMDGPU microcode files, it was a surprise that there was no display only several seconds later to mode-set with an 800 x 600 resolution and to be using LLVMpipe CPU-based acceleration.
When prodding the kernel logs, there is a ring test failure pertaining to the UVD code and that ends up causing a device initialization failure, which is treated as a fatal error. There is also a reported failure about reading the card's minimum clock speeds.
Moving to the Linux 4.20 Git kernel, the problem persists with failing to properly initialize the GPU. That caught me by surprise as I figured at least the current Linux Git development cycle would have working support for this Polaris refresh.
Next I moved onto the AMDGPU DRM-Next 4.21-WIP kernel branch for the very bleeding edge kernel code that is currently under development and won't be mainlined until the Linux 4.21 cycle. Sadly, that too was the same flop.
I am not the only one to encounter similar behavior with the Radeon RX 590 on Linux. I reached out to some of AMD's Linux team once hitting these errors but have yet to hear back.
Long story short, it looks like at least one initialization issue is blocking the Radeon RX 590 Linux support. Hopefully the workaround ends up being trivial enough that it can be quickly back-ported to existing stable Linux kernel series. Once the Radeon RX 590 is running well on Linux, I'll be through with a ton of benchmarks that I have already been working on this week with other graphics cards using the newest Linux driver stacks. This situation is sadly reminiscent of the Raven Ridge launch earlier this year where the open-source driver team was working on support for months in advance, but the production hardware/BIOS ended up varying a lot from their hardware bring-up that is was very shaky support at launch. The Raven Ridge support improved a lot on Linux since launch, but even to this day some hardware still seems to be problematic both of hardware in my labs as well as reports by users. Hopefully it won't take nearly as long for the RX 590 support to be in shape.