blob: 67272034c53c67a54c8edf59fc1171676aa2550f [file] [log] [blame]
Corbin Simpsonacb80732009-12-24 01:53:48 -08001Distribution
2============
3
Marek Olšák8c9b9aa2019-12-03 20:38:14 -05004Along with the interface definitions, the following drivers, gallium frontends,
Corbin Simpsonacb80732009-12-24 01:53:48 -08005and auxiliary modules are shipped in the standard Gallium distribution.
6
7Drivers
8-------
9
Corbin Simpsonacb80732009-12-24 01:53:48 -080010Intel i915
11^^^^^^^^^^
12
Corbin Simpsone7d05f12010-06-16 16:52:52 -070013Driver for Intel i915 and i945 chipsets.
14
Corbin Simpsonacb80732009-12-24 01:53:48 -080015LLVM Softpipe
16^^^^^^^^^^^^^
17
Corbin Simpsone7d05f12010-06-16 16:52:52 -070018A version of :ref:`softpipe` that uses the Low-Level Virtual Machine to
19dynamically generate optimized rasterizing pipelines.
20
Andreas Boll0ce21662012-10-14 13:30:21 +020021nVidia nv30
Corbin Simpsonacb80732009-12-24 01:53:48 -080022^^^^^^^^^^^
23
Corbin Simpsone7d05f12010-06-16 16:52:52 -070024Driver for the nVidia nv30 and nv40 families of GPUs.
Corbin Simpsonacb80732009-12-24 01:53:48 -080025
26nVidia nv50
27^^^^^^^^^^^
28
Corbin Simpsone7d05f12010-06-16 16:52:52 -070029Driver for the nVidia nv50 family of GPUs.
30
Andreas Boll0ce21662012-10-14 13:30:21 +020031nVidia nvc0
32^^^^^^^^^^^
33
34Driver for the nVidia nvc0 / fermi family of GPUs.
35
Corbin Simpson0a663bb2010-07-27 16:34:57 -070036VMware SVGA
Corbin Simpsonacb80732009-12-24 01:53:48 -080037^^^^^^^^^^^
38
Corbin Simpson0a663bb2010-07-27 16:34:57 -070039Driver for VMware virtualized guest operating system graphics processing.
Corbin Simpsone7d05f12010-06-16 16:52:52 -070040
Corbin Simpsonacb80732009-12-24 01:53:48 -080041ATI r300
42^^^^^^^^
43
Corbin Simpsone7d05f12010-06-16 16:52:52 -070044Driver for the ATI/AMD r300, r400, and r500 families of GPUs.
45
Andreas Boll0ce21662012-10-14 13:30:21 +020046ATI/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
Rob Clark0e8d58b2015-01-29 15:55:41 -050056freedreno
57^^^^^^^^^
58
59Driver for Qualcomm Adreno a2xx, a3xx, and a4xx series of GPUs.
60
Corbin Simpsone7d05f12010-06-16 16:52:52 -070061.. _softpipe:
Corbin Simpsonacb80732009-12-24 01:53:48 -080062
63Softpipe
64^^^^^^^^
65
Corbin Simpsone7d05f12010-06-16 16:52:52 -070066Reference software rasterizer. Slow but accurate.
Corbin Simpsonacb80732009-12-24 01:53:48 -080067
Ilia Mirkin05d02232014-03-31 18:08:07 -040068.. _trace:
69
Corbin Simpsonacb80732009-12-24 01:53:48 -080070Trace
71^^^^^
72
Corbin Simpsone7d05f12010-06-16 16:52:52 -070073Wrapper driver. Trace dumps an XML record of the calls made to the
74:ref:`Context` and :ref:`Screen` objects that it wraps.
Corbin Simpsonacb80732009-12-24 01:53:48 -080075
Jakob Bornecrantzfe199352010-08-15 00:57:18 +010076Rbug
77^^^^
78
79Wrapper driver. :ref:`rbug` driver used with stand alone rbug-gui.
80
Marek Olšák8c9b9aa2019-12-03 20:38:14 -050081Gallium frontends
82-----------------
Corbin Simpsonacb80732009-12-24 01:53:48 -080083
Andreas Boll0ce21662012-10-14 13:30:21 +020084Clover
85^^^^^^
86
87Tracker that implements the Khronos OpenCL standard.
88
Corbin Simpsone7d05f12010-06-16 16:52:52 -070089.. _dri:
90
Corbin Simpsonacb80732009-12-24 01:53:48 -080091Direct Rendering Infrastructure
92^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
93
Corbin Simpsone7d05f12010-06-16 16:52:52 -070094Tracker that implements the client-side DRI protocol, for providing direct
95acceleration services to X11 servers with the DRI extension. Supports DRI1
96and DRI2. Only GL is supported.
97
Corbin Simpsonacb80732009-12-24 01:53:48 -080098GLX
99^^^
100
101MesaGL
102^^^^^^
103
Marek Olšák8c9b9aa2019-12-03 20:38:14 -0500104The gallium frontend implementing a GL state machine. Not usable as
105a standalone frontend; Mesa should be built with another gallium frontend,
Erik Faye-Lund686f6c72020-06-30 11:13:51 +0200106such as :ref:`DRI` or EGL.
Corbin Simpsone7d05f12010-06-16 16:52:52 -0700107
Andreas Boll0ce21662012-10-14 13:30:21 +0200108VDPAU
109^^^^^
110
111Tracker for Video Decode and Presentation API for Unix.
112
Corbin Simpsonacb80732009-12-24 01:53:48 -0800113WGL
114^^^
115
Andreas Boll0ce21662012-10-14 13:30:21 +0200116Xorg DDX
117^^^^^^^^
Corbin Simpsonacb80732009-12-24 01:53:48 -0800118
Andreas Boll0ce21662012-10-14 13:30:21 +0200119Tracker for Xorg X11 servers. Provides device-dependent
Corbin Simpsone7d05f12010-06-16 16:52:52 -0700120modesetting and acceleration as a DDX driver.
121
Andreas Boll0ce21662012-10-14 13:30:21 +0200122XvMC
123^^^^
124
125Tracker for X-Video Motion Compensation.
126
Corbin Simpsonacb80732009-12-24 01:53:48 -0800127Auxiliary
128---------
129
José Fonseca976afaf2010-02-03 15:56:36 +0000130OS
131^^
132
133The OS module contains the abstractions for basic operating system services:
134
135* memory allocation
136* simple message logging
137* obtaining run-time configuration option
138* threading primitives
139
140This is the bare minimum required to port Gallium to a new platform.
141
142The OS module already provides the implementations of these abstractions for
143the most common platforms. When targeting an embedded platform no
144implementation will be provided -- these must be provided separately.
145
Corbin Simpsonacb80732009-12-24 01:53:48 -0800146CSO Cache
147^^^^^^^^^
148
Corbin Simpson4f52dfe2010-01-18 15:24:51 -0800149The CSO cache is used to accelerate preparation of state by saving
150driver-specific state structures for later use.
151
Corbin Simpson2598f002010-01-18 17:12:13 -0800152.. _draw:
153
Corbin Simpsonacb80732009-12-24 01:53:48 -0800154Draw
155^^^^
156
Corbin Simpson2b4ad022010-01-18 16:40:39 -0800157Draw is a software :term:`TCL` pipeline for hardware that lacks vertex shaders
Corbin Simpson4f52dfe2010-01-18 15:24:51 -0800158or other essential parts of pre-rasterization vertex preparation.
159
Corbin Simpsonacb80732009-12-24 01:53:48 -0800160Gallivm
161^^^^^^^
162
163Indices
164^^^^^^^
165
Corbin Simpson4f52dfe2010-01-18 15:24:51 -0800166Indices provides tools for translating or generating element indices for
167use with element-based rendering.
Corbin Simpson6a2936b2010-01-13 20:46:53 -0800168
Corbin Simpson4f52dfe2010-01-18 15:24:51 -0800169Pipe Buffer Managers
170^^^^^^^^^^^^^^^^^^^^
171
172Each of these managers provides various services to drivers that are not
173fully utilizing a memory manager.
Corbin Simpsonacb80732009-12-24 01:53:48 -0800174
175Remote Debugger
176^^^^^^^^^^^^^^^
177
178Runtime Assembly Emission
179^^^^^^^^^^^^^^^^^^^^^^^^^
180
Corbin Simpsonacb80732009-12-24 01:53:48 -0800181TGSI
182^^^^
183
Corbin Simpson4f52dfe2010-01-18 15:24:51 -0800184The TGSI auxiliary module provides basic utilities for manipulating TGSI
185streams.
Corbin Simpson6a2936b2010-01-13 20:46:53 -0800186
Corbin Simpsonacb80732009-12-24 01:53:48 -0800187Translate
188^^^^^^^^^
189
190Util
191^^^^
192