1d5b5b7d0e4b40f917fa6e785d9dd118a9a56806
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=
"Indexed Primitive List" code=
"32">
35 <field name=
"Maximum Index" size=
"32" start=
"72" type=
"uint"/>
36 <field name=
"Address of Indices List" size=
"32" start=
"40" type=
"uint"/>
37 <field name=
"Length" size=
"32" start=
"8" type=
"uint"/>
38 <field name=
"Index type" size=
"4" start=
"4" type=
"uint">
39 <value name=
"8-bit" value=
"0"/>
40 <value name=
"16-bit" value=
"1"/>
42 <field name=
"Primitive mode" size=
"4" start=
"0" type=
"uint">
43 <value name=
"points" value=
"0"/>
44 <value name=
"lines" value=
"1"/>
45 <value name=
"line loop" value=
"2"/>
46 <value name=
"line strip" value=
"3"/>
47 <value name=
"triangles" value=
"4"/>
48 <value name=
"triangles strip" value=
"5"/>
49 <value name=
"triangles fan" value=
"6"/>
53 <packet name=
"Vertex Array Primitives" code=
"33">
54 <field name=
"Index of First Vertex" size=
"32" start=
"40" type=
"uint"/>
55 <field name=
"Length" size=
"32" start=
"8" type=
"uint"/>
56 <field name=
"Primitive mode" size=
"4" start=
"0" type=
"uint">
57 <value name=
"points" value=
"0"/>
58 <value name=
"lines" value=
"1"/>
59 <value name=
"line loop" value=
"2"/>
60 <value name=
"line strip" value=
"3"/>
61 <value name=
"triangles" value=
"4"/>
62 <value name=
"triangles strip" value=
"5"/>
63 <value name=
"triangles fan" value=
"6"/>
67 <packet name=
"Primitive List Format" cl=
"R" code=
"56">
68 <field name=
"Data Type" size=
"4" start=
"4" type=
"uint">
69 <value name=
"16-bit index" value=
"1"/>
70 <value name=
"32-bit x/y" value=
"3"/>
73 <field name=
"Primitive Type" size=
"4" start=
"0" type=
"uint">
74 <value name=
"Points List" value=
"0"/>
75 <value name=
"Lines List" value=
"1"/>
76 <value name=
"Triangles List" value=
"2"/>
77 <value name=
"RHY List" value=
"3"/>
81 <packet name=
"GL Shader State" code=
"64">
82 <!-- The address field will be filled in by kernel validation code. -->
83 <field name=
"Address" size=
"28" start=
"0" type=
"uint"/>
84 <field name=
"Extended shader record" size=
"1" start=
"3" type=
"bool"/>
85 <field name=
"Number of attribute arrays" size=
"3" start=
"0" type=
"uint"/>
88 <packet name=
"Clear Colors" cl=
"R" code=
"114">
89 <field name=
"Clear Stencil" size=
"8" start=
"96" type=
"uint"/>
90 <field name=
"Clear VG Mask" size=
"8" start=
"88" type=
"uint"/>
91 <field name=
"Clear ZS" size=
"24" start=
"64" type=
"uint"/>
92 <field name=
"Clear Color" size=
"64" start=
"0" type=
"uint"/>
95 <packet name=
"Configuration Bits" code=
"96">
96 <field name=
"Early Z updates enable" size=
"1" start=
"17" type=
"bool"/>
97 <field name=
"Early Z enable" size=
"1" start=
"16" type=
"bool"/>
98 <field name=
"Z updates enable" size=
"1" start=
"15" type=
"bool"/>
99 <field name=
"Depth-Test Function" size=
"3" start=
"12" type=
"uint"/>
101 <field name=
"Coverage Read Mode" size=
"1" start=
"11" type=
"uint"/>
103 <field name=
"Coverage Pipe Select" size=
"1" start=
"8" type=
"bool"/>
104 <field name=
"Rasteriser Oversample Mode" size=
"2" start=
"6" type=
"bool"/>
106 <field name=
"Coverage Read Type" size=
"1" start=
"5" type=
"uint"/>
108 <field name=
"Antialiased Points and Lines" size=
"1" start=
"4" type=
"bool"/>
109 <field name=
"Enable Depth Offset" size=
"1" start=
"3" type=
"bool"/>
110 <field name=
"Clockwise Primitives" size=
"1" start=
"2" type=
"bool"/>
111 <field name=
"Enable Reverse Facing Primitive" size=
"1" start=
"1" type=
"bool"/>
112 <field name=
"Enable Forward Facing Primitive" size=
"1" start=
"0" type=
"bool"/>
115 <packet name=
"Flat Shade Flags" code=
"97">
116 <field name=
"Flat-shading Flags" size=
"32" start=
"0" type=
"uint"/>
119 <packet name=
"Point size" code=
"98">
120 <field name=
"Point Size" size=
"32" start=
"0" type=
"float"/>
123 <packet name=
"Line width" code=
"99">
124 <field name=
"Line width" size=
"32" start=
"0" type=
"float"/>
127 <packet name=
"RHT X boundary" code=
"100">
128 <field name=
"RHT primitive X boundary" size=
"16" start=
"0" type=
"int"/>
131 <packet name=
"Depth Offset" code=
"101">
132 <!-- these fields are both float-1-8-7 encoded (top 16 bits of a float32) -->
133 <field name=
"Depth Offset Units" size=
"16" start=
"16" type=
"uint"/>
134 <field name=
"Depth Offset Factor" size=
"16" start=
"0" type=
"uint"/>
137 <packet name=
"Clip Window" code=
"102">
138 <field name=
"Clip Window Height in pixels" size=
"16" start=
"48" type=
"uint"/>
139 <field name=
"Clip Window Width in pixels" size=
"16" start=
"32" type=
"uint"/>
140 <field name=
"Clip Window Bottom Pixel Coordinate" size=
"16" start=
"16" type=
"uint"/>
141 <field name=
"Clip Window Left Pixel Coordinate" size=
"16" start=
"0" type=
"uint"/>
144 <packet name=
"Viewport Offset" code=
"103">
145 <field name=
"Viewport Centre Y-coordinate" size=
"16" start=
"16" type=
"int"/>
146 <field name=
"Viewport Centre X-coordinate" size=
"16" start=
"0" type=
"int"/>
149 <packet name=
"Z min and max clipping planes" code=
"104">
150 <field name=
"Maximum Zw" size=
"32" start=
"32" type=
"float"/>
151 <field name=
"Minimum Zw" size=
"32" start=
"0" type=
"float"/>
154 <packet name=
"Clipper XY Scaling" code=
"105" cl=
"B">
155 <field name=
"Viewport Half-Height in 1/16th of pixel" size=
"32" start=
"32" type=
"float"/>
156 <field name=
"Viewport Half-Width in 1/16th of pixel" size=
"32" start=
"0" type=
"float"/>
159 <packet name=
"Clipper Z Scale and Offset" code=
"106" cl=
"B">
160 <field name=
"Viewport Z Offset (Zc to Zs)" size=
"32" start=
"32" type=
"float"/>
161 <field name=
"Viewport Z Scale (Zc to Zs)" size=
"32" start=
"0" type=
"float"/>
164 <packet name=
"Tile Binning Mode Configuration" code=
"112" cl=
"B">
165 <field name=
"Double-buffer in non-ms mode" size=
"1" start=
"119" type=
"bool"/>
167 <field name=
"Tile Allocation Block Size" size=
"2" start=
"117" type=
"uint">
168 <value name=
"block size 32" value=
"0"/>
169 <value name=
"block size 64" value=
"1"/>
170 <value name=
"block size 128" value=
"2"/>
171 <value name=
"block size 256" value=
"3"/>
174 <field name=
"Tile Allocation Initial Block Size" size=
"2" start=
"115" type=
"uint">
175 <value name=
"block size 32" value=
"0"/>
176 <value name=
"block size 64" value=
"1"/>
177 <value name=
"block size 128" value=
"2"/>
178 <value name=
"block size 256" value=
"3"/>
181 <field name=
"Auto-initialise Tile State Data Array" size=
"1" start=
"114" type=
"bool"/>
182 <field name=
"Tile Buffer 64-bit Color Depth" size=
"1" start=
"113" type=
"bool"/>
183 <field name=
"Multisample Mode (4x)" size=
"1" start=
"112" type=
"bool"/>
185 <field name=
"Height (in tiles)" size=
"8" start=
"104" type=
"uint"/>
186 <field name=
"Width (in tiles)" size=
"8" start=
"96" type=
"uint"/>
188 <field name=
"Tile State Data Array Address" size=
"32" start=
"64" type=
"uint"/>
189 <field name=
"Tile Allocation memory size" size=
"32" start=
"32" type=
"uint"/>
190 <field name=
"Tile Allocation memory address" size=
"32" start=
"0" type=
"uint"/>
194 <struct name=
"Shader Record">
195 <field name=
"Fragment Shader is single threaded" size=
"1" start=
"0" type=
"bool"/>
196 <field name=
"Point Size included in shaded vertex data" size=
"1" start=
"1" type=
"bool"/>
197 <field name=
"Enable Clipping" size=
"1" start=
"2" type=
"bool"/>
199 <field name=
"Fragment Shader Number of Uniforms (not used currently)" size=
"16" start=
"2b" type=
"uint"/>
200 <field name=
"Fragment Shader Number of Varyings" size=
"8" start=
"3b" type=
"uint"/>
201 <field name=
"Fragment Shader Code Address" size=
"32" start=
"4b" type=
"address"/>
202 <!-- set up by the kernel -->
203 <field name=
"Fragment Shader Uniforms Address" size=
"32" start=
"8b" type=
"uint"/>
205 <field name=
"Vertex Shader Number of Uniforms (not used currently)" size=
"16" start=
"12b" type=
"uint"/>
206 <field name=
"Vertex Shader Attribute Array select bits" size=
"8" start=
"14b" type=
"uint"/>
207 <field name=
"Vertex Shader Total Attributes Size" size=
"8" start=
"15b" type=
"uint"/>
208 <field name=
"Vertex Shader Code Address" size=
"32" start=
"16b" type=
"address"/>
209 <!-- set up by the kernel -->
210 <field name=
"Vertex Shader Uniforms Address" size=
"32" start=
"16b" type=
"uint"/>
212 <field name=
"Coordinate Shader Number of Uniforms (not used currently)" size=
"16" start=
"24b" type=
"uint"/>
213 <field name=
"Coordinate Shader Attribute Array select bits" size=
"8" start=
"26b" type=
"uint"/>
214 <field name=
"Coordinate Shader Total Attributes Size" size=
"8" start=
"27b" type=
"uint"/>
215 <field name=
"Coordinate Shader Code Address" size=
"32" start=
"28b" type=
"address"/>
216 <!-- set up by the kernel -->
217 <field name=
"Coordinate Shader Uniforms Address" size=
"32" start=
"32b" type=
"uint"/>