xref: /aosp_15_r20/external/mesa3d/docs/gallium/distro.rst (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1*61046927SAndroid Build Coastguard WorkerDistribution
2*61046927SAndroid Build Coastguard Worker============
3*61046927SAndroid Build Coastguard Worker
4*61046927SAndroid Build Coastguard WorkerAlong with the interface definitions, the following drivers, Gallium frontends,
5*61046927SAndroid Build Coastguard Workerand auxiliary modules are shipped in the standard Gallium distribution.
6*61046927SAndroid Build Coastguard Worker
7*61046927SAndroid Build Coastguard WorkerDrivers
8*61046927SAndroid Build Coastguard Worker-------
9*61046927SAndroid Build Coastguard Worker
10*61046927SAndroid Build Coastguard WorkerIntel i915
11*61046927SAndroid Build Coastguard Worker^^^^^^^^^^
12*61046927SAndroid Build Coastguard Worker
13*61046927SAndroid Build Coastguard WorkerDriver for Intel i915 and i945 chipsets.
14*61046927SAndroid Build Coastguard Worker
15*61046927SAndroid Build Coastguard WorkerLLVM Softpipe
16*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^^^
17*61046927SAndroid Build Coastguard Worker
18*61046927SAndroid Build Coastguard WorkerA version of :ref:`softpipe` that uses the Low-Level Virtual Machine to
19*61046927SAndroid Build Coastguard Workerdynamically generate optimized rasterizing pipelines.
20*61046927SAndroid Build Coastguard Worker
21*61046927SAndroid Build Coastguard WorkerNVIDIA NV30
22*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^
23*61046927SAndroid Build Coastguard Worker
24*61046927SAndroid Build Coastguard WorkerDriver for the NVIDIA NV30 and NV40 families of GPUs.
25*61046927SAndroid Build Coastguard Worker
26*61046927SAndroid Build Coastguard WorkerNVIDIA NV50
27*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^
28*61046927SAndroid Build Coastguard Worker
29*61046927SAndroid Build Coastguard WorkerDriver for the NVIDIA NV50 family of GPUs.
30*61046927SAndroid Build Coastguard Worker
31*61046927SAndroid Build Coastguard WorkerNVIDIA NVC0
32*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^
33*61046927SAndroid Build Coastguard Worker
34*61046927SAndroid Build Coastguard WorkerDriver for the NVIDIA NVC0 / Fermi family of GPUs.
35*61046927SAndroid Build Coastguard Worker
36*61046927SAndroid Build Coastguard WorkerVMware SVGA
37*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^
38*61046927SAndroid Build Coastguard Worker
39*61046927SAndroid Build Coastguard WorkerDriver for VMware virtualized guest operating system graphics processing.
40*61046927SAndroid Build Coastguard Worker
41*61046927SAndroid Build Coastguard WorkerATI R300
42*61046927SAndroid Build Coastguard Worker^^^^^^^^
43*61046927SAndroid Build Coastguard Worker
44*61046927SAndroid Build Coastguard WorkerDriver for the ATI/AMD R300, R400, and R500 families of GPUs.
45*61046927SAndroid Build Coastguard Worker
46*61046927SAndroid Build Coastguard WorkerATI/AMD R600
47*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^^
48*61046927SAndroid Build Coastguard Worker
49*61046927SAndroid Build Coastguard WorkerDriver for the ATI/AMD R600, R700, Evergreen and Northern Islands families of GPUs.
50*61046927SAndroid Build Coastguard Worker
51*61046927SAndroid Build Coastguard WorkerAMD RadeonSI
52*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^^
53*61046927SAndroid Build Coastguard Worker
54*61046927SAndroid Build Coastguard WorkerDriver for the AMD Southern Islands family of GPUs.
55*61046927SAndroid Build Coastguard Worker
56*61046927SAndroid Build Coastguard WorkerFreedreno
57*61046927SAndroid Build Coastguard Worker^^^^^^^^^
58*61046927SAndroid Build Coastguard Worker
59*61046927SAndroid Build Coastguard WorkerDriver for Qualcomm Adreno 2xx, 3xx, and 4xx series of GPUs.
60*61046927SAndroid Build Coastguard Worker
61*61046927SAndroid Build Coastguard Worker.. _softpipe:
62*61046927SAndroid Build Coastguard Worker
63*61046927SAndroid Build Coastguard WorkerSoftpipe
64*61046927SAndroid Build Coastguard Worker^^^^^^^^
65*61046927SAndroid Build Coastguard Worker
66*61046927SAndroid Build Coastguard WorkerReference software rasterizer. Slow but accurate.
67*61046927SAndroid Build Coastguard Worker
68*61046927SAndroid Build Coastguard Worker.. _trace:
69*61046927SAndroid Build Coastguard Worker
70*61046927SAndroid Build Coastguard WorkerTrace
71*61046927SAndroid Build Coastguard Worker^^^^^
72*61046927SAndroid Build Coastguard Worker
73*61046927SAndroid Build Coastguard WorkerWrapper driver. Trace dumps an XML record of the calls made to the
74*61046927SAndroid Build Coastguard Worker:ref:`Context` and :ref:`Screen` objects that it wraps.
75*61046927SAndroid Build Coastguard Worker
76*61046927SAndroid Build Coastguard WorkerGallium frontends
77*61046927SAndroid Build Coastguard Worker-----------------
78*61046927SAndroid Build Coastguard Worker
79*61046927SAndroid Build Coastguard WorkerClover
80*61046927SAndroid Build Coastguard Worker^^^^^^
81*61046927SAndroid Build Coastguard Worker
82*61046927SAndroid Build Coastguard WorkerTracker that implements the Khronos OpenCL standard.
83*61046927SAndroid Build Coastguard Worker
84*61046927SAndroid Build Coastguard Worker.. _dri:
85*61046927SAndroid Build Coastguard Worker
86*61046927SAndroid Build Coastguard WorkerDirect Rendering Infrastructure
87*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
88*61046927SAndroid Build Coastguard Worker
89*61046927SAndroid Build Coastguard WorkerTracker that implements the client-side DRI protocol, for providing direct
90*61046927SAndroid Build Coastguard Workeracceleration services to X11 servers with the DRI extension. Supports DRI1
91*61046927SAndroid Build Coastguard Workerand DRI2. Only GL is supported.
92*61046927SAndroid Build Coastguard Worker
93*61046927SAndroid Build Coastguard WorkerGLX
94*61046927SAndroid Build Coastguard Worker^^^
95*61046927SAndroid Build Coastguard Worker
96*61046927SAndroid Build Coastguard WorkerMesaGL
97*61046927SAndroid Build Coastguard Worker^^^^^^
98*61046927SAndroid Build Coastguard Worker
99*61046927SAndroid Build Coastguard WorkerThe Gallium frontend implementing a GL state machine. Not usable as
100*61046927SAndroid Build Coastguard Workera standalone frontend; Mesa should be built with another Gallium frontend,
101*61046927SAndroid Build Coastguard Workersuch as :ref:`DRI` or EGL.
102*61046927SAndroid Build Coastguard Worker
103*61046927SAndroid Build Coastguard WorkerNine
104*61046927SAndroid Build Coastguard Worker^^^^
105*61046927SAndroid Build Coastguard Worker
106*61046927SAndroid Build Coastguard WorkerThe Gallium frontend implements the Direct3D 9 API.
107*61046927SAndroid Build Coastguard Worker
108*61046927SAndroid Build Coastguard WorkerVDPAU
109*61046927SAndroid Build Coastguard Worker^^^^^
110*61046927SAndroid Build Coastguard Worker
111*61046927SAndroid Build Coastguard WorkerTracker for Video Decode and Presentation API for Unix.
112*61046927SAndroid Build Coastguard Worker
113*61046927SAndroid Build Coastguard WorkerWGL
114*61046927SAndroid Build Coastguard Worker^^^
115*61046927SAndroid Build Coastguard Worker
116*61046927SAndroid Build Coastguard WorkerXorg DDX
117*61046927SAndroid Build Coastguard Worker^^^^^^^^
118*61046927SAndroid Build Coastguard Worker
119*61046927SAndroid Build Coastguard WorkerTracker for Xorg X11 servers. Provides device-dependent
120*61046927SAndroid Build Coastguard Workermodesetting and acceleration as a DDX driver.
121*61046927SAndroid Build Coastguard Worker
122*61046927SAndroid Build Coastguard WorkerAuxiliary
123*61046927SAndroid Build Coastguard Worker---------
124*61046927SAndroid Build Coastguard Worker
125*61046927SAndroid Build Coastguard WorkerOS
126*61046927SAndroid Build Coastguard Worker^^
127*61046927SAndroid Build Coastguard Worker
128*61046927SAndroid Build Coastguard WorkerThe OS module contains the abstractions for basic operating system services:
129*61046927SAndroid Build Coastguard Worker
130*61046927SAndroid Build Coastguard Worker* memory allocation
131*61046927SAndroid Build Coastguard Worker* simple message logging
132*61046927SAndroid Build Coastguard Worker* obtaining run-time configuration option
133*61046927SAndroid Build Coastguard Worker* threading primitives
134*61046927SAndroid Build Coastguard Worker
135*61046927SAndroid Build Coastguard WorkerThis is the bare minimum required to port Gallium to a new platform.
136*61046927SAndroid Build Coastguard Worker
137*61046927SAndroid Build Coastguard WorkerThe OS module already provides the implementations of these abstractions for
138*61046927SAndroid Build Coastguard Workerthe most common platforms.  When targeting an embedded platform no
139*61046927SAndroid Build Coastguard Workerimplementation will be provided -- these must be provided separately.
140*61046927SAndroid Build Coastguard Worker
141*61046927SAndroid Build Coastguard WorkerCSO Cache
142*61046927SAndroid Build Coastguard Worker^^^^^^^^^
143*61046927SAndroid Build Coastguard Worker
144*61046927SAndroid Build Coastguard WorkerThe CSO cache is used to accelerate preparation of state by saving
145*61046927SAndroid Build Coastguard Workerdriver-specific state structures for later use.
146*61046927SAndroid Build Coastguard Worker
147*61046927SAndroid Build Coastguard Worker.. _draw:
148*61046927SAndroid Build Coastguard Worker
149*61046927SAndroid Build Coastguard WorkerDraw
150*61046927SAndroid Build Coastguard Worker^^^^
151*61046927SAndroid Build Coastguard Worker
152*61046927SAndroid Build Coastguard WorkerDraw is a software :term:`TCL` pipeline for hardware that lacks vertex shaders
153*61046927SAndroid Build Coastguard Workeror other essential parts of pre-rasterization vertex preparation.
154*61046927SAndroid Build Coastguard Worker
155*61046927SAndroid Build Coastguard WorkerGallivm
156*61046927SAndroid Build Coastguard Worker^^^^^^^
157*61046927SAndroid Build Coastguard Worker
158*61046927SAndroid Build Coastguard WorkerIndices
159*61046927SAndroid Build Coastguard Worker^^^^^^^
160*61046927SAndroid Build Coastguard Worker
161*61046927SAndroid Build Coastguard WorkerIndices provides tools for translating or generating element indices for
162*61046927SAndroid Build Coastguard Workeruse with element-based rendering.
163*61046927SAndroid Build Coastguard Worker
164*61046927SAndroid Build Coastguard WorkerPipe Buffer Managers
165*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^^^^^^^^^^
166*61046927SAndroid Build Coastguard Worker
167*61046927SAndroid Build Coastguard WorkerEach of these managers provides various services to drivers that are not
168*61046927SAndroid Build Coastguard Workerfully utilizing a memory manager.
169*61046927SAndroid Build Coastguard Worker
170*61046927SAndroid Build Coastguard WorkerRemote Debugger
171*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^^^^^
172*61046927SAndroid Build Coastguard Worker
173*61046927SAndroid Build Coastguard WorkerRuntime Assembly Emission
174*61046927SAndroid Build Coastguard Worker^^^^^^^^^^^^^^^^^^^^^^^^^
175*61046927SAndroid Build Coastguard Worker
176*61046927SAndroid Build Coastguard WorkerTGSI
177*61046927SAndroid Build Coastguard Worker^^^^
178*61046927SAndroid Build Coastguard Worker
179*61046927SAndroid Build Coastguard WorkerThe TGSI auxiliary module provides basic utilities for manipulating TGSI
180*61046927SAndroid Build Coastguard Workerstreams.
181*61046927SAndroid Build Coastguard Worker
182*61046927SAndroid Build Coastguard WorkerTranslate
183*61046927SAndroid Build Coastguard Worker^^^^^^^^^
184*61046927SAndroid Build Coastguard Worker
185*61046927SAndroid Build Coastguard WorkerUtil
186*61046927SAndroid Build Coastguard Worker^^^^
187*61046927SAndroid Build Coastguard Worker
188