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