For each type of graphics card there is a Device Dependent X (DDX) driver which does initialization, manages the display and performs 2D rendering. XFree86 4.0 introduced a new device driver interface called XAA which should allow XFree86 drivers to be backward compatible with future versions of the X server.
Each 2D driver has a bit of code to bootstrap the 3D / DRI features.
Where does the DDX driver resides?
The DDX drivers reside in a package called
foo is usually the company that produces the hardware, or the hardware brand name, or something related (e.g. xf86-video-intel, xf86-video-ati, xf86-video-nouveau). The open source drivers are developed using and hosted on
git.freedesktop.org, which is accessible via a web interface at http://cgit.freedesktop.org/.
The source code to the part of the DDX which is relevant to DRI and thus 3D acceleration is typically in files called
Possible future developments
With the introduction of
xf86-video-modesetting. This is only an experiment as of this writing (October 2008). The generic DDX would use a Gallium3D backend for hardware acceleration purposes.
At XDC 2009, it was suggested to move many of the "main" DDX back into the X server Git repository.
Todo: Merge/Link this page to something in the main X.org Wiki to avoid redundancy?