David Airlie has just called upon Linus Torvalds to pull in the latest DRM patches for inclusion into the Linux 2.6.33 kernel
. The Direct Rendering Manager improvements in this next kernel release will be particularly interesting and are perhaps as significant as earlier kernels that had introduced kernel mode-setting support for Intel and ATI/AMD hardware along with in-kernel memory management. The changes that the Linux 2.6.33 kernel will bring are aplenty and will impact almost all of those using an open-source graphics driver stack.
First off, the DRM in the Linux 2.6.33 kernel will finally deliver upon the KMS page-flipping ioctl
. This Kristian Høgsberg innovation makes it possible for ATI and Intel hardware (along with NVIDIA hardware once Nouveau is merged) to have tear-free updating of the screen with low-latency page-flipping. This support will be worked into the X.Org Server, but it also happens to be one of the requirements for the Wayland Display Server
. What this means for Wayland is that now any Linux 2.6.33+ kernel built from the mainline sources will be compatible with this radical display server and that no extra patching is required, but sadly some separate code branches and other hurdles still need to be overcome for other system packages.
The core DRM in this pull request is also carrying a number of EDID fixes to help those with quirky monitors, the Intel DisplayPort monitor handling code has been moved around so that it can be shared amongst other open-source drivers (ATI KMS is now using some of this code), and a KMS dirty region ioctl has also been added.
The TTM memory manager in this newest DRM code has also been updated to incorporate changes that will allow the VMware vmwgfx DRM
to use it for in-kernel memory management. TTM's validation APIs have also been improved.
When it comes to hardware-specific bits, there is a variety of Intel work that's ready for the Linux 2.6.33 kernel. The Linux 2.6.33 kernel DRM is compatible with Intel's forthcoming Ironlake graphics processors as well as Pineview. Ironlake is the codename for the Intel graphics processor that is actually being built on some forthcoming Intel 32nm Nehalem CPUs. This Intel integrated graphics device will initially be found on the Clarkdale and Arrandale CPUs, which have yet to be released, but it's good to see that the Linux support will be timely. Pineview serves as the codename for Intel's next-generation Atom processors (the Atom N400 and D500 series), which will also offer better Intel graphics compared to their current Atom processors found in many netbooks and nettops, but it is being derived from the GMA 500 Poulsbo
. Besides the Ironlake and Pineview support, Intel's DRM in the Linux 2.6.33 kernel also features KMS overlay support
Turning to the ATI/AMD side there are even more changes -- in fact, the ATI work makes up a bulk of the DRM work for Linux 2.6.33. First and foremost, with the Linux 2.6.33 kernel there is Radeon DisplayPort support
, which allows users to power their DisplayPort monitors via ATI Radeon hardware with the kernel mode-setting driver. This work is taking advantage of some of the Intel DisplayPort code that was shared earlier. Another big and important feature carried in this DRM pull request is the R600/700 IRQ support
, encoder cloning support, external TMDS chip support, many suspend/resume fixes, a new new PLL algorithm for R500 chips and later, digital output hot-plug detection support (currently for DisplayPort monitors), and locking issue fixes.
While there are many changes in this DRM that will work its way into the Linux 2.6.33 kernel and it will touch many users, there are still a few items missing that otherwise would have made it perhaps the greatest DRM push ever and a phenomenal present this holiday season. What's not found in this DRM pull request is any Nouveau
support, power management support for ATI KMS, R800 Evergreen support, and the vmwgfx DRM itself. The Nouveau support is not expected for the Linux 2.6.33 kernel now but will be at least the Linux 2.6.34 kernel before it appears as a staging driver. The lack of ATI KMS power management support is what's currently blocking the Radeon KMS code from exiting the staging area, but power patches are available
, and it's still expected that the ATI code will move out of the staging grounds in this release cycle. This will also allow a new X.Org driver to be released
The VMware DRM for its virtual graphics device will also be arriving in the Linux 2.6.33 kernel, but will come in a later pull request. Lastly, there is still no open-source support at all for the ATI Radeon HD 5000 series (R800 Evergreen), which may or may not hit in time for the Linux 2.6.33 kernel. However, as great as all of these graphics DRM improvements are, most of them will not be immediately beneficial to Linux desktop users with Canonical having decided to ship Ubuntu 10.04
with the Linux 2.6.32 kernel instead.
This first DRM pull request for the Linux 2.6.33 kernel can be found on the mailing list