## Current Status of Gallium3D Pipes and State Trackers This table lists the current combinations of state trackers and pipe drivers. Explanation: * d3d1x: Direct 3D 10/11 * g3dvl: Generic GPU-Accelerated Video Decoding * vega: OpenVG - The Standard for Vector Graphics Acceleration * egl: Windowing system trackers similar to dri of EGL standard. * wgl: Windowing system trackers similar to dri for MS Windows. Unlisted drivers: * identity: This is a skeleton driver, used for passthrough and wrapping of pipes. * nouveau: This is not actually a driver, but a set of routines common to all nv pipes. * trace: This is a passthrough driver that traces Gallium library calls. State tracker conformance tests: * mesa: tri, gears, piglit. tri and gears must render correctly and not crash; piglit must pass. * vega: None. * exa: rendercheck. This should be a goal for improving exa, drivers bound to exa, and rendercheck. * g3dvl: None. * dri: glxinfo. Must say that direct rendering is enabled. * xorg: Xorg. X server must come up. Input drivers do not matter. * egl: eglinfo, eglscreen, egltri. egltri must render correctly. * wgl: None. What do these mean? * "**DONE**" means that it is implemented and passes the state-tracker-specific conformance test. * "**MOSTLY**" means that it is implemented but does not pass the conformance test. * "**WIP**" means that the implementation is being worked on, but should not be considered ready for general testing. * "**SLOW**" means that the feature is DONE, but not performant due to known deficiencies in the code. * "**TODO**" means that the implementation is incomplete and nobody is working on it. * "**UNKNOWN**" means that the current status of this item isn't known. If you're the maintainer of any of this code, please update these when you can, especially UNKNOWN slots. [[!table header="no" class="mointable" data=""" | **mesa** | **vega** | **exa** | **g3dvl** | **d3d1x** | **opencl** | | **dri** | **xorg** | **egl** | **wgl** i915 (Intel i915/i945) | DONE | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | TODO | | DONE | DEPRECATED | DONE | UNKNOWN nv30 (nVidia NV30 and NV40) | WIP | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | N/A | | MOSTLY | DEPRECATED | DONE | UNKNOWN nv50 (nVidia NV50/G80) | DONE | UNKNOWN | UNKNOWN | WIP1 | WIP | WIP | | MOSTLY | DEPRECATED | DONE | UNKNOWN nvc0 (nVidia NVC0/Fermi) | DONE | UNKNOWN | UNKNOWN | WIP | DONE | TODO | | MOSTLY | DEPRECATED | DONE | UNKNOWN r300 (ATI R300/R400/R500) | DONE | WIP | WIP | WIP | UNKNOWN | TODO | | DONE | DEPRECATED | DONE | TODO r600 (ATI R600/R700/R800/R900) | DONE | WIP | WIP | WIP | UNKNOWN | WIP | | DONE | DEPRECATED | DONE | TODO radeonsi (AMD Southern Islands) | WIP | UNKNOWN | UNKNOWN | WIP | UNKNOWN | TODO | | WIP | DEPRECATED | WIP | UNKNOWN softpipe | MOSTLY | MOSTLY | UNKNOWN | UNKNOWN | UNKNOWN | TODO | | DONE | DEPRECATED | DONE | DONE svga (VMware Virtual GPU) | DONE | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | TODO | | MOSTLY | DEPRECATED | DONE | UNKNOWN """]] ### Notes 1 - mpeg2 hardware (not shaders) decoding DONE ### Feature stacks that give equivalent functionality to the classic MESA implementation [[!format txt """ Gallium3D Classic MESA --------------------------------- xorg + exa DDX + Xv dri + mesa GL + GLSL dri DRI2 KMS + Gallium3D DRM + DRI + DDX """]]