Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mesa
Path: blob/21.2-virgl/src/broadcom/cle/v3d_packet_v21.xml
4560 views
1
<vcxml gen="2.1" min_ver="21" max_ver="21">
2
3
<enum name="Compare Function" prefix="V3D_COMPARE_FUNC">
4
<value name="NEVER" value="0"/>
5
<value name="LESS" value="1"/>
6
<value name="EQUAL" value="2"/>
7
<value name="LEQUAL" value="3"/>
8
<value name="GREATER" value="4"/>
9
<value name="NOTEQUAL" value="5"/>
10
<value name="GEQUAL" value="6"/>
11
<value name="ALWAYS" value="7"/>
12
</enum>
13
14
<enum name="Primitive" prefix="V3D_PRIM">
15
<value name="POINTS" value="0"/>
16
<value name="LINES" value="1"/>
17
<value name="LINE_LOOP" value="2"/>
18
<value name="LINE_STRIP" value="3"/>
19
<value name="TRIANGLES" value="4"/>
20
<value name="TRIANGLE_STRIP" value="5"/>
21
<value name="TRIANGLE_FAN" value="6"/>
22
</enum>
23
24
<packet name="Halt" code="0"/>
25
<packet name="NOP" code="1"/>
26
<packet name="Flush" code="4" cl="B"/>
27
<packet name="Flush All State" code="5" cl="B"/>
28
<packet name="Start Tile Binning" code="6" cl="B"/>
29
<packet name="Increment Semaphore" code="7"/>
30
<packet name="Wait on Semaphore" code="8"/>
31
<packet name="Branch" code="16">
32
<field name="Address" size="32" start="0" type="address"/>
33
</packet>
34
<packet name="Branch to sub-list" code="17">
35
<field name="Address" size="32" start="0" type="address"/>
36
</packet>
37
<packet name="Return from sub-list" code="18"/>
38
39
<packet name="Store Multi-sample Resolved Tile Color Buffer" code="24" cl="R"/>
40
<packet name="Store Multi-sample Resolved Tile Color Buffer and EOF" code="25" cl="R"/>
41
42
<packet name="Store Full Resolution Tile Buffer" cl="R" code="26">
43
<field name="Address" size="28" start="4" type="address"/>
44
<field name="Last Tile" size="1" start="3" type="bool"/>
45
<field name="Disable Clear on Write" size="1" start="2" type="bool"/>
46
<field name="Disable Z/Stencil Buffer write" size="1" start="1" type="bool"/>
47
<field name="Disable Color Buffer write" size="1" start="0" type="bool"/>
48
</packet>
49
50
<packet name="Re-load Full Resolution Tile Buffer" cl="R" code="27">
51
<field name="Address" size="28" start="4" type="address"/>
52
<field name="Disable Z/Stencil Buffer read" size="1" start="1" type="bool"/>
53
<field name="Disable Color Buffer read" size="1" start="0" type="bool"/>
54
</packet>
55
56
<packet name="Store Tile Buffer General" code="28" cl="R">
57
<field name="Memory base address of frame/tile dump buffer" size="28" start="20" type="address"/>
58
<field name="Last Tile of Frame" size="1" start="19" type="bool"/>
59
<field name="Disable VG-Mask buffer dump" size="1" start="18" type="bool"/>
60
<field name="Disable Z/Stencil buffer dump" size="1" start="17" type="bool"/>
61
<field name="Disable Color buffer dump" size="1" start="16" type="bool"/>
62
<field name="Disable VG-Mask buffer clear on store/dump" size="1" start="15" type="bool"/>
63
<field name="Disable Z/Stencil buffer clear on store/dump" size="1" start="14" type="bool"/>
64
<field name="Disable Color buffer clear on store/dump" size="1" start="13" type="bool"/>
65
66
<field name="Pixel Color Format" size="2" start="8" type="uint">
67
<value name="rgba8888" value="0"/>
68
<value name="bgr565 dithered" value="1"/>
69
<value name="bgr565 no dither" value="2"/>
70
</field>
71
72
<field name="Mode" size="2" start="6" type="uint">
73
<value name="Sample 0" value="0"/>
74
<value name="Decimate x4" value="1"/>
75
<value name="Decimate x16" value="2"/>
76
</field>
77
78
<field name="Format" size="2" start="4" type="uint">
79
<value name="Raster" value="0"/>
80
<value name="T" value="1"/>
81
<value name="LT" value="2"/>
82
</field>
83
84
<field name="Buffer to Store" size="3" start="0" type="uint">
85
<value name="None" value="0"/>
86
<value name="Color" value="1"/>
87
<value name="Z/stencil" value="2"/>
88
<value name="Z" value="3"/>
89
<value name="VG-Mask" value="4"/>
90
</field>
91
</packet>
92
93
<packet name="Load Tile Buffer General" code="29" cl="R">
94
<field name="Memory base address of frame/tile dump buffer" size="28" start="20" type="address"/>
95
<field name="Disable VG-Mask buffer load" size="1" start="18" type="bool"/>
96
<field name="Disable Z/Stencil buffer load" size="1" start="17" type="bool"/>
97
<field name="Disable Color buffer load" size="1" start="16" type="bool"/>
98
99
<field name="Pixel Color Format" size="2" start="8" type="uint">
100
<value name="rgba8888" value="0"/>
101
<value name="bgr565 dithered" value="1"/>
102
<value name="bgr565 no dither" value="2"/>
103
</field>
104
105
<field name="Mode" size="2" start="6" type="uint">
106
<value name="Sample 0" value="0"/>
107
<value name="Decimate x4" value="1"/>
108
<value name="Decimate x16" value="2"/>
109
</field>
110
111
<field name="Format" size="2" start="4" type="uint">
112
<value name="Raster" value="0"/>
113
<value name="T" value="1"/>
114
<value name="LT" value="2"/>
115
</field>
116
117
<field name="Buffer to Store" size="3" start="0" type="uint">
118
<value name="None" value="0"/>
119
<value name="Color" value="1"/>
120
<value name="Z/stencil" value="2"/>
121
<value name="Z" value="3"/>
122
<value name="VG-Mask" value="4"/>
123
</field>
124
</packet>
125
126
<packet name="Indexed Primitive List" code="32">
127
<field name="Maximum Index" size="32" start="72" type="uint"/>
128
<field name="Address of Indices List" size="32" start="40" type="uint"/>
129
<field name="Length" size="32" start="8" type="uint"/>
130
<field name="Index type" size="4" start="4" type="uint">
131
<value name="8-bit" value="0"/>
132
<value name="16-bit" value="1"/>
133
</field>
134
<field name="Primitive mode" size="4" start="0" type="Primitive"/>
135
</packet>
136
137
<packet name="Vertex Array Primitives" code="33">
138
<field name="Index of First Vertex" size="32" start="40" type="uint"/>
139
<field name="Length" size="32" start="8" type="uint"/>
140
<field name="Primitive mode" size="4" start="0" type="Primitive"/>
141
</packet>
142
143
<packet name="Primitive List Format" cl="R" code="56">
144
<field name="Data Type" size="4" start="4" type="uint">
145
<value name="16-bit index" value="1"/>
146
<value name="32-bit x/y" value="3"/>
147
</field>
148
149
<field name="Primitive Type" size="4" start="0" type="uint">
150
<value name="Points List" value="0"/>
151
<value name="Lines List" value="1"/>
152
<value name="Triangles List" value="2"/>
153
<value name="RHY List" value="3"/>
154
</field>
155
</packet>
156
157
<packet name="GL Shader State" code="64">
158
<!-- The address field will be filled in by kernel validation code. -->
159
<field name="Address" size="28" start="0" type="uint"/>
160
<field name="Extended shader record" size="1" start="3" type="bool"/>
161
<field name="Number of attribute arrays" size="3" start="0" type="uint"/>
162
</packet>
163
164
<packet name="Clear Colors" cl="R" code="114">
165
<field name="Clear Stencil" size="8" start="96" type="uint"/>
166
<field name="Clear VG Mask" size="8" start="88" type="uint"/>
167
<field name="Clear ZS" size="24" start="64" type="uint"/>
168
<field name="Clear Color" size="64" start="0" type="uint"/>
169
</packet>
170
171
<packet name="Configuration Bits" code="96">
172
<field name="Early Z updates enable" size="1" start="17" type="bool"/>
173
<field name="Early Z enable" size="1" start="16" type="bool"/>
174
<field name="Z updates enable" size="1" start="15" type="bool"/>
175
<field name="Depth-Test Function" size="3" start="12" type="Compare Function"/>
176
<field name="Coverage Read Mode" size="1" start="11" type="uint"/>
177
<!-- add values -->
178
<field name="Coverage Pipe Select" size="1" start="8" type="bool"/>
179
<field name="Rasteriser Oversample Mode" size="2" start="6" type="uint"/>
180
<!-- add values -->
181
<field name="Coverage Read Type" size="1" start="5" type="uint"/>
182
<!-- add values -->
183
<field name="Antialiased Points and Lines" size="1" start="4" type="bool"/>
184
<field name="Enable Depth Offset" size="1" start="3" type="bool"/>
185
<field name="Clockwise Primitives" size="1" start="2" type="bool"/>
186
<field name="Enable Reverse Facing Primitive" size="1" start="1" type="bool"/>
187
<field name="Enable Forward Facing Primitive" size="1" start="0" type="bool"/>
188
</packet>
189
190
<packet name="Flat Shade Flags" code="97">
191
<field name="Flat-shading Flags" size="32" start="0" type="uint"/>
192
</packet>
193
194
<packet name="Point size" code="98">
195
<field name="Point Size" size="32" start="0" type="float"/>
196
</packet>
197
198
<packet name="Line width" code="99">
199
<field name="Line width" size="32" start="0" type="float"/>
200
</packet>
201
202
<packet name="RHT X boundary" code="100">
203
<field name="RHT primitive X boundary" size="16" start="0" type="int"/>
204
</packet>
205
206
<packet name="Depth Offset" code="101">
207
<!-- these fields are both float-1-8-7 encoded (top 16 bits of a float32) -->
208
<field name="Depth Offset Units" size="16" start="16" type="uint"/>
209
<field name="Depth Offset Factor" size="16" start="0" type="uint"/>
210
</packet>
211
212
<packet name="Clip Window" code="102">
213
<field name="Clip Window Height in pixels" size="16" start="48" type="uint"/>
214
<field name="Clip Window Width in pixels" size="16" start="32" type="uint"/>
215
<field name="Clip Window Bottom Pixel Coordinate" size="16" start="16" type="uint"/>
216
<field name="Clip Window Left Pixel Coordinate" size="16" start="0" type="uint"/>
217
</packet>
218
219
<packet name="Viewport Offset" code="103">
220
<field name="Viewport Centre Y-coordinate" size="16" start="16" type="s12.4"/>
221
<field name="Viewport Centre X-coordinate" size="16" start="0" type="s12.4"/>
222
</packet>
223
224
<packet name="Z min and max clipping planes" code="104">
225
<field name="Maximum Zw" size="32" start="32" type="float"/>
226
<field name="Minimum Zw" size="32" start="0" type="float"/>
227
</packet>
228
229
<packet name="Clipper XY Scaling" code="105" cl="B">
230
<field name="Viewport Half-Height in 1/16th of pixel" size="32" start="32" type="float"/>
231
<field name="Viewport Half-Width in 1/16th of pixel" size="32" start="0" type="float"/>
232
</packet>
233
234
<packet name="Clipper Z Scale and Offset" code="106" cl="B">
235
<field name="Viewport Z Offset (Zc to Zs)" size="32" start="32" type="float"/>
236
<field name="Viewport Z Scale (Zc to Zs)" size="32" start="0" type="float"/>
237
</packet>
238
239
<packet name="Tile Binning Mode Configuration" code="112" cl="B">
240
<field name="Double-buffer in non-ms mode" size="1" start="119" type="bool"/>
241
242
<field name="Tile Allocation Block Size" size="2" start="117" type="uint">
243
<value name="block size 32" value="0"/>
244
<value name="block size 64" value="1"/>
245
<value name="block size 128" value="2"/>
246
<value name="block size 256" value="3"/>
247
</field>
248
249
<field name="Tile Allocation Initial Block Size" size="2" start="115" type="uint">
250
<value name="block size 32" value="0"/>
251
<value name="block size 64" value="1"/>
252
<value name="block size 128" value="2"/>
253
<value name="block size 256" value="3"/>
254
</field>
255
256
<field name="Auto-initialise Tile State Data Array" size="1" start="114" type="bool"/>
257
<field name="Tile Buffer 64-bit Color Depth" size="1" start="113" type="bool"/>
258
<field name="Multisample Mode (4x)" size="1" start="112" type="bool"/>
259
260
<field name="Height (in tiles)" size="8" start="104" type="uint"/>
261
<field name="Width (in tiles)" size="8" start="96" type="uint"/>
262
263
<field name="Tile State Data Array Address" size="32" start="64" type="uint"/>
264
<field name="Tile Allocation memory size" size="32" start="32" type="uint"/>
265
<field name="Tile Allocation memory address" size="32" start="0" type="uint"/>
266
267
</packet>
268
269
<packet name="Tile Rendering Mode Configuration" code="113" cl="R">
270
<field name="Double-buffer in non-ms mode" size="1" start="76" type="bool"/>
271
<field name="Early-Z/Early-Cov disable" size="1" start="75" type="bool"/>
272
<field name="Early-Z Update Direction GT/GE" size="1" start="74" type="bool"/>
273
<field name="Select Coverage Mode" size="1" start="73" type="bool"/>
274
<field name="Enable VG Mask Buffer" size="1" start="72" type="bool"/>
275
<field name="Memory Format" size="2" start="70" type="uint">
276
<value name="Raster" value="0"/>
277
<value name="T" value="1"/>
278
<value name="LT" value="2"/>
279
</field>
280
<field name="Decimate Mode" size="2" start="68" type="uint"/>
281
282
<field name="Non-HDR Frame Buffer Color Format" size="2" start="66" type="uint">
283
<value name="rendering config bgr565 dithered" value="0"/>
284
<value name="rendering config rgba8888" value="1"/>
285
<value name="rendering config bgr565 no dither" value="2"/>
286
</field>
287
288
<field name="Tile Buffer 64-bit Color Depth" size="1" start="65" type="bool"/>
289
<field name="Multisample Mode (4x)" size="1" start="64" type="bool"/>
290
<field name="Height (pixels)" size="16" start="48" type="uint"/>
291
<field name="Width (pixels)" size="16" start="32" type="uint"/>
292
<field name="Memory Address" size="32" start="0" type="address"/>
293
</packet>
294
295
<packet name="Tile Coordinates" code="115" cl="R">
296
<field name="Tile Row Number" size="8" start="8" type="uint"/>
297
<field name="Tile Column Number" size="8" start="0" type="uint"/>
298
</packet>
299
300
<packet name="Gem Relocations" code="254" cl="B">
301
<field name="buffer 1" size="32" start="32" type="uint"/>
302
<field name="buffer 0" size="32" start="0" type="uint"/>
303
</packet>
304
305
<struct name="Shader Record">
306
<field name="Fragment Shader is single threaded" size="1" start="0" type="bool"/>
307
<field name="Point Size included in shaded vertex data" size="1" start="1" type="bool"/>
308
<field name="Enable Clipping" size="1" start="2" type="bool"/>
309
310
<field name="Fragment Shader Number of Uniforms (not used currently)" size="16" start="2b" type="uint"/>
311
<field name="Fragment Shader Number of Varyings" size="8" start="3b" type="uint"/>
312
<field name="Fragment Shader Code Address" size="32" start="4b" type="address"/>
313
<!-- set up by the kernel -->
314
<field name="Fragment Shader Uniforms Address" size="32" start="8b" type="uint"/>
315
316
<field name="Vertex Shader Number of Uniforms (not used currently)" size="16" start="12b" type="uint"/>
317
<field name="Vertex Shader Attribute Array select bits" size="8" start="14b" type="uint"/>
318
<field name="Vertex Shader Total Attributes Size" size="8" start="15b" type="uint"/>
319
<field name="Vertex Shader Code Address" size="32" start="16b" type="address"/>
320
<!-- set up by the kernel -->
321
<field name="Vertex Shader Uniforms Address" size="32" start="16b" type="uint"/>
322
323
<field name="Coordinate Shader Number of Uniforms (not used currently)" size="16" start="24b" type="uint"/>
324
<field name="Coordinate Shader Attribute Array select bits" size="8" start="26b" type="uint"/>
325
<field name="Coordinate Shader Total Attributes Size" size="8" start="27b" type="uint"/>
326
<field name="Coordinate Shader Code Address" size="32" start="28b" type="address"/>
327
<!-- set up by the kernel -->
328
<field name="Coordinate Shader Uniforms Address" size="32" start="32b" type="uint"/>
329
</struct>
330
331
<struct name="Attribute Record">
332
<field name="Address" size="32" start="0b" type="address"/>
333
<field name="Number of Bytes minus 1" size="8" start="4b" type="uint"/>
334
<field name="Stride" size="8" start="5b" type="uint"/>
335
<field name="Vertex Shader VPM offset" size="8" start="6b" type="uint"/>
336
<field name="Coordinate Shader VPM offset" size="8" start="7b" type="uint"/>
337
</struct>
338
339
</vcxml>
340
341