xref: /aosp_15_r20/external/mesa3d/src/intel/genxml/gen5.xml (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1<?xml version='1.0' encoding='utf-8'?>
2<genxml name="ILK" gen="5">
3  <import name="gen45.xml" />
4  <struct name="CLIP_STATE" length="11">
5    <field name="GRF Register Count" start="1" end="3" type="uint" />
6    <field name="Kernel Start Pointer" start="6" end="31" type="offset" />
7    <field name="Software Exception Enable" start="39" end="39" type="bool" />
8    <field name="Mask Stack Exception Enable" start="43" end="43" type="bool" />
9    <field name="Illegal Opcode Exception Enable" start="45" end="45" type="bool" />
10    <field name="Floating Point Mode" start="48" end="48" type="uint" prefix="FLOATING_POINT_MODE">
11      <value name="IEEE-754" value="0" />
12      <value name="Alternate" value="1" />
13    </field>
14    <field name="Thread Priority" start="49" end="49" type="uint">
15      <value name="Normal Priority" value="0" />
16      <value name="High Priority" value="1" />
17    </field>
18    <field name="Binding Table Entry Count" start="50" end="57" type="uint" />
19    <field name="Single Program Flow" start="63" end="63" type="bool" />
20    <field name="Per-Thread Scratch Space" start="64" end="67" type="uint" />
21    <field name="Scratch Space Base Pointer" start="74" end="95" type="address" />
22    <field name="Dispatch GRF Start Register For URB Data" start="96" end="99" type="uint" />
23    <field name="Vertex URB Entry Read Offset" start="100" end="105" type="uint" />
24    <field name="Vertex URB Entry Read Length" start="107" end="112" type="uint" />
25    <field name="Constant URB Entry Read Offset" start="114" end="119" type="uint" />
26    <field name="Constant URB Entry Read Length" start="121" end="126" type="uint" />
27    <field name="Number of URB Entries" start="139" end="146" type="uint" />
28    <field name="URB Entry Allocation Size" start="147" end="151" type="uint" />
29    <field name="Maximum Number of Threads" start="153" end="158" type="uint" />
30    <field name="Clip Mode" start="173" end="175" type="uint" prefix="CLIPMODE">
31      <value name="NORMAL" value="0" />
32      <value name="ALL" value="1" />
33      <value name="CLIP_NON_REJECTED" value="2" />
34      <value name="REJECT_ALL" value="3" />
35      <value name="ACCEPT_ALL" value="4" />
36    </field>
37    <field name="UserClipDistance ClipTest Enable Bitmask" start="176" end="183" type="uint" />
38    <field name="UserClipFlags MustClip Enable" start="184" end="184" type="bool" />
39    <field name="Negative W ClipTest Enable" start="185" end="185" type="bool" />
40    <field name="Guardband ClipTest Enable" start="186" end="186" type="bool" />
41    <field name="Viewport Z ClipTest Enable" start="187" end="187" type="bool" />
42    <field name="Viewport XY ClipTest Enable" start="188" end="188" type="bool" />
43    <field name="Vertex Position Space" start="189" end="189" type="uint" prefix="VPOS">
44      <value name="NDCSPACE" value="0" />
45      <value name="SCREENSPACE" value="1" />
46    </field>
47    <field name="API Mode" start="190" end="190" type="uint" prefix="APIMODE">
48      <value name="OGL" value="0" />
49      <value name="D3D" value="1" />
50    </field>
51    <field name="Clipper Viewport State Pointer" start="197" end="223" type="address" />
52    <field name="Screen Space Viewport X Min" start="224" end="255" type="float" />
53    <field name="Screen Space Viewport X Max" start="256" end="287" type="float" />
54    <field name="Screen Space Viewport Y Min" start="288" end="319" type="float" />
55    <field name="Screen Space Viewport Y Max" start="320" end="351" type="float" />
56  </struct>
57  <struct name="GS_STATE" length="7">
58    <field name="GRF Register Count" start="1" end="3" type="uint" />
59    <field name="Kernel Start Pointer" start="6" end="31" type="offset" />
60    <field name="Software Exception Enable" start="39" end="39" type="bool" />
61    <field name="Mask Stack Exception Enable" start="43" end="43" type="bool" />
62    <field name="Illegal Opcode Exception Enable" start="45" end="45" type="bool" />
63    <field name="Floating Point Mode" start="48" end="48" type="uint" prefix="FLOATING_POINT_MODE">
64      <value name="IEEE-754" value="0" />
65      <value name="Alternate" value="1" />
66    </field>
67    <field name="Binding Table Entry Count" start="50" end="57" type="uint" />
68    <field name="Single Program Flow" start="63" end="63" type="bool" />
69    <field name="Per-Thread Scratch Space" start="64" end="67" type="uint" />
70    <field name="Scratch Space Base Pointer" start="74" end="95" type="address" />
71    <field name="Dispatch GRF Start Register For URB Data" start="96" end="99" type="uint" />
72    <field name="Vertex URB Entry Read Offset" start="100" end="105" type="uint" />
73    <field name="Vertex URB Entry Read Length" start="107" end="112" type="uint" />
74    <field name="Constant URB Entry Read Offset" start="114" end="119" type="uint" />
75    <field name="Constant URB Entry Read Length" start="121" end="126" type="uint" />
76    <field name="Rendering Enabled" start="136" end="136" type="bool" />
77    <field name="SO Statistics Enable" start="137" end="137" type="bool" />
78    <field name="GS Statistics Enable" start="138" end="138" type="bool" />
79    <field name="Number of URB Entries" start="139" end="146" type="uint" />
80    <field name="URB Entry Allocation Size" start="147" end="151" type="uint" />
81    <field name="Maximum Number of Threads" start="153" end="158" type="uint" />
82    <field name="Sampler Count" start="160" end="162" type="uint" />
83    <field name="Sampler State Pointer" start="165" end="191" type="address" />
84    <field name="Maximum VPIndex" start="192" end="195" type="uint" />
85    <field name="Reorder Enable" start="222" end="222" type="bool" />
86  </struct>
87  <struct name="MEMORY_OBJECT_CONTROL_STATE" length="1">
88    <field name="Cacheability Control" start="0" end="1" type="uint" />
89    <field name="Graphics Data Type (GFDT)" start="2" end="2" type="uint" />
90    <field name="Encrypted Data" start="3" end="3" type="bool" />
91  </struct>
92  <struct name="RENDER_SURFACE_STATE" length="6">
93    <field name="Cube Face Enable - Positive Z" start="0" end="0" type="bool" />
94    <field name="Cube Face Enable - Negative Z" start="1" end="1" type="bool" />
95    <field name="Cube Face Enable - Positive Y" start="2" end="2" type="bool" />
96    <field name="Cube Face Enable - Negative Y" start="3" end="3" type="bool" />
97    <field name="Cube Face Enable - Positive X" start="4" end="4" type="bool" />
98    <field name="Cube Face Enable - Negative X" start="5" end="5" type="bool" />
99    <field name="Media Boundary Pixel Mode" start="6" end="7" type="uint">
100      <value name="NORMAL_MODE" value="0" />
101    </field>
102    <field name="Render Cache Read Write Mode" start="8" end="8" type="uint">
103      <value name="WRITE_ONLY" value="0" />
104      <value name="READ_WRITE" value="1" />
105    </field>
106    <field name="Cube Map Corner Mode" start="9" end="9" type="uint">
107      <value name="CUBE_REPLICATE" value="0" />
108      <value name="CUBE_AVERAGE" value="1" />
109    </field>
110    <field name="MIP Map Layout Mode" start="10" end="10" type="uint">
111      <value name="MIPLAYOUT_BELOW" value="0" />
112      <value name="MIPLAYOUT_RIGHT" value="1" />
113    </field>
114    <field name="Vertical Line Stride Offset" start="11" end="11" type="uint" />
115    <field name="Vertical Line Stride" start="12" end="12" type="uint" />
116    <field name="Color Blend Enable" start="13" end="13" type="bool" />
117    <field name="Color Buffer Component Write Disables" start="14" end="17" type="uint">
118      <value name="WRITEDISABLE_ALPHA" value="8" />
119      <value name="WRITEDISABLE_RED" value="4" />
120      <value name="WRITEDISABLE_GREEN" value="2" />
121      <value name="WRITEDISABLE_BLUE" value="1" />
122    </field>
123    <field name="Surface Format" start="18" end="26" type="uint" />
124    <field name="Data Return Format" start="27" end="27" type="uint">
125      <value name="DATA_RETURN_FLOAT32" value="0" />
126      <value name="DATA_RETURN_S1.14" value="1" />
127    </field>
128    <field name="Surface Type" start="29" end="31" type="uint">
129      <value name="SURFTYPE_1D" value="0" />
130      <value name="SURFTYPE_2D" value="1" />
131      <value name="SURFTYPE_3D" value="2" />
132      <value name="SURFTYPE_CUBE" value="3" />
133      <value name="SURFTYPE_BUFFER" value="4" />
134      <value name="SURFTYPE_NULL" value="7" />
135    </field>
136    <field name="Surface Base Address" start="32" end="63" type="address" />
137    <field name="Render Target Rotation" start="64" end="65" type="uint">
138      <value name="RTROTATE_0DEG" value="0" />
139      <value name="RTROTATE_90DEG" value="1" />
140      <value name="RTROTATE_270DEG" value="3" />
141    </field>
142    <field name="MIP Count / LOD" start="66" end="69" type="uint" />
143    <field name="Width" start="70" end="82" type="uint" />
144    <field name="Height" start="83" end="95" type="uint" />
145    <field name="Tile Walk" start="96" end="96" type="uint">
146      <value name="TILEWALK_XMAJOR" value="0" />
147      <value name="TILEWALK_YMAJOR" value="1" />
148    </field>
149    <field name="Tiled Surface" start="97" end="97" type="uint" />
150    <field name="Surface Pitch" start="99" end="115" type="uint" />
151    <field name="Depth" start="117" end="127" type="uint" />
152    <field name="Render Target View Extent" start="136" end="144" type="uint" />
153    <field name="Minimum Array Element" start="145" end="155" type="uint" />
154    <field name="Surface Min LOD" start="156" end="159" type="uint" />
155    <field name="Y Offset" start="180" end="183" type="uint" />
156    <field name="X Offset" start="185" end="191" type="uint" />
157  </struct>
158  <struct name="SAMPLER_BORDER_COLOR_STATE" length="12">
159    <field name="Border Color Unorm Red" start="0" end="7" type="uint" />
160    <field name="Border Color Unorm Green" start="8" end="15" type="uint" />
161    <field name="Border Color Unorm Blue" start="16" end="23" type="uint" />
162    <field name="Border Color Unorm Alpha" start="24" end="31" type="uint" />
163    <field name="Border Color Float Red" start="32" end="63" type="float" />
164    <field name="Border Color Float Green" start="64" end="95" type="float" />
165    <field name="Border Color Float Blue" start="96" end="127" type="float" />
166    <field name="Border Color Float Alpha" start="128" end="159" type="float" />
167    <field name="Border Color Float16 Red" start="160" end="175" type="uint" />
168    <field name="Border Color Float16 Green" start="176" end="191" type="uint" />
169    <field name="Border Color Float16 Blue" start="192" end="207" type="uint" />
170    <field name="Border Color Float16 Alpha" start="208" end="223" type="uint" />
171    <field name="Border Color Unorm16 Red" start="224" end="239" type="uint" />
172    <field name="Border Color Unorm16 Green" start="240" end="255" type="uint" />
173    <field name="Border Color Unorm16 Blue" start="256" end="271" type="uint" />
174    <field name="Border Color Unorm16 Alpha" start="272" end="287" type="uint" />
175    <field name="Border Color Snorm16 Red" start="288" end="303" type="int" />
176    <field name="Border Color Snorm16 Green" start="304" end="319" type="int" />
177    <field name="Border Color Snorm16 Blue" start="320" end="335" type="int" />
178    <field name="Border Color Snorm16 Alpha" start="336" end="351" type="int" />
179    <field name="Border Color Snorm8 Red" start="352" end="359" type="int" />
180    <field name="Border Color Snorm8 Green" start="360" end="367" type="int" />
181    <field name="Border Color Snorm8 Blue" start="368" end="375" type="int" />
182    <field name="Border Color Snorm8 Alpha" start="376" end="383" type="int" />
183  </struct>
184  <struct name="SF_STATE" length="8">
185    <field name="GRF Register Count" start="1" end="3" type="uint" />
186    <field name="Kernel Start Pointer" start="6" end="31" type="offset" />
187    <field name="Software Exception Enable" start="39" end="39" type="bool" />
188    <field name="Mask Stack Exception Enable" start="43" end="43" type="bool" />
189    <field name="Illegal Opcode Exception Enable" start="45" end="45" type="bool" />
190    <field name="Floating Point Mode" start="48" end="48" type="uint" prefix="FLOATING_POINT_MODE">
191      <value name="IEEE-754" value="0" />
192      <value name="Alternate" value="1" />
193    </field>
194    <field name="Thread Priority" start="49" end="49" type="uint">
195      <value name="Normal Priority" value="0" />
196      <value name="High Priority" value="1" />
197    </field>
198    <field name="Binding Table Entry Count" start="50" end="57" type="uint" />
199    <field name="Single Program Flow" start="63" end="63" type="bool" />
200    <field name="Per-Thread Scratch Space" start="64" end="67" type="uint" />
201    <field name="Scratch Space Base Pointer" start="74" end="95" type="address" />
202    <field name="Dispatch GRF Start Register For URB Data" start="96" end="99" type="uint" />
203    <field name="Vertex URB Entry Read Offset" start="100" end="105" type="uint" />
204    <field name="Vertex URB Entry Read Length" start="107" end="112" type="uint" />
205    <field name="Constant URB Entry Read Offset" start="114" end="119" type="uint" />
206    <field name="Constant URB Entry Read Length" start="121" end="126" type="uint" />
207    <field name="Number of URB Entries" start="139" end="146" type="uint" />
208    <field name="URB Entry Allocation Size" start="147" end="151" type="uint" />
209    <field name="Maximum Number of Threads" start="153" end="158" type="uint" />
210    <field name="Front Winding" start="160" end="160" type="uint">
211      <value name="FRONTWINDING_CW" value="0" />
212      <value name="FRONTWINDING_CCW" value="1" />
213    </field>
214    <field name="Viewport Transform Enable" start="161" end="161" type="bool" />
215    <field name="Setup Viewport State Offset" start="165" end="191" type="address" />
216    <field name="Destination Origin Vertical Bias" start="201" end="204" type="u0.4" />
217    <field name="Destination Origin Horizontal Bias" start="205" end="208" type="u0.4" />
218    <field name="Scissor Rectangle Enable" start="209" end="209" type="bool" />
219    <field name="2x2 Pixel Triangle Filter Disable" start="210" end="210" type="bool" />
220    <field name="Zero Pixel Triangle Filter Disable" start="211" end="211" type="bool" />
221    <field name="Point Rasterization Rule" start="212" end="213" type="uint">
222      <value name="RASTRULE_UPPER_LEFT" value="0" />
223      <value name="RASTRULE_UPPER_RIGHT" value="1" />
224    </field>
225    <field name="Line End Cap Antialiasing Region Width" start="214" end="215" type="uint">
226      <value name="0.5 pixels" value="0" />
227      <value name="1.0 pixels" value="1" />
228      <value name="2.0 pixels" value="2" />
229      <value name="4.0 pixels" value="3" />
230    </field>
231    <field name="Line Width" start="216" end="219" type="u3.1" />
232    <field name="Fast Scissor Clip Disable" start="220" end="220" type="bool" />
233    <field name="Cull Mode" start="221" end="222" type="uint" prefix="CULLMODE">
234      <value name="BOTH" value="0" />
235      <value name="NONE" value="1" />
236      <value name="FRONT" value="2" />
237      <value name="BACK" value="3" />
238    </field>
239    <field name="Antialiasing Enable" start="223" end="223" type="bool" />
240    <field name="Point Width" start="224" end="234" type="u8.3" />
241    <field name="Point Width Source" start="235" end="235" type="uint">
242      <value name="Vertex" value="0" />
243      <value name="State" value="1" />
244    </field>
245    <field name="Vertex Sub Pixel Precision Select" start="236" end="236" type="uint">
246      <value name="8 Sub-Pixel Precision Bits" value="0" />
247      <value name="4 Sub-Pixel Precision Bits" value="1" />
248    </field>
249    <field name="Sprite Point Enable" start="237" end="237" type="bool" />
250    <field name="AA Line Distance Mode" start="238" end="238" type="uint" prefix="AALINEDISTANCE">
251      <value name="MANHATTAN" value="0" />
252      <value name="TRUE" value="1" />
253    </field>
254    <field name="Triangle Fan Provoking Vertex Select" start="249" end="250" type="uint">
255      <value name="Vertex 0" value="0" />
256      <value name="Vertex 1" value="1" />
257      <value name="Vertex 2" value="2" />
258    </field>
259    <field name="Line Strip/List Provoking Vertex Select" start="251" end="252" type="uint">
260      <value name="Vertex 0" value="0" />
261      <value name="Vertex 1" value="1" />
262    </field>
263    <field name="Triangle Strip/List Provoking Vertex Select" start="253" end="254" type="uint">
264      <value name="Vertex 0" value="0" />
265      <value name="Vertex 1" value="1" />
266      <value name="Vertex 2" value="2" />
267    </field>
268    <field name="Last Pixel Enable" start="255" end="255" type="bool" />
269  </struct>
270  <struct name="VERTEX_BUFFER_STATE" length="4">
271    <field name="Buffer Pitch" start="0" end="11" type="uint" />
272    <field name="Null Vertex Buffer" start="13" end="13" type="bool" />
273    <field name="Buffer Access Type" start="26" end="26" type="uint">
274      <value name="VERTEXDATA" value="0" />
275      <value name="INSTANCEDATA" value="1" />
276    </field>
277    <field name="Vertex Buffer Index" start="27" end="31" type="uint" />
278    <field name="Buffer Starting Address" start="32" end="63" type="address" />
279    <field name="End Address" start="64" end="95" type="address" />
280    <field name="Instance Data Step Rate" start="96" end="127" type="uint" />
281  </struct>
282  <struct name="VS_STATE" length="7">
283    <field name="GRF Register Count" start="1" end="3" type="uint" />
284    <field name="Kernel Start Pointer" start="6" end="31" type="offset" />
285    <field name="Software Exception Enable" start="39" end="39" type="bool" />
286    <field name="Mask Stack Exception Enable" start="43" end="43" type="bool" />
287    <field name="Illegal Opcode Exception Enable" start="45" end="45" type="bool" />
288    <field name="Floating Point Mode" start="48" end="48" type="uint" prefix="FLOATING_POINT_MODE">
289      <value name="IEEE-754" value="0" />
290      <value name="Alternate" value="1" />
291    </field>
292    <field name="Thread Priority" start="49" end="49" type="uint">
293      <value name="Normal Priority" value="0" />
294      <value name="High Priority" value="1" />
295    </field>
296    <field name="Binding Table Entry Count" start="50" end="57" type="uint" />
297    <field name="Single Program Flow" start="63" end="63" type="bool" />
298    <field name="Per-Thread Scratch Space" start="64" end="67" type="uint" />
299    <field name="Scratch Space Base Pointer" start="74" end="95" type="address" />
300    <field name="Dispatch GRF Start Register For URB Data" start="96" end="99" type="uint" />
301    <field name="Vertex URB Entry Read Offset" start="100" end="105" type="uint" />
302    <field name="Vertex URB Entry Read Length" start="107" end="112" type="uint" />
303    <field name="Constant URB Entry Read Offset" start="114" end="119" type="uint" />
304    <field name="Constant URB Entry Read Length" start="121" end="126" type="uint" />
305    <field name="Statistics Enable" start="138" end="138" type="bool" />
306    <field name="Number of URB Entries" start="139" end="146" type="uint" />
307    <field name="URB Entry Allocation Size" start="147" end="151" type="uint" />
308    <field name="Maximum Number of Threads" start="153" end="158" type="uint" />
309    <field name="Sampler Count" start="160" end="162" type="uint" />
310    <field name="Sampler State Pointer" start="165" end="191" type="address" />
311    <field name="Enable" start="192" end="192" type="bool" />
312    <field name="Vertex Cache Disable" start="193" end="193" type="bool" />
313  </struct>
314  <struct name="WM_STATE" length="11">
315    <field name="GRF Register Count 0" start="1" end="3" type="uint" />
316    <field name="Kernel Start Pointer 0" start="6" end="31" type="offset" />
317    <field name="Software Exception Enable" start="33" end="33" type="bool" />
318    <field name="Mask Stack Exception Enable" start="34" end="34" type="bool" />
319    <field name="Illegal Opcode Exception Enable" start="36" end="36" type="bool" />
320    <field name="Depth Coefficient URB Read Offset" start="40" end="45" type="uint" />
321    <field name="Floating Point Mode" start="48" end="48" type="uint" prefix="FLOATING_POINT_MODE">
322      <value name="IEEE-754" value="0" />
323      <value name="Alternate" value="1" />
324    </field>
325    <field name="Thread Priority" start="49" end="49" type="uint">
326      <value name="High" value="1" />
327    </field>
328    <field name="Binding Table Entry Count" start="50" end="57" type="uint" />
329    <field name="Single Program Flow" start="63" end="63" type="bool" />
330    <field name="Per-Thread Scratch Space" start="64" end="67" type="uint" />
331    <field name="Scratch Space Base Pointer" start="74" end="95" type="address" />
332    <field name="Dispatch GRF Start Register For Constant/Setup Data 0" start="96" end="99" type="uint" />
333    <field name="Setup URB Entry Read Offset" start="100" end="105" type="uint" />
334    <field name="Setup URB Entry Read Length" start="107" end="112" type="uint" />
335    <field name="Constant URB Entry Read Offset" start="114" end="119" type="uint" />
336    <field name="Constant URB Entry Read Length" start="121" end="126" type="uint" />
337    <field name="Statistics Enable" start="128" end="128" type="bool" />
338    <field name="Sampler Count" start="130" end="132" type="uint" />
339    <field name="Sampler State Pointer" start="133" end="159" type="address" />
340    <field name="8 Pixel Dispatch Enable" start="160" end="160" type="bool" />
341    <field name="16 Pixel Dispatch Enable" start="161" end="161" type="bool" />
342    <field name="32 Pixel Dispatch Enable" start="162" end="162" type="bool" />
343    <field name="Contiguous 32 Pixel Dispatch Enable" start="163" end="163" type="bool" />
344    <field name="Contiguous 64 Pixel Dispatch Enable" start="164" end="164" type="bool" />
345    <field name="Fast Span Coverage Enable" start="166" end="166" type="bool" />
346    <field name="Depth Buffer Clear" start="167" end="167" type="bool" />
347    <field name="Depth Buffer Resolve Enable" start="168" end="168" type="bool" />
348    <field name="Hierarchical Depth Buffer Resolve Enable" start="169" end="169" type="bool" />
349    <field name="Legacy Global Depth Bias Enable" start="170" end="170" type="bool" />
350    <field name="Line Stipple Enable" start="171" end="171" type="bool" />
351    <field name="Global Depth Offset Enable" start="172" end="172" type="bool" />
352    <field name="Polygon Stipple Enable" start="173" end="173" type="bool" />
353    <field name="Line Antialiasing Region Width" start="174" end="175" type="uint">
354      <value name="0.5 pixels" value="0" />
355      <value name="1.0 pixels" value="1" />
356      <value name="2.0 pixels" value="2" />
357      <value name="4.0 pixels" value="3" />
358    </field>
359    <field name="Line End Cap Antialiasing Region Width" start="176" end="177" type="uint">
360      <value name="0.5 pixels" value="0" />
361      <value name="1.0 pixels" value="1" />
362      <value name="2.0 pixels" value="2" />
363      <value name="4.0 pixels" value="3" />
364    </field>
365    <field name="Early Depth Test Enable" start="178" end="178" type="bool" />
366    <field name="Thread Dispatch Enable" start="179" end="179" type="bool" />
367    <field name="Pixel Shader Uses Source Depth" start="180" end="180" type="bool" />
368    <field name="Pixel Shader Computed Depth" start="181" end="181" type="bool" />
369    <field name="Pixel Shader Kills Pixel" start="182" end="182" type="bool" />
370    <field name="Legacy Diamond Line Rasterization" start="183" end="183" type="bool" />
371    <field name="Maximum Number of Threads" start="185" end="191" type="uint" />
372    <field name="Global Depth Offset Constant" start="192" end="223" type="float" />
373    <field name="Global Depth Offset Scale" start="224" end="255" type="float" />
374    <field name="GRF Register Count 1" start="257" end="259" type="uint" />
375    <field name="Kernel Start Pointer 1" start="262" end="287" type="offset" />
376    <field name="GRF Register Count 2" start="289" end="291" type="uint" />
377    <field name="Kernel Start Pointer 2" start="294" end="319" type="offset" />
378    <field name="GRF Register Count 3" start="321" end="323" type="uint" />
379    <field name="Kernel Start Pointer 3" start="326" end="351" type="offset" />
380  </struct>
381  <instruction name="3DSTATE_CLEAR_PARAMS" bias="2" length="2" engine="render">
382    <field name="DWord Length" start="0" end="7" type="uint" default="0" />
383    <field name="Depth Clear Value Valid" start="15" end="15" type="bool" />
384    <field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="16" />
385    <field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
386    <field name="Command SubType" start="27" end="28" type="uint" default="3" />
387    <field name="Command Type" start="29" end="31" type="uint" default="3" />
388    <field name="Depth Clear Value" start="32" end="63" type="uint" />
389  </instruction>
390  <instruction name="3DSTATE_DEPTH_BUFFER" bias="2" length="6" engine="render">
391    <field name="DWord Length" start="0" end="7" type="uint" default="4" />
392    <field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="5" />
393    <field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
394    <field name="Command SubType" start="27" end="28" type="uint" default="3" />
395    <field name="Command Type" start="29" end="31" type="uint" default="3" />
396    <field name="Surface Pitch" start="32" end="48" type="uint" />
397    <field name="Surface Format" start="50" end="52" type="uint">
398      <value name="D32_FLOAT_S8X24_UINT" value="0" />
399      <value name="D32_FLOAT" value="1" />
400      <value name="D24_UNORM_S8_UINT" value="2" />
401      <value name="D24_UNORM_X8_UINT" value="3" />
402      <value name="D16_UNORM" value="5" />
403    </field>
404    <field name="Separate Stencil Buffer Enable" start="53" end="53" type="bool" />
405    <field name="Hierarchical Depth Buffer Enable" start="54" end="54" type="bool" />
406    <field name="Software Tiled Rendering Mode" start="55" end="56" type="uint">
407      <value name="NORMAL" value="0" />
408      <value name="STR1" value="1" />
409      <value name="STR2" value="3" />
410    </field>
411    <field name="Tile Walk" start="58" end="58" type="uint">
412      <value name="TILEWALK_YMAJOR" value="1" />
413    </field>
414    <field name="Tiled Surface" start="59" end="59" type="bool" />
415    <field name="Surface Type" start="61" end="63" type="uint">
416      <value name="SURFTYPE_1D" value="0" />
417      <value name="SURFTYPE_2D" value="1" />
418      <value name="SURFTYPE_3D" value="2" />
419      <value name="SURFTYPE_CUBE" value="3" />
420      <value name="SURFTYPE_NULL" value="7" />
421    </field>
422    <field name="Surface Base Address" start="64" end="95" type="address" />
423    <field name="MIP Map Layout Mode" start="97" end="97" type="uint">
424      <value name="MIPLAYOUT_BELOW" value="0" />
425      <value name="MIPLAYOUT_RIGHT" value="1" />
426    </field>
427    <field name="LOD" start="98" end="101" type="uint" />
428    <field name="Width" start="102" end="114" type="uint" />
429    <field name="Height" start="115" end="127" type="uint" />
430    <field name="Render Target View Extent" start="129" end="137" type="uint" />
431    <field name="Minimum Array Element" start="138" end="148" type="uint" />
432    <field name="Depth" start="149" end="159" type="uint" />
433    <field name="Depth Coordinate Offset X" start="160" end="175" type="int" />
434    <field name="Depth Coordinate Offset Y" start="176" end="191" type="int" />
435  </instruction>
436  <instruction name="3DSTATE_HIER_DEPTH_BUFFER" bias="2" length="3" engine="render">
437    <field name="DWord Length" start="0" end="7" type="uint" default="1" />
438    <field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="15" />
439    <field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
440    <field name="Command SubType" start="27" end="28" type="uint" default="3" />
441    <field name="Command Type" start="29" end="31" type="uint" default="3" />
442    <field name="Surface Pitch" start="32" end="48" type="uint" />
443    <field name="Surface Base Address" start="64" end="95" type="address" />
444  </instruction>
445  <instruction name="3DSTATE_LINE_STIPPLE" bias="2" length="3" engine="render">
446    <field name="DWord Length" start="0" end="7" type="uint" default="1" />
447    <field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="8" />
448    <field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
449    <field name="Command SubType" start="27" end="28" type="uint" default="3" />
450    <field name="Command Type" start="29" end="31" type="uint" default="3" />
451    <field name="Line Stipple Pattern" start="32" end="47" type="uint" />
452    <field name="Current Stipple Index" start="48" end="51" type="uint" />
453    <field name="Current Repeat Counter" start="53" end="61" type="uint" />
454    <field name="Modify Enable" start="63" end="63" type="bool" />
455    <field name="Line Stipple Repeat Count" start="64" end="72" type="uint" />
456    <field name="Line Stipple Inverse Repeat Count" start="80" end="95" type="u1.13" />
457  </instruction>
458  <instruction name="3DSTATE_STENCIL_BUFFER" bias="2" length="3" engine="render">
459    <field name="DWord Length" start="0" end="7" type="uint" default="1" />
460    <field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="14" />
461    <field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
462    <field name="Command SubType" start="27" end="28" type="uint" default="3" />
463    <field name="Command Type" start="29" end="31" type="uint" default="3" />
464    <field name="Surface Pitch" start="32" end="48" type="uint" />
465    <field name="Surface Base Address" start="64" end="95" type="address" />
466  </instruction>
467  <instruction name="CONSTANT_BUFFER" bias="2" length="2" engine="render">
468    <field name="DWord Length" start="0" end="7" type="uint" default="0" />
469    <field name="Valid" start="8" end="8" type="bool" />
470    <field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="2" />
471    <field name="3D Command Opcode" start="24" end="26" type="uint" default="0" />
472    <field name="Command SubType" start="27" end="28" type="uint" default="0" />
473    <field name="Command Type" start="29" end="31" type="uint" default="3" />
474    <field name="Buffer Length" start="32" end="37" type="uint" />
475    <field name="Buffer Starting Address" start="38" end="63" type="address" />
476  </instruction>
477  <instruction name="MI_FLUSH" bias="1" length="1" engine="render">
478    <field name="State/Instruction Cache Invalidate" start="1" end="1" type="uint">
479      <value name="Don't Invalidate" value="0" />
480      <value name="Invalidate" value="1" />
481    </field>
482    <field name="Render Cache Flush Inhibit" start="2" end="2" type="uint">
483      <value name="Flush" value="0" />
484      <value name="Don't Flush" value="1" />
485    </field>
486    <field name="Global Snapshot Count Reset" start="3" end="3" type="uint">
487      <value name="Don't Reset" value="0" />
488      <value name="Reset" value="1" />
489    </field>
490    <field name="Generic Media State Clear" start="4" end="4" type="bool" />
491    <field name="Indirect State Pointers Disable" start="5" end="5" type="bool" />
492    <field name="Protected Memory Enable" start="6" end="6" type="bool" />
493    <field name="MI Command Opcode" start="23" end="28" type="uint" default="4" />
494    <field name="Command Type" start="29" end="31" type="uint" default="0" />
495  </instruction>
496  <instruction name="MI_STORE_DATA_IMM" bias="2" length="5">
497    <field name="DWord Length" start="0" end="5" type="uint" default="2" />
498    <field name="Memory Address Type" start="22" end="22" type="bool" />
499    <field name="MI Command Opcode" start="23" end="28" type="uint" default="32" />
500    <field name="Command Type" start="29" end="31" type="uint" default="0" />
501    <field name="Physical Start Address Extension" start="32" end="35" type="address" />
502    <field name="Address" start="66" end="95" type="address" />
503    <field name="Immediate Data" start="96" end="159" type="uint" />
504  </instruction>
505  <instruction name="MI_STORE_REGISTER_MEM" bias="2" length="3">
506    <field name="DWord Length" start="0" end="7" type="uint" default="1" />
507    <field name="Use Global GTT" start="22" end="22" type="bool" />
508    <field name="MI Command Opcode" start="23" end="28" type="uint" default="36" />
509    <field name="Command Type" start="29" end="31" type="uint" default="0" />
510    <field name="Register Address" start="34" end="57" type="offset" />
511    <field name="Memory Address" start="66" end="95" type="address" />
512  </instruction>
513  <instruction name="PIPELINE_SELECT" bias="1" length="1" engine="render">
514    <field name="Pipeline Selection" start="0" end="1" type="uint">
515      <value name="3D" value="0" />
516      <value name="Media" value="1" />
517      <value name="GPGPU" value="2" />
518    </field>
519    <field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="4" />
520    <field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
521    <field name="Command SubType" start="27" end="28" type="uint" default="1" />
522    <field name="Command Type" start="29" end="31" type="uint" default="3" />
523  </instruction>
524  <instruction name="PIPE_CONTROL" bias="2" length="4" engine="render">
525    <field name="DWord Length" start="0" end="7" type="uint" default="2" />
526    <field name="Notify Enable" start="8" end="8" type="bool" />
527    <field name="Indirect State Pointers Disable" start="9" end="9" type="bool" />
528    <field name="Texture Cache Flush Enable" start="10" end="10" type="bool" />
529    <field name="Instruction Cache Invalidate Enable" start="11" end="11" type="bool" />
530    <field name="Write Cache Flush" start="12" end="12" type="bool" />
531    <field name="Depth Stall Enable" start="13" end="13" type="bool" />
532    <field name="Post Sync Operation" start="14" end="15" type="uint">
533      <value name="No Write" value="0" />
534      <value name="Write Immediate Data" value="1" />
535      <value name="Write PS Depth Count" value="2" />
536      <value name="Write Timestamp" value="3" />
537    </field>
538    <field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="0" />
539    <field name="3D Command Opcode" start="24" end="26" type="uint" default="2" />
540    <field name="Command SubType" start="27" end="28" type="uint" default="3" />
541    <field name="Command Type" start="29" end="31" type="uint" default="3" />
542    <field name="Depth Cache Flush Inhibit" start="32" end="32" type="uint">
543      <value name="Flushed" value="0" />
544      <value name="Not Flushed" value="1" />
545    </field>
546    <field name="Stall At Pixel Scoreboard" start="33" end="33" type="bool" />
547    <field name="Destination Address Type" start="34" end="34" type="uint" prefix="DAT">
548      <value name="PGTT" value="0" />
549      <value name="GGTT" value="1" />
550    </field>
551    <field name="Address" start="35" end="63" type="address" />
552    <field name="Immediate Data" start="64" end="127" type="uint" />
553  </instruction>
554  <instruction name="STATE_BASE_ADDRESS" bias="2" length="8" engine="render">
555    <field name="DWord Length" start="0" end="7" type="uint" default="6" />
556    <field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="1" />
557    <field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
558    <field name="Command SubType" start="27" end="28" type="uint" default="0" />
559    <field name="Command Type" start="29" end="31" type="uint" default="3" />
560    <field name="General State Base Address Modify Enable" start="32" end="32" type="bool" />
561    <field name="General State Base Address" start="44" end="63" type="address" />
562    <field name="Surface State Base Address Modify Enable" start="64" end="64" type="bool" />
563    <field name="Surface State Base Address" start="76" end="95" type="address" />
564    <field name="Indirect Object Base Address Modify Enable" start="96" end="96" type="bool" />
565    <field name="Indirect Object Base Address" start="108" end="127" type="address" />
566    <field name="Instruction Base Address Modify Enable" start="128" end="128" type="bool" />
567    <field name="Instruction Base Address" start="140" end="159" type="address" />
568    <field name="General State Access Upper Bound Modify Enable" start="160" end="160" type="bool" />
569    <field name="General State Access Upper Bound" start="172" end="191" type="address" />
570    <field name="Indirect Object Access Upper Bound Modify Enable" start="192" end="192" type="bool" />
571    <field name="Indirect Object Access Upper Bound" start="204" end="223" type="address" />
572    <field name="Instruction Access Upper Bound Modify Enable" start="224" end="224" type="bool" />
573    <field name="Instruction Access Upper Bound" start="236" end="255" type="address" />
574  </instruction>
575  <instruction name="XY_COLOR_BLT" bias="2" length="6" engine="render">
576    <field name="DWord Length" start="0" end="7" type="uint" default="4" />
577    <field name="Tiling Enable" start="11" end="11" type="bool" />
578    <field name="32bpp Byte Mask" start="20" end="21" type="uint" />
579    <field name="2D Command Opcode" start="22" end="28" type="uint" default="80" />
580    <field name="Command Type" start="29" end="31" type="uint" default="2" />
581    <field name="Destination Pitch" start="32" end="47" type="int" />
582    <field name="Raster Operation" start="48" end="55" type="uint" />
583    <field name="Color Depth" start="56" end="58" type="uint" prefix="COLOR_DEPTH">
584      <value name="8 bit" value="0" />
585      <value name="565" value="1" />
586      <value name="1555" value="2" />
587      <value name="32 bit" value="3" />
588    </field>
589    <field name="Clipping Enabled" start="62" end="62" type="bool" />
590    <field name="Destination X1 Coordinate" start="64" end="79" type="int" />
591    <field name="Destination Y1 Coordinate" start="80" end="95" type="int" />
592    <field name="Destination X2 Coordinate" start="96" end="111" type="int" />
593    <field name="Destination Y2 Coordinate" start="112" end="127" type="int" />
594    <field name="Destination Base Address" start="128" end="159" type="address" />
595    <field name="Solid Pattern Color" start="160" end="191" type="int" />
596  </instruction>
597  <instruction name="XY_SETUP_BLT" bias="2" length="8" engine="blitter">
598    <field name="DWord Length" start="0" end="7" type="uint" default="6" />
599    <field name="Tiling Enable" start="11" end="11" type="bool" />
600    <field name="32bpp Byte Mask" start="20" end="21" type="uint" />
601    <field name="2D Command Opcode" start="22" end="28" type="uint" default="1" />
602    <field name="Command Type" start="29" end="31" type="uint" default="2" />
603    <field name="Destination Pitch" start="32" end="47" type="int" />
604    <field name="Raster Operation" start="48" end="55" type="uint" />
605    <field name="Color Depth" start="56" end="57" type="uint" prefix="COLOR_DEPTH">
606      <value name="8 bit" value="0" />
607      <value name="565" value="1" />
608      <value name="1555" value="2" />
609      <value name="32 bit" value="3" />
610    </field>
611    <field name="Mono Source Transparency Mode" start="60" end="60" type="bool" />
612    <field name="Clipping Enabled" start="62" end="62" type="bool" />
613    <field name="ClipRect X1 Coordinate" start="64" end="79" type="int" />
614    <field name="ClipRect Y1 Coordinate" start="80" end="95" type="int" />
615    <field name="ClipRect X2 Coordinate" start="96" end="111" type="int" />
616    <field name="ClipRect Y2 Coordinate" start="112" end="127" type="int" />
617    <field name="Destination Base Address" start="128" end="159" type="address" />
618    <field name="Background Color" start="160" end="191" type="uint" />
619    <field name="Foreground Color" start="192" end="223" type="uint" />
620    <field name="Pattern Base Address" start="224" end="255" type="uint" />
621  </instruction>
622  <instruction name="XY_SRC_COPY_BLT" bias="2" length="8" engine="render">
623    <field name="DWord Length" start="0" end="7" type="uint" default="6" />
624    <field name="Destination Tiling Enable" start="11" end="11" type="bool" />
625    <field name="Source Tiling Enable" start="15" end="15" type="bool" />
626    <field name="32bpp Byte Mask" start="20" end="21" type="uint" />
627    <field name="2D Command Opcode" start="22" end="28" type="uint" default="83" />
628    <field name="Command Type" start="29" end="31" type="uint" default="2" />
629    <field name="Destination Pitch" start="32" end="47" type="int" />
630    <field name="Raster Operation" start="48" end="55" type="uint" />
631    <field name="Color Depth" start="56" end="58" type="uint" prefix="COLOR_DEPTH">
632      <value name="8 bit" value="0" />
633      <value name="565" value="1" />
634      <value name="1555" value="2" />
635      <value name="32 bit" value="3" />
636    </field>
637    <field name="Clipping Enabled" start="62" end="62" type="bool" />
638    <field name="Destination X1 Coordinate" start="64" end="79" type="int" />
639    <field name="Destination Y1 Coordinate" start="80" end="95" type="int" />
640    <field name="Destination X2 Coordinate" start="96" end="111" type="int" />
641    <field name="Destination Y2 Coordinate" start="112" end="127" type="int" />
642    <field name="Destination Base Address" start="128" end="159" type="address" />
643    <field name="Source X1 Coordinate" start="160" end="175" type="int" />
644    <field name="Source Y1 Coordinate" start="176" end="191" type="int" />
645    <field name="Source Pitch" start="192" end="207" type="int" />
646    <field name="Source Base Address" start="224" end="255" type="address" />
647  </instruction>
648</genxml>
649