Open-Source AMD Cayman GPU KMS Support
Nearly two months ago AMD released Radeon HD 6000 series open-source support -- complete with kernel mode-setting and Mesa/Gallium3D OpenGL driver acceleration support -- but this support had only covered the "Northern Islands" ASICs and not the newest Radeon HD 6900 "Cayman" graphics processors. Cayman's design is much different from the Northern Islands and previous-generation Evergreen GPUs, but the open-source support for these highest-end AMD graphics processors is beginning to emerge.
This afternoon AMD's Alex Deucher has pushed a set of 15 patches to the DRI development mailing list that provide Cayman DRM/KMS support. In addition, he has committed patches to the xf86-video-ati DDX that allow for this kernel mode-setting support by the X.Org driver. Unfortunately, the support for using any 2D/3D/video acceleration is not yet in place.
With the Radeon HD 6000 series support, the mode-setting support is also provided by KMS-only and AMD is no longer focusing upon bringing up new ASICs with UMS (user-space mode-setting). Frankly though we don't mind the lack of UMS as KMS is the future of mode-setting for Linux and the ATI/AMD support these days is mature and well featured with support like page-flipping in the latest kernels. All major Linux distributions are shipping their new releases with ATI/AMD and Intel kernel mode-setting (and even Nouveau now too for NVIDIA hardware) with the only exceptions being where Solaris and the BSDs continue to struggle with DRM/KMS support.
Shown in this Git commit are 14 PCI IDs for Cayman GPUs found in unreleased and released AMD Radeon HD 6900 series graphics cards.
The Radeon DRM patches beginning in this mailing list thread introduce the Cayman chip family, make microcode loader changes, GPU initialization, support for Cayman GART setup, command processor (CP) changes, Cayman IRQ support, ASIC reset support, suspend/resume functions, command submission (CS) checking support, and combined Cayman/Evergreen CS checker updates.
These Radeon DRM changes will be merged into the Linux 2.6.39 kernel. We just need to hope all of the additional DRM changes needed for Cayman hardware acceleration support are also merged in time and that the Gallium3D driver support isn't too far behind.
This afternoon AMD's Alex Deucher has pushed a set of 15 patches to the DRI development mailing list that provide Cayman DRM/KMS support. In addition, he has committed patches to the xf86-video-ati DDX that allow for this kernel mode-setting support by the X.Org driver. Unfortunately, the support for using any 2D/3D/video acceleration is not yet in place.
With the Radeon HD 6000 series support, the mode-setting support is also provided by KMS-only and AMD is no longer focusing upon bringing up new ASICs with UMS (user-space mode-setting). Frankly though we don't mind the lack of UMS as KMS is the future of mode-setting for Linux and the ATI/AMD support these days is mature and well featured with support like page-flipping in the latest kernels. All major Linux distributions are shipping their new releases with ATI/AMD and Intel kernel mode-setting (and even Nouveau now too for NVIDIA hardware) with the only exceptions being where Solaris and the BSDs continue to struggle with DRM/KMS support.
Shown in this Git commit are 14 PCI IDs for Cayman GPUs found in unreleased and released AMD Radeon HD 6900 series graphics cards.
The Radeon DRM patches beginning in this mailing list thread introduce the Cayman chip family, make microcode loader changes, GPU initialization, support for Cayman GART setup, command processor (CP) changes, Cayman IRQ support, ASIC reset support, suspend/resume functions, command submission (CS) checking support, and combined Cayman/Evergreen CS checker updates.
These Radeon DRM changes will be merged into the Linux 2.6.39 kernel. We just need to hope all of the additional DRM changes needed for Cayman hardware acceleration support are also merged in time and that the Gallium3D driver support isn't too far behind.
28 Comments