AMD Is Aiming For Radeon RX 5700 "Navi" Support In Linux 5.3 + Mesa 19.2
While the Radeon RX 5700 as the first Navi graphics card won't be shipping until 7 July, even getting the open-source code out weeks ahead of time won't mean there is "out of the box" support on Linux due to the different release cycles for these software components involved in the Linux graphics stack. Granted, there will be a launch-day "Radeon Software for Linux" binary driver package consisting of the "AMDGPU-Open" and "AMDGPU-PRO" components for those wanting to install Linux driver support on launch day, assuming you are running one of their supported enterprise Linux distribution releases compatible with that driver package. AMD has been good at least about getting out those Radeon Software driver releases for new GPU launch days albeit they aren't too widely used by the Linux gaming/enthusiast community particularly as their support is limited to the enterprise Linux distribution releases like RHEL/CentOS and Ubuntu LTS versions.
But for those wanting to build their kernel and user-space driver code from Git, the code looks like it will all be made public by mid-June albeit will likely require some weeks of further tweaking/tuning and hopefully not many alterations due to any differences from pre-production bring-up hardware and the retail boards/vBIOS configurations. That code should then trickle into the Linux 5.3 kernel when its merge window opens in July and in Mesa 19.2 for the RadeonSI OpenGL driver support and hopefully the Valve/RedHat developers working on RADV Vulkan will be able to get Navi support into this next Mesa series too.
As is most often the case over the past decade, getting this open-source driver code out on time is bottlenecked by the legal/IP review passing. Particularly for a big GPU launch like in the case of Navi, there's a meticulous internal review process for ensuring all of the code is signed off on for release. That, unfortunately, often delays the process due to unexpected road-blocks and given the multiple independent release cycles for particularly the Linux kernel and Mesa is difficult to juggle. If a hardware vendor wants out-of-the-box/launch-day support for new hardware, they really need the code out months in advance and sometimes even longer if wanting to see the support bundled into the major Linux distributions in time.
As already reported on Phoronix, the AMDGPU shader compiler back-end bits will be in LLVM 9.0 that will be released as stable around September.
As for Mesa 19.2, its code branching is set to happen the first week of August and ideally for it to be released by the end of August. However, Mesa's quarterly premiere releases are often delayed so it's more realistic to see Mesa 19.2.0 happen around early September.
As for the Linux kernel, that's difficult to say at this point when Linux 5.3.0 will happen due to the variable number of release candidates each cycle. As it stands now, Linux 5.2.0 should be out about 7~14 July which would then put the official Linux 5.3 stable release roughly around 22 September.
So for those planning to buy an AMD Navi/RDNA graphics card between July and September would mean using an unstable Linux/Mesa unless opting for the packaged driver release. If not wanting to build your own code from Git, at least on most distributions are the likes of PPAs/Coprs/AURs for obtaining third-party Git builds to make it easy to switch to these development snapshots.
At least Linux 5.3 + LLVM 9.0 + Mesa 19.2 should be what is shipped by the likes of Ubuntu 19.10, Fedora 31, and other autumn Linux distribution releases so after that point will be "out of the box" support. So while not ideal, at least in time for 7 July we should have open-source development code available for driving Navi on Linux or the option of using Radeon Software for Linux. This timing with Navi is generally about what we see with most major AMD GPU launches due to the internal timing and legal review processes complicating the exposure of the initial bring-up code. Anyhow, stay tuned and as Navi code gets posted we'll be writing more about it and particularly interested as it should show how different this new "RDNA" architecture is from "GCN", as at least with the AMDGPU LLVM GFX1010 code it's been building on top of GCN. Likewise, in July you can expect Navi Linux benchmarks on Phoronix.
The Radeon RX 5700 is aiming to compete with the GeForce RTX 2070, which under Linux is only supported for now by NVIDIA's proprietary graphics driver while the open-source "Nouveau" support for Turing GPUs is limited to mode-setting without any hardware acceleration. Open-source Turing 3D support is tied up for months over NVIDIA needing to released signed microcode/firmware files due to restrictions in place since Maxwell that greatly complicate the hardware initialization. Even when those firmware files come, Turing will likely be limited to running at their boot clock frequencies due to restricted PMU access, which is still a problem for Maxwell, Pascal, and Volta on the open-source drivers. As it still stands today, the best and most performant open-source NVIDIA driver support remains with the GeForce GTX 600/700 series.