AMD left Linux users without great graphics support when they released the new Radeon RX 7900 GPUs based on the RDNA 3 architecture. The graphics kernel was old and did not prepare users with newer firmware during launch. Now, engineers are beginning to change their focus towards the RDNA 3 support with a newly published firmware update, allowing users to rely on the frame buffer from the firmware when the AMDGPU driver crashes.
AMD Linux graphics kernel seeks enhancement on efficiency in the current patch series for GPU requests
Mario Linomciellow, an AMD engineer, working on the current patch, outlines and explains how the process works and how to work through the issue. The AMD fellow explains that KMS drivers initially destroy the firmware frame buffer from the system by the code "drm_aperture_remove_conflicting_pci_framebuffers." So, if the graphics card misses the probing, the user receives a frozen screen while the KMS driver gets called, especially when introducing new support for the GPU. This is due to users having to upgrade to a newer version of the Linux kernel to coincide with the recent changes.
AMDGPU has further caused the issue to be problematic due to the migration of "IP discovery." IP discovery causes AMDGPU to try to pull all GPUs from the company attempting to look for the correct driver, which will slow down, if not freeze, the system if the support is missing from the blocks.
Linomciellow explains the situation with the recent Ubuntu 21.10:
The perfect example is Ubuntu 21.10 and the new dGPUs just launched by AMD. The installation media ships with kernel 5.19 (which has IP discovery), but the amdgpu support for those IP blocks landed in kernel 6.0. The matching Linux firmware was released after 21.10's launch.
The screen will freeze without nomodeset. Even if a user manages to install and then upgrade to kernel 6.0 after installation, they'll still have the problem of missing firmware and the same experience.This is quite jarring for users, particularly if they don't know that they have to use "nomodeset" to install. To help the situation, allow drivers to re-run the init process for the firmware frame buffer during a failed probe. As this problem is most pronounced with amdgpu, this is the only driver changed. But if this makes sense more generally for other KMS drivers, the call can also be added to the cleanup routine.
— Mario Linomciellow, AMD
Michael Larabel of the website Phoronix discovered today that a request for an RDNA 3 user-mode graphics queue for the Linux driver was asked by AMD Linux engineers on the graphics backend.
The hope is to begin support for Raden RX 7000 GPU series and higher. This will affect the AMDGPU Linux DRM driver and permit "direct workload submission from a user-space graphics context that would allow for increased performance and enhanced graphics management for several applications and games exclusive to AMD and full-screen scenarios. Larabel notes that the AMD ROCm computes stack already allows a similar function.
The post AMD Focuses On Various Driver Improvements For RDNA 3 GPUs Running In Linux by Jason R. Wilson appeared first on Wccftech.
source https://wccftech.com/amd-focuses-on-various-driver-improvements-for-rdna-3-gpus-running-in-linux/