Home | History | Annotate | Download | only in source
      1 Distribution
      2 ============
      3 
      4 Along with the interface definitions, the following drivers, state trackers,
      5 and auxiliary modules are shipped in the standard Gallium distribution.
      6 
      7 Drivers
      8 -------
      9 
     10 Intel i915
     11 ^^^^^^^^^^
     12 
     13 Driver for Intel i915 and i945 chipsets.
     14 
     15 Identity
     16 ^^^^^^^^
     17 
     18 Wrapper driver. The identity driver is a simple skeleton that passes through
     19 all of its :ref:`Context` and :ref:`Screen` methods to an underlying Context
     20 and Screen, and as such, it is an excellent starting point for new drivers.
     21 
     22 LLVM Softpipe
     23 ^^^^^^^^^^^^^
     24 
     25 A version of :ref:`softpipe` that uses the Low-Level Virtual Machine to
     26 dynamically generate optimized rasterizing pipelines.
     27 
     28 nVidia nvfx
     29 ^^^^^^^^^^^
     30 
     31 Driver for the nVidia nv30 and nv40 families of GPUs.
     32 
     33 nVidia nv50
     34 ^^^^^^^^^^^
     35 
     36 Driver for the nVidia nv50 family of GPUs.
     37 
     38 VMware SVGA
     39 ^^^^^^^^^^^
     40 
     41 Driver for VMware virtualized guest operating system graphics processing.
     42 
     43 ATI r300
     44 ^^^^^^^^
     45 
     46 Driver for the ATI/AMD r300, r400, and r500 families of GPUs.
     47 
     48 .. _softpipe:
     49 
     50 Softpipe
     51 ^^^^^^^^
     52 
     53 Reference software rasterizer. Slow but accurate.
     54 
     55 Trace
     56 ^^^^^
     57 
     58 Wrapper driver. Trace dumps an XML record of the calls made to the
     59 :ref:`Context` and :ref:`Screen` objects that it wraps.
     60 
     61 Rbug
     62 ^^^^
     63 
     64 Wrapper driver. :ref:`rbug` driver used with stand alone rbug-gui.
     65 
     66 .. _galahad:
     67 
     68 Galahad
     69 ^^^^^^^
     70 
     71 Wrapper driver. Sanity checker for the internal gallium state. Normally
     72 a driver should n't have to sanity check the input it gets from a state
     73 tracker. Any wrong state received should be perceived as a state tracker bug.
     74 
     75 State Trackers
     76 --------------
     77 
     78 .. _dri:
     79 
     80 Direct Rendering Infrastructure
     81 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     82 
     83 Tracker that implements the client-side DRI protocol, for providing direct
     84 acceleration services to X11 servers with the DRI extension. Supports DRI1
     85 and DRI2. Only GL is supported.
     86 
     87 .. _egl:
     88 
     89 EGL
     90 ^^^
     91 
     92 Tracker for the Khronos EGL standard, used to set up GL and GLES contexts
     93 without extra knowledge of the underlying windowing system.
     94 
     95 GLX
     96 ^^^
     97 
     98 MesaGL
     99 ^^^^^^
    100 
    101 Tracker implementing a GL state machine. Not usable as a standalone tracker;
    102 Mesa should be built with another state tracker, such as :ref:`DRI` or
    103 :ref:`EGL`.
    104 
    105 Python
    106 ^^^^^^
    107 
    108 OpenVG
    109 ^^^^^^
    110 
    111 WGL
    112 ^^^
    113 
    114 Xorg/XFree86 DDX
    115 ^^^^^^^^^^^^^^^^
    116 
    117 Tracker for XFree86 and Xorg X11 servers. Provides device-dependent
    118 modesetting and acceleration as a DDX driver.
    119 
    120 Auxiliary
    121 ---------
    122 
    123 OS
    124 ^^
    125 
    126 The OS module contains the abstractions for basic operating system services:
    127 
    128 * memory allocation
    129 * simple message logging
    130 * obtaining run-time configuration option
    131 * threading primitives
    132 
    133 This is the bare minimum required to port Gallium to a new platform.
    134 
    135 The OS module already provides the implementations of these abstractions for
    136 the most common platforms.  When targeting an embedded platform no
    137 implementation will be provided -- these must be provided separately.
    138 
    139 CSO Cache
    140 ^^^^^^^^^
    141 
    142 The CSO cache is used to accelerate preparation of state by saving
    143 driver-specific state structures for later use.
    144 
    145 .. _draw:
    146 
    147 Draw
    148 ^^^^
    149 
    150 Draw is a software :term:`TCL` pipeline for hardware that lacks vertex shaders
    151 or other essential parts of pre-rasterization vertex preparation.
    152 
    153 Gallivm
    154 ^^^^^^^
    155 
    156 Indices
    157 ^^^^^^^
    158 
    159 Indices provides tools for translating or generating element indices for
    160 use with element-based rendering.
    161 
    162 Pipe Buffer Managers
    163 ^^^^^^^^^^^^^^^^^^^^
    164 
    165 Each of these managers provides various services to drivers that are not
    166 fully utilizing a memory manager.
    167 
    168 Remote Debugger
    169 ^^^^^^^^^^^^^^^
    170 
    171 Runtime Assembly Emission
    172 ^^^^^^^^^^^^^^^^^^^^^^^^^
    173 
    174 TGSI
    175 ^^^^
    176 
    177 The TGSI auxiliary module provides basic utilities for manipulating TGSI
    178 streams.
    179 
    180 Translate
    181 ^^^^^^^^^
    182 
    183 Util
    184 ^^^^
    185 
    186