2 <packet name=
"Halt" code=
"0"/>
3 <packet name=
"NOP" code=
"1"/>
4 <packet name=
"Flush" code=
"4" cl=
"B"/>
5 <packet name=
"Flush All State" code=
"5" cl=
"B"/>
6 <packet name=
"Start Tile Binning" code=
"6" cl=
"B"/>
7 <packet name=
"Increment Semaphore" code=
"7"/>
8 <packet name=
"Wait on Semaphore" code=
"8"/>
9 <packet name=
"Branch" code=
"16">
10 <field name=
"Address" size=
"32" start=
"0" type=
"address"/>
12 <packet name=
"Branch to sub-list" code=
"17">
13 <field name=
"Address" size=
"32" start=
"0" type=
"address"/>
15 <packet name=
"Return from sub-list" code=
"18"/>
17 <packet name=
"Store Multi-sample Resolved Tile Color Buffer" code=
"24" cl=
"R"/>
18 <packet name=
"Store Multi-sample Resolved Tile Color Buffer and EOF" code=
"25" cl=
"R"/>
20 <packet name=
"Store Full Resolution Tile Buffer" cl=
"R" code=
"26">
21 <field name=
"Address" size=
"32" start=
"0" type=
"address"/>
22 <field name=
"Last Tile" size=
"1" start=
"3" type=
"bool"/>
23 <field name=
"Disable Clear on Write" size=
"1" start=
"2" type=
"bool"/>
24 <field name=
"Disable Z/Stencil Buffer write" size=
"1" start=
"1" type=
"bool"/>
25 <field name=
"Disable Color Buffer write" size=
"1" start=
"0" type=
"bool"/>
28 <packet name=
"Re-load Full Resolution Tile Buffer" cl=
"R" code=
"27">
29 <field name=
"Address" size=
"32" start=
"0" type=
"address"/>
30 <field name=
"Disable Z/Stencil Buffer read" size=
"1" start=
"1" type=
"bool"/>
31 <field name=
"Disable Color Buffer read" size=
"1" start=
"0" type=
"bool"/>
34 <packet name=
"Store Tile Buffer General" code=
"28" cl=
"R">
35 <field name=
"Memory base address of frame/tile dump buffer" size=
"32" start=
"16" type=
"address"/>
36 <field name=
"Last Tile of Frame" size=
"1" start=
"19" type=
"bool"/>
37 <field name=
"Disable VG-Mask buffer dump" size=
"1" start=
"18" type=
"bool"/>
38 <field name=
"Disable Z/Stencil buffer dump" size=
"1" start=
"17" type=
"bool"/>
39 <field name=
"Disable Color buffer dump" size=
"1" start=
"16" type=
"bool"/>
40 <field name=
"Disable VG-Mask buffer clear on store/dump" size=
"1" start=
"15" type=
"bool"/>
41 <field name=
"Disable Z/Stencil buffer clear on store/dump" size=
"1" start=
"14" type=
"bool"/>
42 <field name=
"Disable Color buffer clear on store/dump" size=
"1" start=
"13" type=
"bool"/>
44 <field name=
"Pixel Color Format" size=
"2" start=
"8" type=
"uint">
45 <value name=
"rgba8888" value=
"0"/>
46 <value name=
"bgr565 dithered" value=
"1"/>
47 <value name=
"bgr565 no dither" value=
"2"/>
50 <field name=
"Mode" size=
"2" start=
"6" type=
"uint">
51 <value name=
"Sample 0" value=
"0"/>
52 <value name=
"Decimate x4" value=
"1"/>
53 <value name=
"Decimate x16" value=
"2"/>
56 <field name=
"Format" size=
"2" start=
"4" type=
"uint">
57 <value name=
"Raster" value=
"0"/>
58 <value name=
"T" value=
"1"/>
59 <value name=
"LT" value=
"2"/>
62 <field name=
"Buffer to Store" size=
"3" start=
"0" type=
"uint">
63 <value name=
"None" value=
"0"/>
64 <value name=
"Color" value=
"1"/>
65 <value name=
"Z/stencil" value=
"2"/>
66 <value name=
"Z" value=
"3"/>
67 <value name=
"VG-Mask" value=
"4"/>
71 <packet name=
"Load Tile Buffer General" code=
"29" cl=
"R">
72 <field name=
"Memory base address of frame/tile dump buffer" size=
"32" start=
"16" type=
"address"/>
73 <field name=
"Disable VG-Mask buffer load" size=
"1" start=
"18" type=
"bool"/>
74 <field name=
"Disable Z/Stencil buffer load" size=
"1" start=
"17" type=
"bool"/>
75 <field name=
"Disable Color buffer load" size=
"1" start=
"16" type=
"bool"/>
77 <field name=
"Pixel Color Format" size=
"2" start=
"8" type=
"uint">
78 <value name=
"rgba8888" value=
"0"/>
79 <value name=
"bgr565 dithered" value=
"1"/>
80 <value name=
"bgr565 no dither" value=
"2"/>
83 <field name=
"Mode" size=
"2" start=
"6" type=
"uint">
84 <value name=
"Sample 0" value=
"0"/>
85 <value name=
"Decimate x4" value=
"1"/>
86 <value name=
"Decimate x16" value=
"2"/>
89 <field name=
"Format" size=
"2" start=
"4" type=
"uint">
90 <value name=
"Raster" value=
"0"/>
91 <value name=
"T" value=
"1"/>
92 <value name=
"LT" value=
"2"/>
95 <field name=
"Buffer to Store" size=
"3" start=
"0" type=
"uint">
96 <value name=
"None" value=
"0"/>
97 <value name=
"Color" value=
"1"/>
98 <value name=
"Z/stencil" value=
"2"/>
99 <value name=
"Z" value=
"3"/>
100 <value name=
"VG-Mask" value=
"4"/>
104 <packet name=
"Indexed Primitive List" code=
"32">
105 <field name=
"Maximum Index" size=
"32" start=
"72" type=
"uint"/>
106 <field name=
"Address of Indices List" size=
"32" start=
"40" type=
"uint"/>
107 <field name=
"Length" size=
"32" start=
"8" type=
"uint"/>
108 <field name=
"Index type" size=
"4" start=
"4" type=
"uint">
109 <value name=
"8-bit" value=
"0"/>
110 <value name=
"16-bit" value=
"1"/>
112 <field name=
"Primitive mode" size=
"4" start=
"0" type=
"uint">
113 <value name=
"points" value=
"0"/>
114 <value name=
"lines" value=
"1"/>
115 <value name=
"line loop" value=
"2"/>
116 <value name=
"line strip" value=
"3"/>
117 <value name=
"triangles" value=
"4"/>
118 <value name=
"triangles strip" value=
"5"/>
119 <value name=
"triangles fan" value=
"6"/>
123 <packet name=
"Vertex Array Primitives" code=
"33">
124 <field name=
"Index of First Vertex" size=
"32" start=
"40" type=
"uint"/>
125 <field name=
"Length" size=
"32" start=
"8" type=
"uint"/>
126 <field name=
"Primitive mode" size=
"4" start=
"0" type=
"uint">
127 <value name=
"points" value=
"0"/>
128 <value name=
"lines" value=
"1"/>
129 <value name=
"line loop" value=
"2"/>
130 <value name=
"line strip" value=
"3"/>
131 <value name=
"triangles" value=
"4"/>
132 <value name=
"triangles strip" value=
"5"/>
133 <value name=
"triangles fan" value=
"6"/>
137 <packet name=
"Primitive List Format" cl=
"R" code=
"56">
138 <field name=
"Data Type" size=
"4" start=
"4" type=
"uint">
139 <value name=
"16-bit index" value=
"1"/>
140 <value name=
"32-bit x/y" value=
"3"/>
143 <field name=
"Primitive Type" size=
"4" start=
"0" type=
"uint">
144 <value name=
"Points List" value=
"0"/>
145 <value name=
"Lines List" value=
"1"/>
146 <value name=
"Triangles List" value=
"2"/>
147 <value name=
"RHY List" value=
"3"/>
151 <packet name=
"GL Shader State" code=
"64">
152 <!-- The address field will be filled in by kernel validation code. -->
153 <field name=
"Address" size=
"28" start=
"0" type=
"uint"/>
154 <field name=
"Extended shader record" size=
"1" start=
"3" type=
"bool"/>
155 <field name=
"Number of attribute arrays" size=
"3" start=
"0" type=
"uint"/>
158 <packet name=
"Clear Colors" cl=
"R" code=
"114">
159 <field name=
"Clear Stencil" size=
"8" start=
"96" type=
"uint"/>
160 <field name=
"Clear VG Mask" size=
"8" start=
"88" type=
"uint"/>
161 <field name=
"Clear ZS" size=
"24" start=
"64" type=
"uint"/>
162 <field name=
"Clear Color" size=
"64" start=
"0" type=
"uint"/>
165 <packet name=
"Configuration Bits" code=
"96">
166 <field name=
"Early Z updates enable" size=
"1" start=
"17" type=
"bool"/>
167 <field name=
"Early Z enable" size=
"1" start=
"16" type=
"bool"/>
168 <field name=
"Z updates enable" size=
"1" start=
"15" type=
"bool"/>
169 <field name=
"Depth-Test Function" size=
"3" start=
"12" type=
"uint"/>
171 <field name=
"Coverage Read Mode" size=
"1" start=
"11" type=
"uint"/>
173 <field name=
"Coverage Pipe Select" size=
"1" start=
"8" type=
"bool"/>
174 <field name=
"Rasteriser Oversample Mode" size=
"2" start=
"6" type=
"bool"/>
176 <field name=
"Coverage Read Type" size=
"1" start=
"5" type=
"uint"/>
178 <field name=
"Antialiased Points and Lines" size=
"1" start=
"4" type=
"bool"/>
179 <field name=
"Enable Depth Offset" size=
"1" start=
"3" type=
"bool"/>
180 <field name=
"Clockwise Primitives" size=
"1" start=
"2" type=
"bool"/>
181 <field name=
"Enable Reverse Facing Primitive" size=
"1" start=
"1" type=
"bool"/>
182 <field name=
"Enable Forward Facing Primitive" size=
"1" start=
"0" type=
"bool"/>
185 <packet name=
"Flat Shade Flags" code=
"97">
186 <field name=
"Flat-shading Flags" size=
"32" start=
"0" type=
"uint"/>
189 <packet name=
"Point size" code=
"98">
190 <field name=
"Point Size" size=
"32" start=
"0" type=
"float"/>
193 <packet name=
"Line width" code=
"99">
194 <field name=
"Line width" size=
"32" start=
"0" type=
"float"/>
197 <packet name=
"RHT X boundary" code=
"100">
198 <field name=
"RHT primitive X boundary" size=
"16" start=
"0" type=
"int"/>
201 <packet name=
"Depth Offset" code=
"101">
202 <!-- these fields are both float-1-8-7 encoded (top 16 bits of a float32) -->
203 <field name=
"Depth Offset Units" size=
"16" start=
"16" type=
"uint"/>
204 <field name=
"Depth Offset Factor" size=
"16" start=
"0" type=
"uint"/>
207 <packet name=
"Clip Window" code=
"102">
208 <field name=
"Clip Window Height in pixels" size=
"16" start=
"48" type=
"uint"/>
209 <field name=
"Clip Window Width in pixels" size=
"16" start=
"32" type=
"uint"/>
210 <field name=
"Clip Window Bottom Pixel Coordinate" size=
"16" start=
"16" type=
"uint"/>
211 <field name=
"Clip Window Left Pixel Coordinate" size=
"16" start=
"0" type=
"uint"/>
214 <packet name=
"Viewport Offset" code=
"103">
215 <field name=
"Viewport Centre Y-coordinate" size=
"16" start=
"16" type=
"int"/>
216 <field name=
"Viewport Centre X-coordinate" size=
"16" start=
"0" type=
"int"/>
219 <packet name=
"Z min and max clipping planes" code=
"104">
220 <field name=
"Maximum Zw" size=
"32" start=
"32" type=
"float"/>
221 <field name=
"Minimum Zw" size=
"32" start=
"0" type=
"float"/>
224 <packet name=
"Clipper XY Scaling" code=
"105" cl=
"B">
225 <field name=
"Viewport Half-Height in 1/16th of pixel" size=
"32" start=
"32" type=
"float"/>
226 <field name=
"Viewport Half-Width in 1/16th of pixel" size=
"32" start=
"0" type=
"float"/>
229 <packet name=
"Clipper Z Scale and Offset" code=
"106" cl=
"B">
230 <field name=
"Viewport Z Offset (Zc to Zs)" size=
"32" start=
"32" type=
"float"/>
231 <field name=
"Viewport Z Scale (Zc to Zs)" size=
"32" start=
"0" type=
"float"/>
234 <packet name=
"Tile Binning Mode Configuration" code=
"112" cl=
"B">
235 <field name=
"Double-buffer in non-ms mode" size=
"1" start=
"119" type=
"bool"/>
237 <field name=
"Tile Allocation Block Size" size=
"2" start=
"117" type=
"uint">
238 <value name=
"block size 32" value=
"0"/>
239 <value name=
"block size 64" value=
"1"/>
240 <value name=
"block size 128" value=
"2"/>
241 <value name=
"block size 256" value=
"3"/>
244 <field name=
"Tile Allocation Initial Block Size" size=
"2" start=
"115" type=
"uint">
245 <value name=
"block size 32" value=
"0"/>
246 <value name=
"block size 64" value=
"1"/>
247 <value name=
"block size 128" value=
"2"/>
248 <value name=
"block size 256" value=
"3"/>
251 <field name=
"Auto-initialise Tile State Data Array" size=
"1" start=
"114" type=
"bool"/>
252 <field name=
"Tile Buffer 64-bit Color Depth" size=
"1" start=
"113" type=
"bool"/>
253 <field name=
"Multisample Mode (4x)" size=
"1" start=
"112" type=
"bool"/>
255 <field name=
"Height (in tiles)" size=
"8" start=
"104" type=
"uint"/>
256 <field name=
"Width (in tiles)" size=
"8" start=
"96" type=
"uint"/>
258 <field name=
"Tile State Data Array Address" size=
"32" start=
"64" type=
"uint"/>
259 <field name=
"Tile Allocation memory size" size=
"32" start=
"32" type=
"uint"/>
260 <field name=
"Tile Allocation memory address" size=
"32" start=
"0" type=
"uint"/>
264 <packet name=
"Tile Rendering Mode Configuration" code=
"113" cl=
"R">
265 <field name=
"Double-buffer in non-ms mode" size=
"1" start=
"76" type=
"bool"/>
266 <field name=
"Early-Z/Early-Cov disable" size=
"1" start=
"75" type=
"bool"/>
267 <field name=
"Early-Z Update Direction GT/GE" size=
"1" start=
"74" type=
"bool"/>
268 <field name=
"Select Coverage Mode" size=
"1" start=
"73" type=
"bool"/>
269 <field name=
"Enable VG Mask Buffer" size=
"1" start=
"72" type=
"bool"/>
270 <field name=
"Memory Format" size=
"2" start=
"70" type=
"uint">
271 <value name=
"Raster" value=
"0"/>
272 <value name=
"T" value=
"1"/>
273 <value name=
"LT" value=
"2"/>
275 <field name=
"Decimate Mode" size=
"2" start=
"68" type=
"uint"/>
277 <field name=
"Non-HDR Frame Buffer Color Format" size=
"2" start=
"66" type=
"uint">
278 <value name=
"rendering config bgr565 dithered" value=
"0"/>
279 <value name=
"rendering config rgba8888" value=
"1"/>
280 <value name=
"rendering config bgr565 no dither" value=
"2"/>
283 <field name=
"Tile Buffer 64-bit Color Depth" size=
"1" start=
"65" type=
"bool"/>
284 <field name=
"Multisample Mode (4x)" size=
"1" start=
"64" type=
"bool"/>
285 <field name=
"Height (pixels)" size=
"16" start=
"48" type=
"uint"/>
286 <field name=
"Width (pixels)" size=
"16" start=
"32" type=
"uint"/>
287 <field name=
"Memory Address" size=
"32" start=
"0" type=
"address"/>
290 <packet name=
"Tile Coordinates" code=
"115" cl=
"R">
291 <field name=
"Tile Row Number" size=
"8" start=
"8" type=
"uint"/>
292 <field name=
"Tile Column Number" size=
"8" start=
"0" type=
"uint"/>
295 <packet name=
"Gem Relocations" code=
"254" cl=
"B">
296 <field name=
"buffer 1" size=
"32" start=
"32" type=
"uint"/>
297 <field name=
"buffer 0" size=
"32" start=
"0" type=
"uint"/>
300 <struct name=
"Shader Record">
301 <field name=
"Fragment Shader is single threaded" size=
"1" start=
"0" type=
"bool"/>
302 <field name=
"Point Size included in shaded vertex data" size=
"1" start=
"1" type=
"bool"/>
303 <field name=
"Enable Clipping" size=
"1" start=
"2" type=
"bool"/>
305 <field name=
"Fragment Shader Number of Uniforms (not used currently)" size=
"16" start=
"2b" type=
"uint"/>
306 <field name=
"Fragment Shader Number of Varyings" size=
"8" start=
"3b" type=
"uint"/>
307 <field name=
"Fragment Shader Code Address" size=
"32" start=
"4b" type=
"address"/>
308 <!-- set up by the kernel -->
309 <field name=
"Fragment Shader Uniforms Address" size=
"32" start=
"8b" type=
"uint"/>
311 <field name=
"Vertex Shader Number of Uniforms (not used currently)" size=
"16" start=
"12b" type=
"uint"/>
312 <field name=
"Vertex Shader Attribute Array select bits" size=
"8" start=
"14b" type=
"uint"/>
313 <field name=
"Vertex Shader Total Attributes Size" size=
"8" start=
"15b" type=
"uint"/>
314 <field name=
"Vertex Shader Code Address" size=
"32" start=
"16b" type=
"address"/>
315 <!-- set up by the kernel -->
316 <field name=
"Vertex Shader Uniforms Address" size=
"32" start=
"16b" type=
"uint"/>
318 <field name=
"Coordinate Shader Number of Uniforms (not used currently)" size=
"16" start=
"24b" type=
"uint"/>
319 <field name=
"Coordinate Shader Attribute Array select bits" size=
"8" start=
"26b" type=
"uint"/>
320 <field name=
"Coordinate Shader Total Attributes Size" size=
"8" start=
"27b" type=
"uint"/>
321 <field name=
"Coordinate Shader Code Address" size=
"32" start=
"28b" type=
"address"/>
322 <!-- set up by the kernel -->
323 <field name=
"Coordinate Shader Uniforms Address" size=
"32" start=
"32b" type=
"uint"/>
326 <struct name=
"Attribute Record">
327 <field name=
"Address" size=
"32" start=
"0b" type=
"address"/>
328 <field name=
"Number of Bytes minus 1" size=
"8" start=
"4b" type=
"uint"/>
329 <field name=
"Stride" size=
"8" start=
"5b" type=
"uint"/>
330 <field name=
"Vertex Shader VPM offset" size=
"8" start=
"6b" type=
"uint"/>
331 <field name=
"Coordinate Shader VPM offset" size=
"8" start=
"7b" type=
"uint"/>