The work going into Mesa the past few months that will eventually be released as Mesa 7.9
continues to get more exciting. There's many improvements and new features in Mesa and Gallium3D for the 7.9 release and the latest feature was brought this morning by Kristian Høgsberg with merging support for the EGL_MESA_drm_image extension.
Mesa 7.9 already is set to offer a new GLSL compiler
developed by Intel to replace Mesa's longstanding GL Shading Language compiler, initial ATI Evergreen 3D support
, remarkable improvements to the ATI Gallium3D driver
(R300g), the R600g Gallium3D driver starting to work
, Nouveau Gallium3D improvements
, support for more OpenGL 3.x extensions
, LLVMpipe improvements
, and countless other improvements and optimizations.
If this set of features wasn't already enough, Kristian has finally merged his EGL_MESA_drm_image work to the mainline Mesa code-base. For those unfamiliar with this extension that Kristian designed himself, below is the overview he wrote.
This extension provides entry points for integrating EGLImage with the Linux DRM mode setting and memory management drivers. The extension lets applications create EGLImages without a client API resource and lets the application get the DRM buffer handles.
This description may not get you excited as an end-user, but it's actually significant in that it's a requirement for running the Wayland Display Server
. In fact, it's because of this extension why up until now you've had to build Mesa while building Wayland from Kristian's personal Git code repository.
Kristian added the EGL_MESA_drm_image extension to Mesa's EGL driver
, then to the EGL_DRI2 driver
, and lastly he added the hardware support to the Intel DRI driver
. Unfortunately the MESA_drm_image extension hasn't yet been added to any other Mesa hardware drivers, but it should be small to implement.
With this extension now living in mainline Mesa, it should now be possible to run Wayland with this newest Mesa Git or when running 7.9 or later as a released version. This has been the last hold-back for Wayland so now it's really just a matter of building the Wayland Display Server and then running it, since branched versions of Mesa or the DRM/KMS is no longer needed. You just need to be running a graphics card with kernel mode-setting support and then have your hardware implement EGL_MESA_drm_image, which right now is there for Intel but hopefully the Radeon/Nouveau support isn't too far behind.
Those interested in running Wayland can find build instructions on its Google Groups page
, but until the page is updated just use the mainline Mesa repository rather than Høgsberg's EGL-KMS branch. We haven't yet tested Wayland against mainline Mesa with these latest commits, but if you give it a shot let us know in the forums.Update:
Kristian has just updated Wayland so that with the latest commit
you can indeed run Wayland from mainline Mesa code!