Back in December of 2008 VMware acquired Tungsten Graphics
, the company that's principally behind Mesa 3D along with the Gallium3D driver architecture, the TTM memory manager, and other parts of the Linux graphics stack. A year later (this past November/December) we then found out VMware had them create a virtual Gallium3D driver
for their VMware virtualization platform so that virtualized operating systems can exploit the graphics processor on the host system just not for driving OpenGL support, but OpenCL, OpenVG, OpenGL ES, and other areas covered now by the Gallium3D state tracker and going into the future (VDPAU, etc).
One of the latest branches appearing for Gallium3D is coming from VMware's José Fonseca. This branch is called "gallium-embedded" and it basically splits up Gallium3D so that it can work more nicely on embedded platforms and makes porting Gallium3D to new operating systems easier. All in-line code and OS dependencies have been removed from the Gallium3D pipe header files and all operating system abstractions have been moved into a separate, optional sub-module.
This separation of Gallium3D then makes it possible for one to just create a "mean and lean" implementation as José describes it in the mailing list announcement
, an implementation with Gallium3D interfaces and auxiliary modules but no OS abstractions (for embedded platforms), and then the "everything" mix that is effectively Gallium3D now with all code enabled and is what's used on Linux and Windows.
José Fonseca has not commented on why he's doing this work, but VMware must have some reasoning for sanctioning these embedded enhancements to Gallium3D. Recently by a third-party developer that has been an effort to bring Mesa / Gallium3D to Google's Android
, which may help there after a new EGL state tracker arrived
. It could potentially help OpenMoko too, which already has KMS and GEM support