The death sentence to the ATI Radeon R300/R600 classic Mesa drivers has been carried out. It's all about the Gallium3D drivers now for upstream Mesa for R300 hardware and newer -- up through the latest Radeon HD 6000 series and Fusion.
Yesterday I wrote about the state of OpenGL 3.0 support in Mesa, but here's also some of the other missing items from the open-source graphics drivers.
Last month during XDC2011 Chicago it was publicly talked about how Intel wants OpenGL 3.0 support in Mesa and ideally before year's end. But how's that goal coming?
Last month at XDC2011 Chicago the long-standing goal of killing off Mesa IR was talked about by Intel. There's already been the GLSL-To-TGSI translator (and also competing with that is LunarGLASS to replace Mesa IR with LLVM IR), and now there's some new work to talk about in this area that works towards the common goal.
Marek Olšák, one of the most prolific independent contributors to Mesa / Gallium3D, has more exciting work at hand. Marek has published a patch to make the necessary changes to Gallium3D so that it can implement transform feedback support, a feature of OpenGL 3.0.
Ian Romanick of Intel, in the conquest to deliver OpenGL 3.0 support to the open-source Mesa stack by potentially year's end, has a new patch-set for examination.
Earlier this year Zack Rusin introduced ApiTrace as a new way to debug graphics drivers and other areas of the graphics stack. ApiTrace is an open-source utility that allows capturing DirectX/OpenGL API calls and to analyze them later on in a step-by-step manner. There's also other features like real-time editing of shaders and making other tweaks to how the calls are executed. ApiTrace even has a nice GUI too. Zack has now announced ApiTrace 2.0 and it makes this very useful graphics utility even much better.
Chad Versace of Intel has published a set of nineteen patches to the Mesa mailing list that implement HiZ and depth resolve support for the Intel Linux graphics driver. Unfortunately, it's not without some regressions.
There's patches now floating on the Mesa mailing list that provide support for OpenGL Uniform Buffer Objects (UBOs) in Mesa. This is noteworthy as it's another OpenGL 3.1+ feature that's been sadly missing from this open-source graphics stack.
Due to being busy with XDC2011 Chicago, there was some news missed over the weekend: there's the Mesa user-space side support for Nouveau video decoding using a hardware-based NVIDIA video decoder.
Emeric Grange has published a set of nine patches for the Gallium3D G3DVL video decoding stack. These patches largely originate from his work this summer on Gallium3D VP8 video decoding as part of Google's Summer of Code.
Last week I mentioned that Chrome/Chromium OS developers at Google implemented GLX_EXT_texture_from_pixmap support for software drivers. This is the GLX extension commonly needed by Compiz and other compositing window managers. This work has been merged into Git, so is there new "desktop bling" chewing up your CPU?
One week ago Ian Romanick called for old Mesa drivers to be removed from the mainline tree so that Mesa can move forward and be cleaned up to better the support for modern GPUs. These old Mesa drivers were DRI1-only, rarely ever received new work, and were largely for vintage graphics processors that most people haven't touched in years (e.g. the 3Dfx Voodoo days). With most developers approving this move, the old Mesa graphics drivers were removed. Ian Romanick has now moved further along with a slew of new patches to delete more code from Mesa.
If you're not following me on Twitter, you're missing out on news and some very interesting photos that were posted this weekend. No, it's not of the latest beer, but of a feast of graphics cards. A 40-way comparison of NVIDIA/AMD graphics cards on Linux with the open-source Mesa/Gallium3D drivers versus their proprietary brethren is being carried out for publishing in September.
From this year's Google Summer of Code we know that morphological anti-aliasing (MLAA) for Gallium3D was a great success ready to be merged, there was good progress with the OpenCL Gallium3D state tracker, and the remote Wayland Display Server didn't make it too far. But was it a success for the VP8 state tracker for accelerating Google's video codec in Gallium3D with VDPAU? Here's a status update.
The death sentence to legacy Mesa drivers was carried out over the night. All DRI1 drivers have been removed from the Mesa tree along with support for BeOS and other old code, in an effort to remove drivers that receive little maintenance and are just causing a greater burden in re-factoring core Mesa code for the modern drivers. This means though that the Linux desktop loses its support for hardware like VIA Unichrome and 3dfx Voodoo graphics cards.
It's now possible to build and run mainline Mesa releases on Google's Android platform. While this doesn't make too much sense to use Mesa on Android for mobile ARM devices due to the lack of open-source Mesa / Gallium3D graphics drivers in this area, this support opens up new possibilities for running the Android operating system on x86 netbooks and tablets.
Last year at XDS 2010 Toulouse there was a discussion about killing old X.Org / Mesa drivers with fire. In particular, dropping all the old drivers that go un-maintained and have little in the way of users and modern functionality. Last year they decided to not really do much about it since these drivers cause little maintenance burden, but the topic has been brought up again and it sounds like these crusty old Linux drivers will finally receive their death sentence.
Google's 2011 Summer of Code is coming to an end with today being one of the soft deadlines for the student developers to finish up work on their summer projects. Of the Mesa / GSoC summer projects this year, I mentioned the MLAA support for Gallium3D was a success with the post-processing infrastructure and morphological anti-aliasing support seeking mainline inclusion into Mesa. Here's a status update on how the Gallium3D OpenCL support has come over the summer.
One of the projects being worked on via X.Org / Mesa with the 2011 Google Summer of Code is morphological anti-aliasing (MLAA) support for Gallium3D / Mesa. Back in July there was MLAA code ready to be tested, but now the student developer behind this code, Lauri Kasanen, has published patches that add the post-processing infrastructure to Gallium3D. The work may soon be ready to be merged to master.
Benjamin Franzke, the open-source developer that for a number of months has been contributed to Mesa / Wayland, has continued with his work. His latest achievement is landing some new EGL code in Mesa, which will benefit Wayland too.
Intel's Eric Anholt and Ian Romanick have each published a large number of patches to the Mesa development list. Eric dropped a series of 37 patches that implement his MapTextureImage work for OpenGL while Ian Romanick has nine patches today for his Mesa IR cleaning.
With the release this week of the OpenGL 4.2 specification (and accompanying GL Shading Language 4.20 revision), the TODO list for the open-source Mesa developers just got a bit longer. Mesa / Gallium3D still lacks full support for OpenGL 3.0 and all of the revisions since that 2008 specification release.
One month ago I mentioned there was a possible workaround for the S3TC patent situation. The possible S3TC workaround was S2TC, which is a simpler implementation of texture compression than the patented S3 Texture Compression algorithms, and comes gratis from the developers of the Xonotic game. However, Mesa developers still aren't thrilled about this possible solution.
For those not closely watching the Mesa Git tree, just hours ago the Mesa GLSL-To-TGSI translator was merged to master, making it a feature for the next Mesa 7.12 (or potentially Mesa 8.0) release.
Now that Mesa 7.11 has been released, will the GLSL to TGSI translator be merged to master? All indications would be yes.
For those not living in the wonderful land of Git for Mesa, the second release candidate of the forthcoming Mesa 7.11 release is now available.
Besides pipe-video landing in Mesa, there's some more good news to report when it comes to accelerated video playback over Mesa/Gallium3D. There's a VP8 state tracker for this Google format that's actively being developed.
As expected, Christian König has pushed the Gallium3D pipe-video work into the mainline Mesa repository, which will be one of the big features to be introduced in Mesa 7.12/8.0 release, not the forthcoming Mesa 7.11.
Last month it was announced that the GLSL IR to TGSI translator for Mesa that avoids the use of the inefficient and old Mesa IR was ready to be merged. A month later, the code for this core Mesa improvement hasn't been pulled.
798 Mesa news articles published on Phoronix.