AMDgpu (Linux kernel module)


AMDgpu is an open source device driver for the Linux operating system developed by AMD to support its Radeon lineup of graphics cards. It was announced in 2014 as the successor to the previous radeon device driver as part of AMD's new "unified" driver strategy, and was released on April 20, 2015.

Development

It takes the form of an in-tree kernel module.
As of 2022, AMD Kernel Fusion Driver is now integrated in this one kernel module. AMD KFD development at AMD is part of ROCm, under the ROCk project.

Distribution

AMDgpu has been fully upstreamed and new developments continue to do so.
As AMDgpu is part of the monolithic Linux kernel, it is shipped by most Linux distributions directly. The package suite / install script amdgpu-pro, distributed by AMD directly from AMD Radeon Software, ships an AMDgpu kernel module somewhat reliably more up-to-date compared to that of kernels shipped in regular operating system distributions.

Community

The development of the kernel module happens between AMD and the Linux maintainers. Discussions happen on the freedesktop.org mailing lists - freedesktop being home to major Linux graphics projects such as Mesa, libdrm, Xorg, Wayland.

Support

AMDgpu officially supports cards built upon GCN 1.2 or higher, including new instruction sets such as RDNA1&2, CDNA. It adds support for the Vulkan API.

Support issues

Support for GCN 1.0/1.1 was incomplete for several years, disabled by default and kept 'experimental'. Support can be enabled with a couple of kernel parameters and some Linux distributions enabled it by default. The driver lacks hardware video encoding, sound over HDMI and analog output formats for these generations.
Work was done over 2025 to enable first GCN 1.1 then GCN 1.0 by bringing AMDgpu at feature parity with the radeon driver, and was accepted for mainlining in Linux kernel 6.19 which will reach final in early 2026. This, along with Mesa 25.1 and up, also allows these GPU to support shaders-based ray tracing by using an environment variable, same as more recent hardware revisions.