2009-12-24 09:53:48 +00:00
|
|
|
Distribution
|
|
|
|
============
|
|
|
|
|
|
|
|
Along with the interface definitions, the following drivers, state trackers,
|
|
|
|
and auxiliary modules are shipped in the standard Gallium distribution.
|
|
|
|
|
|
|
|
Drivers
|
|
|
|
-------
|
|
|
|
|
|
|
|
Cell
|
|
|
|
^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Simple driver for the IBM Cell architecture. Runs faster than :ref:`softpipe`
|
|
|
|
on Cell-based machines.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
Failover
|
|
|
|
^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Broken and deprecated.
|
2009-12-24 09:53:48 +00:00
|
|
|
|
|
|
|
Intel i915
|
|
|
|
^^^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Driver for Intel i915 and i945 chipsets.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
Intel i965
|
|
|
|
^^^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Highly experimental driver for Intel i965 chipsets.
|
2009-12-24 09:53:48 +00:00
|
|
|
|
|
|
|
Identity
|
|
|
|
^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Wrapper driver. The identity driver is a simple skeleton that passes through
|
|
|
|
all of its :ref:`Context` and :ref:`Screen` methods to an underlying Context
|
|
|
|
and Screen, and as such, it is an excellent starting point for new drivers.
|
2009-12-24 09:53:48 +00:00
|
|
|
|
|
|
|
LLVM Softpipe
|
|
|
|
^^^^^^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
A version of :ref:`softpipe` that uses the Low-Level Virtual Machine to
|
|
|
|
dynamically generate optimized rasterizing pipelines.
|
2009-12-24 09:53:48 +00:00
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
nVidia nvfx
|
2009-12-24 09:53:48 +00:00
|
|
|
^^^^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Driver for the nVidia nv30 and nv40 families of GPUs.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
nVidia nv50
|
|
|
|
^^^^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Driver for the nVidia nv50 family of GPUs.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
VMWare SVGA
|
|
|
|
^^^^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Driver for VMWare virtualized guest operating system graphics processing.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
ATI r300
|
|
|
|
^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Driver for the ATI/AMD r300, r400, and r500 families of GPUs.
|
|
|
|
|
|
|
|
.. _softpipe:
|
2009-12-24 09:53:48 +00:00
|
|
|
|
|
|
|
Softpipe
|
|
|
|
^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Reference software rasterizer. Slow but accurate.
|
2009-12-24 09:53:48 +00:00
|
|
|
|
|
|
|
Trace
|
|
|
|
^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Wrapper driver. Trace dumps an XML record of the calls made to the
|
|
|
|
:ref:`Context` and :ref:`Screen` objects that it wraps.
|
2009-12-24 09:53:48 +00:00
|
|
|
|
|
|
|
State Trackers
|
|
|
|
--------------
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
.. _dri:
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
Direct Rendering Infrastructure
|
|
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Tracker that implements the client-side DRI protocol, for providing direct
|
|
|
|
acceleration services to X11 servers with the DRI extension. Supports DRI1
|
|
|
|
and DRI2. Only GL is supported.
|
|
|
|
|
|
|
|
.. _egl:
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
EGL
|
|
|
|
^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Tracker for the Khronos EGL standard, used to set up GL and GLES contexts
|
|
|
|
without extra knowledge of the underlying windowing system.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
GLX
|
|
|
|
^^^
|
|
|
|
|
|
|
|
MesaGL
|
|
|
|
^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Tracker implementing a GL state machine. Not usable as a standalone tracker;
|
|
|
|
Mesa should be built with another state tracker, such as :ref:`DRI` or
|
|
|
|
:ref:`EGL`.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
Python
|
|
|
|
^^^^^^
|
|
|
|
|
|
|
|
OpenVG
|
|
|
|
^^^^^^
|
|
|
|
|
|
|
|
WGL
|
|
|
|
^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Xorg/XFree86 DDX
|
2009-12-24 09:53:48 +00:00
|
|
|
^^^^^^^^^^^^^^^^
|
|
|
|
|
2010-06-17 00:52:52 +01:00
|
|
|
Tracker for XFree86 and Xorg X11 servers. Provides device-dependent
|
|
|
|
modesetting and acceleration as a DDX driver.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
Auxiliary
|
|
|
|
---------
|
|
|
|
|
2010-02-03 15:56:36 +00:00
|
|
|
OS
|
|
|
|
^^
|
|
|
|
|
|
|
|
The OS module contains the abstractions for basic operating system services:
|
|
|
|
|
|
|
|
* memory allocation
|
|
|
|
* simple message logging
|
|
|
|
* obtaining run-time configuration option
|
|
|
|
* threading primitives
|
|
|
|
|
|
|
|
This is the bare minimum required to port Gallium to a new platform.
|
|
|
|
|
|
|
|
The OS module already provides the implementations of these abstractions for
|
|
|
|
the most common platforms. When targeting an embedded platform no
|
|
|
|
implementation will be provided -- these must be provided separately.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
CSO Cache
|
|
|
|
^^^^^^^^^
|
|
|
|
|
2010-01-18 23:24:51 +00:00
|
|
|
The CSO cache is used to accelerate preparation of state by saving
|
|
|
|
driver-specific state structures for later use.
|
|
|
|
|
2010-01-19 01:12:13 +00:00
|
|
|
.. _draw:
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
Draw
|
|
|
|
^^^^
|
|
|
|
|
2010-01-19 00:40:39 +00:00
|
|
|
Draw is a software :term:`TCL` pipeline for hardware that lacks vertex shaders
|
2010-01-18 23:24:51 +00:00
|
|
|
or other essential parts of pre-rasterization vertex preparation.
|
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
Gallivm
|
|
|
|
^^^^^^^
|
|
|
|
|
|
|
|
Indices
|
|
|
|
^^^^^^^
|
|
|
|
|
2010-01-18 23:24:51 +00:00
|
|
|
Indices provides tools for translating or generating element indices for
|
|
|
|
use with element-based rendering.
|
|
|
|
|
|
|
|
Pipe Buffer Managers
|
|
|
|
^^^^^^^^^^^^^^^^^^^^
|
2010-01-14 04:46:53 +00:00
|
|
|
|
2010-01-18 23:24:51 +00:00
|
|
|
Each of these managers provides various services to drivers that are not
|
|
|
|
fully utilizing a memory manager.
|
2009-12-24 09:53:48 +00:00
|
|
|
|
|
|
|
Remote Debugger
|
|
|
|
^^^^^^^^^^^^^^^
|
|
|
|
|
|
|
|
Runtime Assembly Emission
|
|
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
|
|
|
TGSI
|
|
|
|
^^^^
|
|
|
|
|
2010-01-18 23:24:51 +00:00
|
|
|
The TGSI auxiliary module provides basic utilities for manipulating TGSI
|
|
|
|
streams.
|
2010-01-14 04:46:53 +00:00
|
|
|
|
2009-12-24 09:53:48 +00:00
|
|
|
Translate
|
|
|
|
^^^^^^^^^
|
|
|
|
|
|
|
|
Util
|
|
|
|
^^^^
|
|
|
|
|