Now You Can Run Wayland From Mainline Mesa

Posted by Michael Larabel on August 25, 2010

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!

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. The Cost Of Ubuntu Disk Encryption
  2. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  3. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  4. F2FS File-System Shows Regressions On Linux 3.10
Latest Linux News
  1. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  2. Handbrake 0.9.9 Supports OpenCL Offloading
  3. Freedreno Gallium3D Now Banging The Adreno A3XX
  4. Jolla Announces Their First Phone
  5. Mageia 3 Released, Still Using Legacy GRUB
  6. NetBSD 6.1 Brings In More Features
  7. Using Six Monitors With AMD's Open-Source Linux Driver
  8. Benchmarking The Intel P-State, CPUfreq Changes
  9. FreeBSD Still Working On Next-Gen Package Manager
  10. DNF Still Advancing As Experimental Yum For Fedora
  11. Logitech Begins Supporting Linux Users
Latest Forum Talk
  1. Jolla Announces Their First Phone
  2. Mageia 3 Released, Still Using Legacy GRUB
  3. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  4. Modern Intel Gallium3D Driver Still Being Toyed...
  5. OpenSUSE Considers Replacing LXDE With E17
  6. The Cost Of Ubuntu Disk Encryption
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite