New AMD Radeon Firmware Published For Upcoming GPUs
While the AMDGPU firmware/microcode are binaries and necessary for working 3D hardware acceleration by their open-source Linux graphics driver stack, due to legal/internal reviews and other conflicts it has sometimes come down to the wire whether those firmware blobs were pushed out ahead of time even when the open-source Linux graphics driver code has been floating around and upstreamed. It's not too much of a big deal at least for experienced Linux users/enthusiasts to download some firmware blobs and respin the initramfs if necessary, but just another headache and not too user-friendly for those picking up new hardware right away.
Fortunately, the situation is improving. As covered in detail on Phoronix in the past, there is AMD's new approach for GPU hardware enablement under Linux where rather than sending out big patch series with colorful fishy codenames, they are sending out the support for individual IP blocks that are all independently versioned and part of the AMDGPU kernel driver change where for the latest GPUs it's driven by IP-based enumeration of detected blocks on the GPU. In recent weeks we have seen AMD begin pushing out new GPU targets as part of this effort and more difficult for external parties to decipher new GPU details when there are a lot of different blocks/versions at play for what ultimately will pair to a given product. It helps AMD developers in then being able to get out code earlier and also eases AMD's internal legal review process rather than needing to clear some big patch series at once and for what is sure to then draw news headlines especially among the Windows sites picking up on the Phoronix news.
This new approach seems to help on the AMDGPU firmware side too in publishing the firmware binaries individually when ready rather than waiting to publish all of the multiple firmware files required for a given GPU. This morning I was surprised to see some firmware blobs make it into linux-firmware.git for some of those new IP blocks not yet found in current-generation AMD Radeon graphics hardware.
Landing today in linux-firmware.git were AMD firmware binaries for the graphics IP block GC 10.3.7, PSP 13.0.8 for the secure processor, DCN 3.1.6 for the display block, and SDMA 5.2.7 for the system DMA.
With the linux-firmware.git already having Yellow Carp (Rembrandt) and other AMD Radeon firmware binaries up through what is shipped in the Radeon Software for Linux 21.50 driver package, these new firmware bits are for something unreleased... It's possible these new IP blocks are for the expected RDNA2 refresh GPUs, but we'll see. In any event while from our (community / external) side it's less fun not having big patch series and announcements to make about new hardware support with fishy codenames, this new IP/block-based development approach seems to be working out well so far for the timely bring-up of new graphics hardware and nice seeing the firmware binaries even make it out well in advance of launches.