Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
5564 serge 1
#ifndef GEN_RENDER_3D_XML
2
#define GEN_RENDER_3D_XML
3
 
4
/* Autogenerated file, DO NOT EDIT manually!
5
 
6
This file was generated by the rules-ng-ng headergen tool in this git repository:
7
https://github.com/olvaffe/envytools/
8
git clone https://github.com/olvaffe/envytools.git
9
 
10
Copyright (C) 2014-2015 by the following authors:
11
- Chia-I Wu  (olv)
12
 
13
Permission is hereby granted, free of charge, to any person obtaining
14
a copy of this software and associated documentation files (the
15
"Software"), to deal in the Software without restriction, including
16
without limitation the rights to use, copy, modify, merge, publish,
17
distribute, sublicense, and/or sell copies of the Software, and to
18
permit persons to whom the Software is furnished to do so, subject to
19
the following conditions:
20
 
21
The above copyright notice and this permission notice (including the
22
next paragraph) shall be included in all copies or substantial
23
portions of the Software.
24
 
25
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
26
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
27
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
28
IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
29
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
30
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
31
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32
*/
33
 
34
 
35
enum gen_prim_type {
36
    GEN6_3DPRIM_POINTLIST				      = 0x1,
37
    GEN6_3DPRIM_LINELIST				      = 0x2,
38
    GEN6_3DPRIM_LINESTRIP				      = 0x3,
39
    GEN6_3DPRIM_TRILIST					      = 0x4,
40
    GEN6_3DPRIM_TRISTRIP				      = 0x5,
41
    GEN6_3DPRIM_TRIFAN					      = 0x6,
42
    GEN6_3DPRIM_QUADLIST				      = 0x7,
43
    GEN6_3DPRIM_QUADSTRIP				      = 0x8,
44
    GEN6_3DPRIM_LINELIST_ADJ				      = 0x9,
45
    GEN6_3DPRIM_LINESTRIP_ADJ				      = 0xa,
46
    GEN6_3DPRIM_TRILIST_ADJ				      = 0xb,
47
    GEN6_3DPRIM_TRISTRIP_ADJ				      = 0xc,
48
    GEN6_3DPRIM_TRISTRIP_REVERSE			      = 0xd,
49
    GEN6_3DPRIM_POLYGON					      = 0xe,
50
    GEN6_3DPRIM_RECTLIST				      = 0xf,
51
    GEN6_3DPRIM_LINELOOP				      = 0x10,
52
    GEN6_3DPRIM_POINTLIST_BF				      = 0x11,
53
    GEN6_3DPRIM_LINESTRIP_CONT				      = 0x12,
54
    GEN6_3DPRIM_LINESTRIP_BF				      = 0x13,
55
    GEN6_3DPRIM_LINESTRIP_CONT_BF			      = 0x14,
56
    GEN6_3DPRIM_TRIFAN_NOSTIPPLE			      = 0x16,
57
    GEN7_3DPRIM_PATCHLIST_1				      = 0x20,
58
    GEN7_3DPRIM_PATCHLIST_2				      = 0x21,
59
    GEN7_3DPRIM_PATCHLIST_3				      = 0x22,
60
    GEN7_3DPRIM_PATCHLIST_4				      = 0x23,
61
    GEN7_3DPRIM_PATCHLIST_5				      = 0x24,
62
    GEN7_3DPRIM_PATCHLIST_6				      = 0x25,
63
    GEN7_3DPRIM_PATCHLIST_7				      = 0x26,
64
    GEN7_3DPRIM_PATCHLIST_8				      = 0x27,
65
    GEN7_3DPRIM_PATCHLIST_9				      = 0x28,
66
    GEN7_3DPRIM_PATCHLIST_10				      = 0x29,
67
    GEN7_3DPRIM_PATCHLIST_11				      = 0x2a,
68
    GEN7_3DPRIM_PATCHLIST_12				      = 0x2b,
69
    GEN7_3DPRIM_PATCHLIST_13				      = 0x2c,
70
    GEN7_3DPRIM_PATCHLIST_14				      = 0x2d,
71
    GEN7_3DPRIM_PATCHLIST_15				      = 0x2e,
72
    GEN7_3DPRIM_PATCHLIST_16				      = 0x2f,
73
    GEN7_3DPRIM_PATCHLIST_17				      = 0x30,
74
    GEN7_3DPRIM_PATCHLIST_18				      = 0x31,
75
    GEN7_3DPRIM_PATCHLIST_19				      = 0x32,
76
    GEN7_3DPRIM_PATCHLIST_20				      = 0x33,
77
    GEN7_3DPRIM_PATCHLIST_21				      = 0x34,
78
    GEN7_3DPRIM_PATCHLIST_22				      = 0x35,
79
    GEN7_3DPRIM_PATCHLIST_23				      = 0x36,
80
    GEN7_3DPRIM_PATCHLIST_24				      = 0x37,
81
    GEN7_3DPRIM_PATCHLIST_25				      = 0x38,
82
    GEN7_3DPRIM_PATCHLIST_26				      = 0x39,
83
    GEN7_3DPRIM_PATCHLIST_27				      = 0x3a,
84
    GEN7_3DPRIM_PATCHLIST_28				      = 0x3b,
85
    GEN7_3DPRIM_PATCHLIST_29				      = 0x3c,
86
    GEN7_3DPRIM_PATCHLIST_30				      = 0x3d,
87
    GEN7_3DPRIM_PATCHLIST_31				      = 0x3e,
88
    GEN7_3DPRIM_PATCHLIST_32				      = 0x3f,
89
};
90
 
91
enum gen_state_alignment {
92
    GEN6_ALIGNMENT_COLOR_CALC_STATE			      = 0x40,
93
    GEN6_ALIGNMENT_DEPTH_STENCIL_STATE			      = 0x40,
94
    GEN6_ALIGNMENT_BLEND_STATE				      = 0x40,
95
    GEN6_ALIGNMENT_CLIP_VIEWPORT			      = 0x20,
96
    GEN6_ALIGNMENT_SF_VIEWPORT				      = 0x20,
97
    GEN7_ALIGNMENT_SF_CLIP_VIEWPORT			      = 0x40,
98
    GEN6_ALIGNMENT_CC_VIEWPORT				      = 0x20,
99
    GEN6_ALIGNMENT_SCISSOR_RECT				      = 0x20,
100
    GEN6_ALIGNMENT_BINDING_TABLE_STATE			      = 0x20,
101
    GEN6_ALIGNMENT_SAMPLER_BORDER_COLOR_STATE		      = 0x20,
102
    GEN8_ALIGNMENT_SAMPLER_BORDER_COLOR_STATE		      = 0x40,
103
    GEN6_ALIGNMENT_SAMPLER_STATE			      = 0x20,
104
    GEN6_ALIGNMENT_SURFACE_STATE			      = 0x20,
105
    GEN8_ALIGNMENT_SURFACE_STATE			      = 0x40,
106
};
107
 
108
enum gen_vf_component {
109
    GEN6_VFCOMP_NOSTORE					      = 0x0,
110
    GEN6_VFCOMP_STORE_SRC				      = 0x1,
111
    GEN6_VFCOMP_STORE_0					      = 0x2,
112
    GEN6_VFCOMP_STORE_1_FP				      = 0x3,
113
    GEN6_VFCOMP_STORE_1_INT				      = 0x4,
114
    GEN6_VFCOMP_STORE_VID				      = 0x5,
115
    GEN6_VFCOMP_STORE_IID				      = 0x6,
116
};
117
 
118
enum gen_depth_format {
119
    GEN6_ZFORMAT_D32_FLOAT_S8X24_UINT			      = 0x0,
120
    GEN6_ZFORMAT_D32_FLOAT				      = 0x1,
121
    GEN6_ZFORMAT_D24_UNORM_S8_UINT			      = 0x2,
122
    GEN6_ZFORMAT_D24_UNORM_X8_UINT			      = 0x3,
123
    GEN6_ZFORMAT_D16_UNORM				      = 0x5,
124
};
125
 
126
#define GEN6_INTERP_NONPERSPECTIVE_SAMPLE			(0x1 << 5)
127
#define GEN6_INTERP_NONPERSPECTIVE_CENTROID			(0x1 << 4)
128
#define GEN6_INTERP_NONPERSPECTIVE_PIXEL			(0x1 << 3)
129
#define GEN6_INTERP_PERSPECTIVE_SAMPLE				(0x1 << 2)
130
#define GEN6_INTERP_PERSPECTIVE_CENTROID			(0x1 << 1)
131
#define GEN6_INTERP_PERSPECTIVE_PIXEL				(0x1 << 0)
132
#define GEN6_PS_DISPATCH_32					(0x1 << 2)
133
#define GEN6_PS_DISPATCH_16					(0x1 << 1)
134
#define GEN6_PS_DISPATCH_8					(0x1 << 0)
135
#define GEN6_THREADDISP_SPF					(0x1 << 31)
136
#define GEN6_THREADDISP_VME					(0x1 << 30)
137
#define GEN6_THREADDISP_SAMPLER_COUNT__MASK			0x38000000
138
#define GEN6_THREADDISP_SAMPLER_COUNT__SHIFT			27
139
#define GEN7_THREADDISP_DENORMAL__MASK				0x04000000
140
#define GEN7_THREADDISP_DENORMAL__SHIFT				26
141
#define GEN7_THREADDISP_DENORMAL_FTZ				(0x0 << 26)
142
#define GEN7_THREADDISP_DENORMAL_RET				(0x1 << 26)
143
#define GEN6_THREADDISP_BINDING_TABLE_SIZE__MASK		0x03fc0000
144
#define GEN6_THREADDISP_BINDING_TABLE_SIZE__SHIFT		18
145
#define GEN6_THREADDISP_PRIORITY_HIGH				(0x1 << 17)
146
#define GEN6_THREADDISP_FP_MODE_ALT				(0x1 << 16)
147
#define GEN7_ROUNDING_MODE__MASK				0x0000c000
148
#define GEN7_ROUNDING_MODE__SHIFT				14
149
#define GEN7_ROUNDING_MODE_RTNE					(0x0 << 14)
150
#define GEN7_ROUNDING_MODE_RU					(0x1 << 14)
151
#define GEN7_ROUNDING_MODE_RD					(0x2 << 14)
152
#define GEN7_ROUNDING_MODE_RTZ					(0x3 << 14)
153
#define GEN6_THREADDISP_ILLEGAL_CODE_EXCEPTION			(0x1 << 13)
154
#define GEN75_THREADDISP_ACCESS_UAV				(0x1 << 12)
155
#define GEN6_THREADDISP_MASK_STACK_EXCEPTION			(0x1 << 11)
156
#define GEN6_THREADDISP_SOFTWARE_EXCEPTION			(0x1 << 7)
157
#define GEN6_THREADSCRATCH_ADDR__MASK				0xfffffc00
158
#define GEN6_THREADSCRATCH_ADDR__SHIFT				10
159
#define GEN6_THREADSCRATCH_ADDR__SHR				10
160
#define GEN6_THREADSCRATCH_SPACE_PER_THREAD__MASK		0x0000000f
161
#define GEN6_THREADSCRATCH_SPACE_PER_THREAD__SHIFT		0
162
#define GEN6_3DSTATE_VF_STATISTICS__SIZE			1
163
 
164
#define GEN6_VF_STATS_DW0_ENABLE				(0x1 << 0)
165
 
166
#define GEN6_3DSTATE_BINDING_TABLE_POINTERS__SIZE		4
167
 
168
#define GEN6_BINDING_TABLE_PTR_DW0_PS_CHANGED			(0x1 << 12)
169
#define GEN6_BINDING_TABLE_PTR_DW0_GS_CHANGED			(0x1 << 9)
170
#define GEN6_BINDING_TABLE_PTR_DW0_VS_CHANGED			(0x1 << 8)
171
 
172
 
173
 
174
 
175
#define GEN6_3DSTATE_SAMPLER_STATE_POINTERS__SIZE		4
176
 
177
#define GEN6_SAMPLER_PTR_DW0_PS_CHANGED				(0x1 << 12)
178
#define GEN6_SAMPLER_PTR_DW0_GS_CHANGED				(0x1 << 9)
179
#define GEN6_SAMPLER_PTR_DW0_VS_CHANGED				(0x1 << 8)
180
 
181
#define GEN6_SAMPLER_PTR_DW1_VS_ADDR__MASK			0xffffffe0
182
#define GEN6_SAMPLER_PTR_DW1_VS_ADDR__SHIFT			5
183
#define GEN6_SAMPLER_PTR_DW1_VS_ADDR__SHR			5
184
 
185
#define GEN6_SAMPLER_PTR_DW2_GS_ADDR__MASK			0xffffffe0
186
#define GEN6_SAMPLER_PTR_DW2_GS_ADDR__SHIFT			5
187
#define GEN6_SAMPLER_PTR_DW2_GS_ADDR__SHR			5
188
 
189
#define GEN6_SAMPLER_PTR_DW3_PS_ADDR__MASK			0xffffffe0
190
#define GEN6_SAMPLER_PTR_DW3_PS_ADDR__SHIFT			5
191
#define GEN6_SAMPLER_PTR_DW3_PS_ADDR__SHR			5
192
 
193
#define GEN6_3DSTATE_URB__SIZE					3
194
 
195
 
196
#define GEN6_URB_DW1_VS_ENTRY_SIZE__MASK			0x00ff0000
197
#define GEN6_URB_DW1_VS_ENTRY_SIZE__SHIFT			16
198
#define GEN6_URB_DW1_VS_ENTRY_COUNT__MASK			0x0000ffff
199
#define GEN6_URB_DW1_VS_ENTRY_COUNT__SHIFT			0
200
#define GEN6_URB_DW1_VS_ENTRY_COUNT__ALIGN			4
201
 
202
#define GEN6_URB_DW2_GS_ENTRY_COUNT__MASK			0x0003ff00
203
#define GEN6_URB_DW2_GS_ENTRY_COUNT__SHIFT			8
204
#define GEN6_URB_DW2_GS_ENTRY_COUNT__ALIGN			4
205
#define GEN6_URB_DW2_GS_ENTRY_SIZE__MASK			0x00000007
206
#define GEN6_URB_DW2_GS_ENTRY_SIZE__SHIFT			0
207
 
208
#define GEN7_3DSTATE_URB_ANY__SIZE				2
209
 
210
 
211
#define GEN7_URB_DW1_OFFSET__MASK				0x3e000000
212
#define GEN7_URB_DW1_OFFSET__SHIFT				25
213
#define GEN7_URB_DW1_ENTRY_SIZE__MASK				0x01ff0000
214
#define GEN7_URB_DW1_ENTRY_SIZE__SHIFT				16
215
#define GEN7_URB_DW1_ENTRY_COUNT__MASK				0x0000ffff
216
#define GEN7_URB_DW1_ENTRY_COUNT__SHIFT				0
217
 
218
#define GEN7_3DSTATE_PUSH_CONSTANT_ALLOC_ANY__SIZE		2
219
 
220
 
221
#define GEN7_PCB_ALLOC_DW1_OFFSET__MASK				0x000f0000
222
#define GEN7_PCB_ALLOC_DW1_OFFSET__SHIFT			16
223
#define GEN7_PCB_ALLOC_DW1_SIZE__MASK				0x0000001f
224
#define GEN7_PCB_ALLOC_DW1_SIZE__SHIFT				0
225
 
226
#define GEN75_PCB_ALLOC_DW1_OFFSET__MASK			0x001f0000
227
#define GEN75_PCB_ALLOC_DW1_OFFSET__SHIFT			16
228
#define GEN75_PCB_ALLOC_DW1_SIZE__MASK				0x0000003f
229
#define GEN75_PCB_ALLOC_DW1_SIZE__SHIFT				0
230
 
231
#define GEN6_3DSTATE_VERTEX_BUFFERS__SIZE			133
232
 
233
 
234
 
235
#define GEN6_VB_DW0_INDEX__MASK					0xfc000000
236
#define GEN6_VB_DW0_INDEX__SHIFT				26
237
#define GEN8_VB_DW0_MOCS__MASK					0x007f0000
238
#define GEN8_VB_DW0_MOCS__SHIFT					16
239
#define GEN6_VB_DW0_ACCESS__MASK				0x00100000
240
#define GEN6_VB_DW0_ACCESS__SHIFT				20
241
#define GEN6_VB_DW0_ACCESS_VERTEXDATA				(0x0 << 20)
242
#define GEN6_VB_DW0_ACCESS_INSTANCEDATA				(0x1 << 20)
243
#define GEN6_VB_DW0_MOCS__MASK					0x000f0000
244
#define GEN6_VB_DW0_MOCS__SHIFT					16
245
#define GEN7_VB_DW0_ADDR_MODIFIED				(0x1 << 14)
246
#define GEN6_VB_DW0_IS_NULL					(0x1 << 13)
247
#define GEN6_VB_DW0_CACHE_INVALIDATE				(0x1 << 12)
248
#define GEN6_VB_DW0_PITCH__MASK					0x00000fff
249
#define GEN6_VB_DW0_PITCH__SHIFT				0
250
 
251
 
252
 
253
 
254
 
255
 
256
 
257
#define GEN6_3DSTATE_VERTEX_ELEMENTS__SIZE			69
258
 
259
 
260
 
261
#define GEN6_VE_DW0_VB_INDEX__MASK				0xfc000000
262
#define GEN6_VE_DW0_VB_INDEX__SHIFT				26
263
#define GEN6_VE_DW0_VALID					(0x1 << 25)
264
#define GEN6_VE_DW0_FORMAT__MASK				0x01ff0000
265
#define GEN6_VE_DW0_FORMAT__SHIFT				16
266
#define GEN6_VE_DW0_EDGE_FLAG_ENABLE				(0x1 << 15)
267
#define GEN6_VE_DW0_VB_OFFSET__MASK				0x000007ff
268
#define GEN6_VE_DW0_VB_OFFSET__SHIFT				0
269
#define GEN75_VE_DW0_VB_OFFSET__MASK				0x00000fff
270
#define GEN75_VE_DW0_VB_OFFSET__SHIFT				0
271
 
272
#define GEN6_VE_DW1_COMP0__MASK					0x70000000
273
#define GEN6_VE_DW1_COMP0__SHIFT				28
274
#define GEN6_VE_DW1_COMP1__MASK					0x07000000
275
#define GEN6_VE_DW1_COMP1__SHIFT				24
276
#define GEN6_VE_DW1_COMP2__MASK					0x00700000
277
#define GEN6_VE_DW1_COMP2__SHIFT				20
278
#define GEN6_VE_DW1_COMP3__MASK					0x00070000
279
#define GEN6_VE_DW1_COMP3__SHIFT				16
280
 
281
#define GEN6_3DSTATE_INDEX_BUFFER__SIZE				5
282
 
283
#define GEN6_IB_DW0_MOCS__MASK					0x0000f000
284
#define GEN6_IB_DW0_MOCS__SHIFT					12
285
#define GEN6_IB_DW0_CUT_INDEX_ENABLE				(0x1 << 10)
286
#define GEN6_IB_DW0_FORMAT__MASK				0x00000300
287
#define GEN6_IB_DW0_FORMAT__SHIFT				8
288
#define GEN6_IB_DW0_FORMAT_BYTE					(0x0 << 8)
289
#define GEN6_IB_DW0_FORMAT_WORD					(0x1 << 8)
290
#define GEN6_IB_DW0_FORMAT_DWORD				(0x2 << 8)
291
 
292
 
293
 
294
 
295
 
296
#define GEN8_IB_DW1_FORMAT__MASK				0x00000300
297
#define GEN8_IB_DW1_FORMAT__SHIFT				8
298
#define GEN8_IB_DW1_FORMAT_BYTE					(0x0 << 8)
299
#define GEN8_IB_DW1_FORMAT_WORD					(0x1 << 8)
300
#define GEN8_IB_DW1_FORMAT_DWORD				(0x2 << 8)
301
#define GEN8_IB_DW1_MOCS__MASK					0x0000007f
302
#define GEN8_IB_DW1_MOCS__SHIFT					0
303
 
304
 
305
 
306
 
307
#define GEN75_3DSTATE_VF__SIZE					2
308
 
309
#define GEN75_VF_DW0_CUT_INDEX_ENABLE				(0x1 << 8)
310
 
311
 
312
#define GEN8_3DSTATE_VF_INSTANCING__SIZE			3
313
 
314
 
315
#define GEN8_INSTANCING_DW1_ENABLE				(0x1 << 8)
316
#define GEN8_INSTANCING_DW1_VB_INDEX__MASK			0x0000003f
317
#define GEN8_INSTANCING_DW1_VB_INDEX__SHIFT			0
318
 
319
 
320
#define GEN8_3DSTATE_VF_SGVS__SIZE				2
321
 
322
 
323
#define GEN8_SGVS_DW1_IID_ENABLE				(0x1 << 31)
324
#define GEN8_SGVS_DW1_IID_VE_COMP__MASK				0x60000000
325
#define GEN8_SGVS_DW1_IID_VE_COMP__SHIFT			29
326
#define GEN8_SGVS_DW1_IID_VE_INDEX__MASK			0x003f0000
327
#define GEN8_SGVS_DW1_IID_VE_INDEX__SHIFT			16
328
#define GEN8_SGVS_DW1_VID_ENABLE				(0x1 << 15)
329
#define GEN8_SGVS_DW1_VID_VE_COMP__MASK				0x00006000
330
#define GEN8_SGVS_DW1_VID_VE_COMP__SHIFT			13
331
#define GEN8_SGVS_DW1_VID_VE_INDEX__MASK			0x0000003f
332
#define GEN8_SGVS_DW1_VID_VE_INDEX__SHIFT			0
333
 
334
#define GEN8_3DSTATE_VF_TOPOLOGY__SIZE				2
335
 
336
 
337
#define GEN8_TOPOLOGY_DW1_TYPE__MASK				0x0000003f
338
#define GEN8_TOPOLOGY_DW1_TYPE__SHIFT				0
339
 
340
#define GEN6_3DSTATE_VIEWPORT_STATE_POINTERS__SIZE		4
341
 
342
#define GEN6_VP_PTR_DW0_CC_CHANGED				(0x1 << 12)
343
#define GEN6_VP_PTR_DW0_SF_CHANGED				(0x1 << 11)
344
#define GEN6_VP_PTR_DW0_CLIP_CHANGED				(0x1 << 10)
345
 
346
#define GEN6_VP_PTR_DW1_CLIP_ADDR__MASK				0xffffffe0
347
#define GEN6_VP_PTR_DW1_CLIP_ADDR__SHIFT			5
348
#define GEN6_VP_PTR_DW1_CLIP_ADDR__SHR				5
349
 
350
#define GEN6_VP_PTR_DW2_SF_ADDR__MASK				0xffffffe0
351
#define GEN6_VP_PTR_DW2_SF_ADDR__SHIFT				5
352
#define GEN6_VP_PTR_DW2_SF_ADDR__SHR				5
353
 
354
#define GEN6_VP_PTR_DW3_CC_ADDR__MASK				0xffffffe0
355
#define GEN6_VP_PTR_DW3_CC_ADDR__SHIFT				5
356
#define GEN6_VP_PTR_DW3_CC_ADDR__SHR				5
357
 
358
#define GEN6_3DSTATE_CC_STATE_POINTERS__SIZE			4
359
 
360
 
361
#define GEN6_CC_PTR_DW1_BLEND_CHANGED				(0x1 << 0)
362
#define GEN6_CC_PTR_DW1_BLEND_ADDR__MASK			0xffffffc0
363
#define GEN6_CC_PTR_DW1_BLEND_ADDR__SHIFT			6
364
#define GEN6_CC_PTR_DW1_BLEND_ADDR__SHR				6
365
 
366
#define GEN6_CC_PTR_DW2_ZS_CHANGED				(0x1 << 0)
367
#define GEN6_CC_PTR_DW2_ZS_ADDR__MASK				0xffffffc0
368
#define GEN6_CC_PTR_DW2_ZS_ADDR__SHIFT				6
369
#define GEN6_CC_PTR_DW2_ZS_ADDR__SHR				6
370
 
371
#define GEN6_CC_PTR_DW3_CC_CHANGED				(0x1 << 0)
372
#define GEN6_CC_PTR_DW3_CC_ADDR__MASK				0xffffffc0
373
#define GEN6_CC_PTR_DW3_CC_ADDR__SHIFT				6
374
#define GEN6_CC_PTR_DW3_CC_ADDR__SHR				6
375
 
376
#define GEN6_3DSTATE_SCISSOR_STATE_POINTERS__SIZE		2
377
 
378
 
379
#define GEN6_SCISSOR_PTR_DW1_ADDR__MASK				0xffffffe0
380
#define GEN6_SCISSOR_PTR_DW1_ADDR__SHIFT			5
381
#define GEN6_SCISSOR_PTR_DW1_ADDR__SHR				5
382
 
383
#define GEN7_3DSTATE_POINTERS_ANY__SIZE				2
384
 
385
 
386
 
387
#define GEN6_3DSTATE_VS__SIZE					9
388
 
389
 
390
#define GEN6_VS_DW1_KERNEL_ADDR__MASK				0xffffffc0
391
#define GEN6_VS_DW1_KERNEL_ADDR__SHIFT				6
392
#define GEN6_VS_DW1_KERNEL_ADDR__SHR				6
393
 
394
 
395
 
396
#define GEN6_VS_DW4_URB_GRF_START__MASK				0x01f00000
397
#define GEN6_VS_DW4_URB_GRF_START__SHIFT			20
398
#define GEN6_VS_DW4_URB_READ_LEN__MASK				0x0001f800
399
#define GEN6_VS_DW4_URB_READ_LEN__SHIFT				11
400
#define GEN6_VS_DW4_URB_READ_OFFSET__MASK			0x000003f0
401
#define GEN6_VS_DW4_URB_READ_OFFSET__SHIFT			4
402
 
403
#define GEN6_VS_DW5_MAX_THREADS__MASK				0xfe000000
404
#define GEN6_VS_DW5_MAX_THREADS__SHIFT				25
405
#define GEN75_VS_DW5_MAX_THREADS__MASK				0xff800000
406
#define GEN75_VS_DW5_MAX_THREADS__SHIFT				23
407
#define GEN6_VS_DW5_STATISTICS					(0x1 << 10)
408
#define GEN6_VS_DW5_CACHE_DISABLE				(0x1 << 1)
409
#define GEN6_VS_DW5_VS_ENABLE					(0x1 << 0)
410
 
411
 
412
 
413
#define GEN8_VS_DW1_KERNEL_ADDR__MASK				0xffffffc0
414
#define GEN8_VS_DW1_KERNEL_ADDR__SHIFT				6
415
#define GEN8_VS_DW1_KERNEL_ADDR__SHR				6
416
 
417
 
418
 
419
 
420
 
421
#define GEN8_VS_DW6_URB_GRF_START__MASK				0x01f00000
422
#define GEN8_VS_DW6_URB_GRF_START__SHIFT			20
423
#define GEN8_VS_DW6_URB_READ_LEN__MASK				0x0001f800
424
#define GEN8_VS_DW6_URB_READ_LEN__SHIFT				11
425
#define GEN8_VS_DW6_URB_READ_OFFSET__MASK			0x000003f0
426
#define GEN8_VS_DW6_URB_READ_OFFSET__SHIFT			4
427
 
428
#define GEN8_VS_DW7_MAX_THREADS__MASK				0xff800000
429
#define GEN8_VS_DW7_MAX_THREADS__SHIFT				23
430
#define GEN8_VS_DW7_STATISTICS					(0x1 << 10)
431
#define GEN8_VS_DW7_SIMD8_ENABLE				(0x1 << 2)
432
#define GEN8_VS_DW7_CACHE_DISABLE				(0x1 << 1)
433
#define GEN8_VS_DW7_VS_ENABLE					(0x1 << 0)
434
 
435
#define GEN8_VS_DW8_URB_WRITE_OFFSET__MASK			0x03e00000
436
#define GEN8_VS_DW8_URB_WRITE_OFFSET__SHIFT			21
437
#define GEN8_VS_DW8_URB_WRITE_LEN__MASK				0x001f0000
438
#define GEN8_VS_DW8_URB_WRITE_LEN__SHIFT			16
439
#define GEN8_VS_DW8_UCP_CLIP_ENABLES__MASK			0x0000ff00
440
#define GEN8_VS_DW8_UCP_CLIP_ENABLES__SHIFT			8
441
 
442
#define GEN7_3DSTATE_HS__SIZE					9
443
 
444
 
445
#define GEN7_HS_DW1_DISPATCH_MAX_THREADS__MASK			0x0000007f
446
#define GEN7_HS_DW1_DISPATCH_MAX_THREADS__SHIFT			0
447
#define GEN75_HS_DW1_DISPATCH_MAX_THREADS__MASK			0x000000ff
448
#define GEN75_HS_DW1_DISPATCH_MAX_THREADS__SHIFT		0
449
 
450
#define GEN7_HS_DW2_HS_ENABLE					(0x1 << 31)
451
#define GEN7_HS_DW2_STATISTICS					(0x1 << 29)
452
#define GEN7_HS_DW2_INSTANCE_COUNT__MASK			0x0000000f
453
#define GEN7_HS_DW2_INSTANCE_COUNT__SHIFT			0
454
 
455
#define GEN7_HS_DW3_KERNEL_ADDR__MASK				0xffffffc0
456
#define GEN7_HS_DW3_KERNEL_ADDR__SHIFT				6
457
#define GEN7_HS_DW3_KERNEL_ADDR__SHR				6
458
 
459
 
460
#define GEN7_HS_DW5_SPF						(0x1 << 27)
461
#define GEN7_HS_DW5_VME						(0x1 << 26)
462
#define GEN75_HS_DW5_ACCESS_UAV					(0x1 << 25)
463
#define GEN7_HS_DW5_INCLUDE_VERTEX_HANDLES			(0x1 << 24)
464
#define GEN7_HS_DW5_URB_GRF_START__MASK				0x00f80000
465
#define GEN7_HS_DW5_URB_GRF_START__SHIFT			19
466
#define GEN7_HS_DW5_URB_READ_LEN__MASK				0x0001f800
467
#define GEN7_HS_DW5_URB_READ_LEN__SHIFT				11
468
#define GEN7_HS_DW5_URB_READ_OFFSET__MASK			0x000003f0
469
#define GEN7_HS_DW5_URB_READ_OFFSET__SHIFT			4
470
 
471
#define GEN7_HS_DW6_URB_SEMAPHORE_ADDR__MASK			0x00000fff
472
#define GEN7_HS_DW6_URB_SEMAPHORE_ADDR__SHIFT			0
473
#define GEN7_HS_DW6_URB_SEMAPHORE_ADDR__SHR			6
474
#define GEN75_HS_DW6_URB_SEMAPHORE_ADDR__MASK			0x00001fff
475
#define GEN75_HS_DW6_URB_SEMAPHORE_ADDR__SHIFT			0
476
#define GEN75_HS_DW6_URB_SEMAPHORE_ADDR__SHR			6
477
 
478
 
479
 
480
#define GEN8_HS_DW1_DISPATCH_MAX_THREADS__MASK			0x000000ff
481
#define GEN8_HS_DW1_DISPATCH_MAX_THREADS__SHIFT			0
482
 
483
#define GEN8_HS_DW2_HS_ENABLE					(0x1 << 31)
484
#define GEN8_HS_DW2_STATISTICS					(0x1 << 29)
485
#define GEN8_HS_DW2_INSTANCE_COUNT__MASK			0x0000000f
486
#define GEN8_HS_DW2_INSTANCE_COUNT__SHIFT			0
487
 
488
#define GEN8_HS_DW3_KERNEL_ADDR__MASK				0xffffffc0
489
#define GEN8_HS_DW3_KERNEL_ADDR__SHIFT				6
490
#define GEN8_HS_DW3_KERNEL_ADDR__SHR				6
491
 
492
 
493
 
494
 
495
#define GEN8_HS_DW7_SPF						(0x1 << 27)
496
#define GEN8_HS_DW7_VME						(0x1 << 26)
497
#define GEN8_HS_DW7_ACCESS_UAV					(0x1 << 25)
498
#define GEN8_HS_DW7_INCLUDE_VERTEX_HANDLES			(0x1 << 24)
499
#define GEN8_HS_DW7_URB_GRF_START__MASK				0x00f80000
500
#define GEN8_HS_DW7_URB_GRF_START__SHIFT			19
501
#define GEN8_HS_DW7_URB_READ_LEN__MASK				0x0001f800
502
#define GEN8_HS_DW7_URB_READ_LEN__SHIFT				11
503
#define GEN8_HS_DW7_URB_READ_OFFSET__MASK			0x000003f0
504
#define GEN8_HS_DW7_URB_READ_OFFSET__SHIFT			4
505
 
506
#define GEN8_HS_DW8_URB_SEMAPHORE_ADDR__MASK			0x00001fff
507
#define GEN8_HS_DW8_URB_SEMAPHORE_ADDR__SHIFT			0
508
#define GEN8_HS_DW8_URB_SEMAPHORE_ADDR__SHR			6
509
 
510
#define GEN7_3DSTATE_TE__SIZE					4
511
 
512
 
513
#define GEN7_TE_DW1_PARTITIONING__MASK				0x00003000
514
#define GEN7_TE_DW1_PARTITIONING__SHIFT				12
515
#define GEN7_TE_DW1_PARTITIONING_INTEGER			(0x0 << 12)
516
#define GEN7_TE_DW1_PARTITIONING_ODD_FRACTIONAL			(0x1 << 12)
517
#define GEN7_TE_DW1_PARTITIONING_EVEN_FRACTIONAL		(0x2 << 12)
518
#define GEN7_TE_DW1_OUTPUT_TOPO__MASK				0x00000300
519
#define GEN7_TE_DW1_OUTPUT_TOPO__SHIFT				8
520
#define GEN7_TE_DW1_OUTPUT_TOPO_POINT				(0x0 << 8)
521
#define GEN7_TE_DW1_OUTPUT_TOPO_LINE				(0x1 << 8)
522
#define GEN7_TE_DW1_OUTPUT_TOPO_TRI_CW				(0x2 << 8)
523
#define GEN7_TE_DW1_OUTPUT_TOPO_TRI_CCW				(0x3 << 8)
524
#define GEN7_TE_DW1_DOMAIN__MASK				0x00000030
525
#define GEN7_TE_DW1_DOMAIN__SHIFT				4
526
#define GEN7_TE_DW1_DOMAIN_QUAD					(0x0 << 4)
527
#define GEN7_TE_DW1_DOMAIN_TRI					(0x1 << 4)
528
#define GEN7_TE_DW1_DOMAIN_ISOLINE				(0x2 << 4)
529
#define GEN7_TE_DW1_MODE__MASK					0x00000006
530
#define GEN7_TE_DW1_MODE__SHIFT					1
531
#define GEN7_TE_DW1_MODE_HW					(0x0 << 1)
532
#define GEN7_TE_DW1_MODE_SW					(0x1 << 1)
533
#define GEN7_TE_DW1_TE_ENABLE					(0x1 << 0)
534
 
535
 
536
 
537
#define GEN7_3DSTATE_DS__SIZE					11
538
 
539
 
540
#define GEN7_DS_DW1_KERNEL_ADDR__MASK				0xffffffc0
541
#define GEN7_DS_DW1_KERNEL_ADDR__SHIFT				6
542
#define GEN7_DS_DW1_KERNEL_ADDR__SHR				6
543
 
544
 
545
 
546
#define GEN7_DS_DW4_URB_GRF_START__MASK				0x01f00000
547
#define GEN7_DS_DW4_URB_GRF_START__SHIFT			20
548
#define GEN7_DS_DW4_URB_READ_LEN__MASK				0x0003f800
549
#define GEN7_DS_DW4_URB_READ_LEN__SHIFT				11
550
#define GEN7_DS_DW4_URB_READ_OFFSET__MASK			0x000003f0
551
#define GEN7_DS_DW4_URB_READ_OFFSET__SHIFT			4
552
 
553
#define GEN7_DS_DW5_MAX_THREADS__MASK				0xfe000000
554
#define GEN7_DS_DW5_MAX_THREADS__SHIFT				25
555
#define GEN75_DS_DW5_MAX_THREADS__MASK				0x3fe00000
556
#define GEN75_DS_DW5_MAX_THREADS__SHIFT				21
557
#define GEN7_DS_DW5_STATISTICS					(0x1 << 10)
558
#define GEN7_DS_DW5_COMPUTE_W					(0x1 << 2)
559
#define GEN7_DS_DW5_CACHE_DISABLE				(0x1 << 1)
560
#define GEN7_DS_DW5_DS_ENABLE					(0x1 << 0)
561
 
562
 
563
 
564
#define GEN8_DS_DW1_KERNEL_ADDR__MASK				0xffffffc0
565
#define GEN8_DS_DW1_KERNEL_ADDR__SHIFT				6
566
#define GEN8_DS_DW1_KERNEL_ADDR__SHR				6
567
 
568
 
569
 
570
 
571
 
572
#define GEN8_DS_DW6_URB_GRF_START__MASK				0x01f00000
573
#define GEN8_DS_DW6_URB_GRF_START__SHIFT			20
574
#define GEN8_DS_DW6_URB_READ_LEN__MASK				0x0003f800
575
#define GEN8_DS_DW6_URB_READ_LEN__SHIFT				11
576
#define GEN8_DS_DW6_URB_READ_OFFSET__MASK			0x000003f0
577
#define GEN8_DS_DW6_URB_READ_OFFSET__SHIFT			4
578
 
579
#define GEN8_DS_DW7_MAX_THREADS__MASK				0x3fe00000
580
#define GEN8_DS_DW7_MAX_THREADS__SHIFT				21
581
#define GEN8_DS_DW7_STATISTICS					(0x1 << 10)
582
#define GEN8_DS_DW7_COMPUTE_W					(0x1 << 2)
583
#define GEN8_DS_DW7_CACHE_DISABLE				(0x1 << 1)
584
#define GEN8_DS_DW7_DS_ENABLE					(0x1 << 0)
585
 
586
#define GEN8_DS_DW8_URB_WRITE_OFFSET__MASK			0x03e00000
587
#define GEN8_DS_DW8_URB_WRITE_OFFSET__SHIFT			21
588
#define GEN8_DS_DW8_URB_WRITE_LEN__MASK				0x001f0000
589
#define GEN8_DS_DW8_URB_WRITE_LEN__SHIFT			16
590
#define GEN8_DS_DW8_UCP_CLIP_ENABLES__MASK			0x0000ff00
591
#define GEN8_DS_DW8_UCP_CLIP_ENABLES__SHIFT			8
592
 
593
 
594
 
595
#define GEN6_3DSTATE_GS__SIZE					10
596
 
597
 
598
#define GEN6_GS_DW1_KERNEL_ADDR__MASK				0xffffffc0
599
#define GEN6_GS_DW1_KERNEL_ADDR__SHIFT				6
600
#define GEN6_GS_DW1_KERNEL_ADDR__SHR				6
601
 
602
 
603
 
604
#define GEN6_GS_DW4_URB_READ_LEN__MASK				0x0001f800
605
#define GEN6_GS_DW4_URB_READ_LEN__SHIFT				11
606
#define GEN6_GS_DW4_URB_READ_OFFSET__MASK			0x000003f0
607
#define GEN6_GS_DW4_URB_READ_OFFSET__SHIFT			4
608
#define GEN6_GS_DW4_URB_GRF_START__MASK				0x0000000f
609
#define GEN6_GS_DW4_URB_GRF_START__SHIFT			0
610
 
611
#define GEN6_GS_DW5_MAX_THREADS__MASK				0xfe000000
612
#define GEN6_GS_DW5_MAX_THREADS__SHIFT				25
613
#define GEN6_GS_DW5_STATISTICS					(0x1 << 10)
614
#define GEN6_GS_DW5_SO_STATISTICS				(0x1 << 9)
615
#define GEN6_GS_DW5_RENDER_ENABLE				(0x1 << 8)
616
 
617
#define GEN6_GS_DW6_REORDER_ENABLE				(0x1 << 30)
618
#define GEN6_GS_DW6_DISCARD_ADJACENCY				(0x1 << 29)
619
#define GEN6_GS_DW6_SVBI_PAYLOAD_ENABLE				(0x1 << 28)
620
#define GEN6_GS_DW6_SVBI_POST_INC_ENABLE			(0x1 << 27)
621
#define GEN6_GS_DW6_SVBI_POST_INC_VAL__MASK			0x03ff0000
622
#define GEN6_GS_DW6_SVBI_POST_INC_VAL__SHIFT			16
623
#define GEN6_GS_DW6_GS_ENABLE					(0x1 << 15)
624
 
625
 
626
 
627
#define GEN7_GS_DW1_KERNEL_ADDR__MASK				0xffffffc0
628
#define GEN7_GS_DW1_KERNEL_ADDR__SHIFT				6
629
#define GEN7_GS_DW1_KERNEL_ADDR__SHR				6
630
 
631
 
632
 
633
#define GEN7_GS_DW4_OUTPUT_SIZE__MASK				0x1f800000
634
#define GEN7_GS_DW4_OUTPUT_SIZE__SHIFT				23
635
#define GEN7_GS_DW4_OUTPUT_TOPO__MASK				0x007e0000
636
#define GEN7_GS_DW4_OUTPUT_TOPO__SHIFT				17
637
#define GEN7_GS_DW4_URB_READ_LEN__MASK				0x0001f800
638
#define GEN7_GS_DW4_URB_READ_LEN__SHIFT				11
639
#define GEN7_GS_DW4_INCLUDE_VERTEX_HANDLES			(0x1 << 10)
640
#define GEN7_GS_DW4_URB_READ_OFFSET__MASK			0x000003f0
641
#define GEN7_GS_DW4_URB_READ_OFFSET__SHIFT			4
642
#define GEN7_GS_DW4_URB_GRF_START__MASK				0x0000000f
643
#define GEN7_GS_DW4_URB_GRF_START__SHIFT			0
644
 
645
#define GEN7_GS_DW5_MAX_THREADS__MASK				0xfe000000
646
#define GEN7_GS_DW5_MAX_THREADS__SHIFT				25
647
#define GEN7_GS_DW5_GSCTRL__MASK				0x01000000
648
#define GEN7_GS_DW5_GSCTRL__SHIFT				24
649
#define GEN7_GS_DW5_GSCTRL_CUT					(0x0 << 24)
650
#define GEN7_GS_DW5_GSCTRL_SID					(0x1 << 24)
651
#define GEN75_GS_DW5_MAX_THREADS__MASK				0xff000000
652
#define GEN75_GS_DW5_MAX_THREADS__SHIFT				24
653
#define GEN7_GS_DW5_CONTROL_DATA_HEADER_SIZE__MASK		0x00f00000
654
#define GEN7_GS_DW5_CONTROL_DATA_HEADER_SIZE__SHIFT		20
655
#define GEN7_GS_DW5_INSTANCE_CONTROL__MASK			0x000f8000
656
#define GEN7_GS_DW5_INSTANCE_CONTROL__SHIFT			15
657
#define GEN7_GS_DW5_DEFAULT_STREAM_ID__MASK			0x00006000
658
#define GEN7_GS_DW5_DEFAULT_STREAM_ID__SHIFT			13
659
#define GEN7_GS_DW5_DISPATCH_MODE__MASK				0x00001800
660
#define GEN7_GS_DW5_DISPATCH_MODE__SHIFT			11
661
#define GEN7_GS_DW5_DISPATCH_MODE_SINGLE			(0x0 << 11)
662
#define GEN7_GS_DW5_DISPATCH_MODE_DUAL_INSTANCE			(0x1 << 11)
663
#define GEN7_GS_DW5_DISPATCH_MODE_DUAL_OBJECT			(0x2 << 11)
664
#define GEN7_GS_DW5_STATISTICS					(0x1 << 10)
665
#define GEN7_GS_DW5_INVOCATION_INCR__MASK			0x000003e0
666
#define GEN7_GS_DW5_INVOCATION_INCR__SHIFT			5
667
#define GEN7_GS_DW5_INCLUDE_PRIMITIVE_ID			(0x1 << 4)
668
#define GEN7_GS_DW5_HINT					(0x1 << 3)
669
#define GEN7_GS_DW5_REORDER_ENABLE				(0x1 << 2)
670
#define GEN75_GS_DW5_REORDER__MASK				0x00000004
671
#define GEN75_GS_DW5_REORDER__SHIFT				2
672
#define GEN75_GS_DW5_REORDER_LEADING				(0x0 << 2)
673
#define GEN75_GS_DW5_REORDER_TRAILING				(0x1 << 2)
674
#define GEN7_GS_DW5_DISCARD_ADJACENCY				(0x1 << 1)
675
#define GEN7_GS_DW5_GS_ENABLE					(0x1 << 0)
676
 
677
#define GEN75_GS_DW6_GSCTRL__MASK				0x80000000
678
#define GEN75_GS_DW6_GSCTRL__SHIFT				31
679
#define GEN75_GS_DW6_GSCTRL_CUT					(0x0 << 31)
680
#define GEN75_GS_DW6_GSCTRL_SID					(0x1 << 31)
681
#define GEN7_GS_DW6_URB_SEMAPHORE_ADDR__MASK			0x00000fff
682
#define GEN7_GS_DW6_URB_SEMAPHORE_ADDR__SHIFT			0
683
#define GEN7_GS_DW6_URB_SEMAPHORE_ADDR__SHR			6
684
#define GEN75_GS_DW6_URB_SEMAPHORE_ADDR__MASK			0x00001fff
685
#define GEN75_GS_DW6_URB_SEMAPHORE_ADDR__SHIFT			0
686
#define GEN75_GS_DW6_URB_SEMAPHORE_ADDR__SHR			6
687
 
688
 
689
 
690
#define GEN8_GS_DW1_KERNEL_ADDR__MASK				0xffffffc0
691
#define GEN8_GS_DW1_KERNEL_ADDR__SHIFT				6
692
#define GEN8_GS_DW1_KERNEL_ADDR__SHR				6
693
 
694
 
695
#define GEN8_GS_DW3_EXPECTED_VERTEX_COUNT__MASK			0x0000007f
696
#define GEN8_GS_DW3_EXPECTED_VERTEX_COUNT__SHIFT		0
697
 
698
 
699
 
700
#define GEN8_GS_DW6_OUTPUT_SIZE__MASK				0x1f800000
701
#define GEN8_GS_DW6_OUTPUT_SIZE__SHIFT				23
702
#define GEN8_GS_DW6_OUTPUT_TOPO__MASK				0x007e0000
703
#define GEN8_GS_DW6_OUTPUT_TOPO__SHIFT				17
704
#define GEN8_GS_DW6_URB_READ_LEN__MASK				0x0001f800
705
#define GEN8_GS_DW6_URB_READ_LEN__SHIFT				11
706
#define GEN8_GS_DW6_INCLUDE_VERTEX_HANDLES			(0x1 << 10)
707
#define GEN8_GS_DW6_URB_READ_OFFSET__MASK			0x000003f0
708
#define GEN8_GS_DW6_URB_READ_OFFSET__SHIFT			4
709
#define GEN8_GS_DW6_URB_GRF_START__MASK				0x0000000f
710
#define GEN8_GS_DW6_URB_GRF_START__SHIFT			0
711
 
712
#define GEN8_GS_DW7_MAX_THREADS__MASK				0xff000000
713
#define GEN8_GS_DW7_MAX_THREADS__SHIFT				24
714
#define GEN8_GS_DW7_CONTROL_DATA_HEADER_SIZE__MASK		0x00f00000
715
#define GEN8_GS_DW7_CONTROL_DATA_HEADER_SIZE__SHIFT		20
716
#define GEN8_GS_DW7_INSTANCE_CONTROL__MASK			0x000f8000
717
#define GEN8_GS_DW7_INSTANCE_CONTROL__SHIFT			15
718
#define GEN8_GS_DW7_DEFAULT_STREAM_ID__MASK			0x00006000
719
#define GEN8_GS_DW7_DEFAULT_STREAM_ID__SHIFT			13
720
#define GEN8_GS_DW7_DISPATCH_MODE__MASK				0x00001800
721
#define GEN8_GS_DW7_DISPATCH_MODE__SHIFT			11
722
#define GEN8_GS_DW7_DISPATCH_MODE_SINGLE			(0x0 << 11)
723
#define GEN8_GS_DW7_DISPATCH_MODE_DUAL_INSTANCE			(0x1 << 11)
724
#define GEN8_GS_DW7_DISPATCH_MODE_DUAL_OBJECT			(0x2 << 11)
725
#define GEN8_GS_DW7_STATISTICS					(0x1 << 10)
726
#define GEN8_GS_DW7_INVOCATION_INCR__MASK			0x000003e0
727
#define GEN8_GS_DW7_INVOCATION_INCR__SHIFT			5
728
#define GEN8_GS_DW7_INCLUDE_PRIMITIVE_ID			(0x1 << 4)
729
#define GEN8_GS_DW7_HINT					(0x1 << 3)
730
#define GEN8_GS_DW7_REORDER__MASK				0x00000004
731
#define GEN8_GS_DW7_REORDER__SHIFT				2
732
#define GEN8_GS_DW7_REORDER_LEADING				(0x0 << 2)
733
#define GEN8_GS_DW7_REORDER_TRAILING				(0x1 << 2)
734
#define GEN8_GS_DW7_DISCARD_ADJACENCY				(0x1 << 1)
735
#define GEN8_GS_DW7_GS_ENABLE					(0x1 << 0)
736
 
737
#define GEN8_GS_DW8_GSCTRL__MASK				0x80000000
738
#define GEN8_GS_DW8_GSCTRL__SHIFT				31
739
#define GEN8_GS_DW8_GSCTRL_CUT					(0x0 << 31)
740
#define GEN8_GS_DW8_GSCTRL_SID					(0x1 << 31)
741
#define GEN8_GS_DW8_URB_SEMAPHORE_ADDR__MASK			0x00001fff
742
#define GEN8_GS_DW8_URB_SEMAPHORE_ADDR__SHIFT			0
743
#define GEN8_GS_DW8_URB_SEMAPHORE_ADDR__SHR			6
744
#define GEN9_GS_DW8_MAX_THREADS__MASK				0x00001fff
745
#define GEN9_GS_DW8_MAX_THREADS__SHIFT				0
746
 
747
#define GEN8_GS_DW9_URB_WRITE_OFFSET__MASK			0x03e00000
748
#define GEN8_GS_DW9_URB_WRITE_OFFSET__SHIFT			21
749
#define GEN8_GS_DW9_URB_WRITE_LEN__MASK				0x001f0000
750
#define GEN8_GS_DW9_URB_WRITE_LEN__SHIFT			16
751
#define GEN8_GS_DW9_UCP_CLIP_ENABLES__MASK			0x0000ff00
752
#define GEN8_GS_DW9_UCP_CLIP_ENABLES__SHIFT			8
753
 
754
#define GEN7_3DSTATE_STREAMOUT__SIZE				5
755
 
756
 
757
#define GEN7_SO_DW1_SO_ENABLE					(0x1 << 31)
758
#define GEN7_SO_DW1_RENDER_DISABLE				(0x1 << 30)
759
#define GEN7_SO_DW1_RENDER_STREAM_SELECT__MASK			0x18000000
760
#define GEN7_SO_DW1_RENDER_STREAM_SELECT__SHIFT			27
761
#define GEN7_SO_DW1_REORDER__MASK				0x04000000
762
#define GEN7_SO_DW1_REORDER__SHIFT				26
763
#define GEN7_SO_DW1_REORDER_LEADING				(0x0 << 26)
764
#define GEN7_SO_DW1_REORDER_TRAILING				(0x1 << 26)
765
#define GEN7_SO_DW1_STATISTICS					(0x1 << 25)
766
#define GEN7_SO_DW1_BUFFER_ENABLES__MASK			0x00000f00
767
#define GEN7_SO_DW1_BUFFER_ENABLES__SHIFT			8
768
 
769
#define GEN7_SO_DW2_STREAM3_READ_OFFSET__MASK			0x20000000
770
#define GEN7_SO_DW2_STREAM3_READ_OFFSET__SHIFT			29
771
#define GEN7_SO_DW2_STREAM3_READ_LEN__MASK			0x1f000000
772
#define GEN7_SO_DW2_STREAM3_READ_LEN__SHIFT			24
773
#define GEN7_SO_DW2_STREAM2_READ_OFFSET__MASK			0x00200000
774
#define GEN7_SO_DW2_STREAM2_READ_OFFSET__SHIFT			21
775
#define GEN7_SO_DW2_STREAM2_READ_LEN__MASK			0x001f0000
776
#define GEN7_SO_DW2_STREAM2_READ_LEN__SHIFT			16
777
#define GEN7_SO_DW2_STREAM1_READ_OFFSET__MASK			0x00002000
778
#define GEN7_SO_DW2_STREAM1_READ_OFFSET__SHIFT			13
779
#define GEN7_SO_DW2_STREAM1_READ_LEN__MASK			0x00001f00
780
#define GEN7_SO_DW2_STREAM1_READ_LEN__SHIFT			8
781
#define GEN7_SO_DW2_STREAM0_READ_OFFSET__MASK			0x00000020
782
#define GEN7_SO_DW2_STREAM0_READ_OFFSET__SHIFT			5
783
#define GEN7_SO_DW2_STREAM0_READ_LEN__MASK			0x0000001f
784
#define GEN7_SO_DW2_STREAM0_READ_LEN__SHIFT			0
785
 
786
#define GEN8_SO_DW3_BUFFER1_PITCH__MASK				0x0fff0000
787
#define GEN8_SO_DW3_BUFFER1_PITCH__SHIFT			16
788
#define GEN8_SO_DW3_BUFFER0_PITCH__MASK				0x00000fff
789
#define GEN8_SO_DW3_BUFFER0_PITCH__SHIFT			0
790
 
791
#define GEN8_SO_DW4_BUFFER3_PITCH__MASK				0x0fff0000
792
#define GEN8_SO_DW4_BUFFER3_PITCH__SHIFT			16
793
#define GEN8_SO_DW4_BUFFER2_PITCH__MASK				0x00000fff
794
#define GEN8_SO_DW4_BUFFER2_PITCH__SHIFT			0
795
 
796
#define GEN7_3DSTATE_SO_DECL_LIST__SIZE				259
797
 
798
 
799
#define GEN7_SO_DECL_DW1_STREAM3_BUFFER_SELECTS__MASK		0x0000f000
800
#define GEN7_SO_DECL_DW1_STREAM3_BUFFER_SELECTS__SHIFT		12
801
#define GEN7_SO_DECL_DW1_STREAM2_BUFFER_SELECTS__MASK		0x00000f00
802
#define GEN7_SO_DECL_DW1_STREAM2_BUFFER_SELECTS__SHIFT		8
803
#define GEN7_SO_DECL_DW1_STREAM1_BUFFER_SELECTS__MASK		0x000000f0
804
#define GEN7_SO_DECL_DW1_STREAM1_BUFFER_SELECTS__SHIFT		4
805
#define GEN7_SO_DECL_DW1_STREAM0_BUFFER_SELECTS__MASK		0x0000000f
806
#define GEN7_SO_DECL_DW1_STREAM0_BUFFER_SELECTS__SHIFT		0
807
 
808
#define GEN7_SO_DECL_DW2_STREAM3_ENTRY_COUNT__MASK		0xff000000
809
#define GEN7_SO_DECL_DW2_STREAM3_ENTRY_COUNT__SHIFT		24
810
#define GEN7_SO_DECL_DW2_STREAM2_ENTRY_COUNT__MASK		0x00ff0000
811
#define GEN7_SO_DECL_DW2_STREAM2_ENTRY_COUNT__SHIFT		16
812
#define GEN7_SO_DECL_DW2_STREAM1_ENTRY_COUNT__MASK		0x0000ff00
813
#define GEN7_SO_DECL_DW2_STREAM1_ENTRY_COUNT__SHIFT		8
814
#define GEN7_SO_DECL_DW2_STREAM0_ENTRY_COUNT__MASK		0x000000ff
815
#define GEN7_SO_DECL_DW2_STREAM0_ENTRY_COUNT__SHIFT		0
816
 
817
#define GEN7_SO_DECL_HIGH__MASK					0xffff0000
818
#define GEN7_SO_DECL_HIGH__SHIFT				16
819
#define GEN7_SO_DECL_OUTPUT_SLOT__MASK				0x00003000
820
#define GEN7_SO_DECL_OUTPUT_SLOT__SHIFT				12
821
#define GEN7_SO_DECL_HOLE_FLAG					(0x1 << 11)
822
#define GEN7_SO_DECL_REG_INDEX__MASK				0x000003f0
823
#define GEN7_SO_DECL_REG_INDEX__SHIFT				4
824
#define GEN7_SO_DECL_COMPONENT_MASK__MASK			0x0000000f
825
#define GEN7_SO_DECL_COMPONENT_MASK__SHIFT			0
826
 
827
#define GEN7_3DSTATE_SO_BUFFER__SIZE				8
828
 
829
 
830
#define GEN8_SO_BUF_DW1_ENABLE					(0x1 << 31)
831
#define GEN7_SO_BUF_DW1_INDEX__MASK				0x60000000
832
#define GEN7_SO_BUF_DW1_INDEX__SHIFT				29
833
#define GEN7_SO_BUF_DW1_MOCS__MASK				0x1e000000
834
#define GEN7_SO_BUF_DW1_MOCS__SHIFT				25
835
#define GEN8_SO_BUF_DW1_MOCS__MASK				0x1fc00000
836
#define GEN8_SO_BUF_DW1_MOCS__SHIFT				22
837
#define GEN8_SO_BUF_DW1_OFFSET_WRITE_ENABLE			(0x1 << 21)
838
#define GEN8_SO_BUF_DW1_OFFSET_ENABLE				(0x1 << 20)
839
#define GEN7_SO_BUF_DW1_PITCH__MASK				0x00000fff
840
#define GEN7_SO_BUF_DW1_PITCH__SHIFT				0
841
 
842
#define GEN7_SO_BUF_DW2_START_ADDR__MASK			0xfffffffc
843
#define GEN7_SO_BUF_DW2_START_ADDR__SHIFT			2
844
#define GEN7_SO_BUF_DW2_START_ADDR__SHR				2
845
 
846
#define GEN7_SO_BUF_DW3_END_ADDR__MASK				0xfffffffc
847
#define GEN7_SO_BUF_DW3_END_ADDR__SHIFT				2
848
#define GEN7_SO_BUF_DW3_END_ADDR__SHR				2
849
 
850
#define GEN8_SO_BUF_DW2_ADDR__MASK				0xfffffffc
851
#define GEN8_SO_BUF_DW2_ADDR__SHIFT				2
852
#define GEN8_SO_BUF_DW2_ADDR__SHR				2
853
 
854
 
855
 
856
#define GEN8_SO_BUF_DW5_OFFSET_ADDR__MASK			0xfffffffc
857
#define GEN8_SO_BUF_DW5_OFFSET_ADDR__SHIFT			2
858
#define GEN8_SO_BUF_DW5_OFFSET_ADDR__SHR			2
859
 
860
 
861
 
862
#define GEN6_3DSTATE_CLIP__SIZE					4
863
 
864
 
865
#define GEN7_CLIP_DW1_FRONTWINDING__MASK			0x00100000
866
#define GEN7_CLIP_DW1_FRONTWINDING__SHIFT			20
867
#define GEN7_CLIP_DW1_FRONTWINDING_CW				(0x0 << 20)
868
#define GEN7_CLIP_DW1_FRONTWINDING_CCW				(0x1 << 20)
869
#define GEN7_CLIP_DW1_SUBPIXEL__MASK				0x00080000
870
#define GEN7_CLIP_DW1_SUBPIXEL__SHIFT				19
871
#define GEN7_CLIP_DW1_SUBPIXEL_8BITS				(0x0 << 19)
872
#define GEN7_CLIP_DW1_SUBPIXEL_4BITS				(0x1 << 19)
873
#define GEN7_CLIP_DW1_EARLY_CULL_ENABLE				(0x1 << 18)
874
#define GEN7_CLIP_DW1_CULLMODE__MASK				0x00030000
875
#define GEN7_CLIP_DW1_CULLMODE__SHIFT				16
876
#define GEN7_CLIP_DW1_CULLMODE_BOTH				(0x0 << 16)
877
#define GEN7_CLIP_DW1_CULLMODE_NONE				(0x1 << 16)
878
#define GEN7_CLIP_DW1_CULLMODE_FRONT				(0x2 << 16)
879
#define GEN7_CLIP_DW1_CULLMODE_BACK				(0x3 << 16)
880
#define GEN6_CLIP_DW1_STATISTICS				(0x1 << 10)
881
#define GEN6_CLIP_DW1_UCP_CULL_ENABLES__MASK			0x000000ff
882
#define GEN6_CLIP_DW1_UCP_CULL_ENABLES__SHIFT			0
883
 
884
#define GEN6_CLIP_DW2_CLIP_ENABLE				(0x1 << 31)
885
#define GEN6_CLIP_DW2_APIMODE__MASK				0x40000000
886
#define GEN6_CLIP_DW2_APIMODE__SHIFT				30
887
#define GEN6_CLIP_DW2_APIMODE_OGL				(0x0 << 30)
888
#define GEN6_CLIP_DW2_APIMODE_D3D				(0x1 << 30)
889
#define GEN6_CLIP_DW2_XY_TEST_ENABLE				(0x1 << 28)
890
#define GEN6_CLIP_DW2_Z_TEST_ENABLE				(0x1 << 27)
891
#define GEN6_CLIP_DW2_GB_TEST_ENABLE				(0x1 << 26)
892
#define GEN6_CLIP_DW2_UCP_CLIP_ENABLES__MASK			0x00ff0000
893
#define GEN6_CLIP_DW2_UCP_CLIP_ENABLES__SHIFT			16
894
#define GEN6_CLIP_DW2_CLIPMODE__MASK				0x0000e000
895
#define GEN6_CLIP_DW2_CLIPMODE__SHIFT				13
896
#define GEN6_CLIP_DW2_CLIPMODE_NORMAL				(0x0 << 13)
897
#define GEN6_CLIP_DW2_CLIPMODE_REJECT_ALL			(0x3 << 13)
898
#define GEN6_CLIP_DW2_CLIPMODE_ACCEPT_ALL			(0x4 << 13)
899
#define GEN6_CLIP_DW2_PERSPECTIVE_DIVIDE_DISABLE		(0x1 << 9)
900
#define GEN6_CLIP_DW2_NONPERSPECTIVE_BARYCENTRIC_ENABLE		(0x1 << 8)
901
#define GEN6_CLIP_DW2_TRI_PROVOKE__MASK				0x00000030
902
#define GEN6_CLIP_DW2_TRI_PROVOKE__SHIFT			4
903
#define GEN6_CLIP_DW2_LINE_PROVOKE__MASK			0x0000000c
904
#define GEN6_CLIP_DW2_LINE_PROVOKE__SHIFT			2
905
#define GEN6_CLIP_DW2_TRIFAN_PROVOKE__MASK			0x00000003
906
#define GEN6_CLIP_DW2_TRIFAN_PROVOKE__SHIFT			0
907
 
908
#define GEN6_CLIP_DW3_MIN_POINT_WIDTH__MASK			0x0ffe0000
909
#define GEN6_CLIP_DW3_MIN_POINT_WIDTH__SHIFT			17
910
#define GEN6_CLIP_DW3_MIN_POINT_WIDTH__RADIX			3
911
#define GEN6_CLIP_DW3_MAX_POINT_WIDTH__MASK			0x0001ffc0
912
#define GEN6_CLIP_DW3_MAX_POINT_WIDTH__SHIFT			6
913
#define GEN6_CLIP_DW3_MAX_POINT_WIDTH__RADIX			3
914
#define GEN6_CLIP_DW3_RTAINDEX_FORCED_ZERO			(0x1 << 5)
915
#define GEN6_CLIP_DW3_MAX_VPINDEX__MASK				0x0000000f
916
#define GEN6_CLIP_DW3_MAX_VPINDEX__SHIFT			0
917
 
918
#define GEN6_3DSTATE_SF_DW1_DW3__SIZE				3
919
 
920
#define GEN7_SF_DW1_DEPTH_FORMAT__MASK				0x00007000
921
#define GEN7_SF_DW1_DEPTH_FORMAT__SHIFT				12
922
#define GEN9_SF_DW1_LINE_WIDTH__MASK				0x3ffff000
923
#define GEN9_SF_DW1_LINE_WIDTH__SHIFT				12
924
#define GEN9_SF_DW1_LINE_WIDTH__RADIX				7
925
#define GEN7_SF_DW1_LEGACY_DEPTH_OFFSET				(0x1 << 11)
926
#define GEN7_SF_DW1_STATISTICS					(0x1 << 10)
927
#define GEN7_SF_DW1_DEPTH_OFFSET_SOLID				(0x1 << 9)
928
#define GEN7_SF_DW1_DEPTH_OFFSET_WIREFRAME			(0x1 << 8)
929
#define GEN7_SF_DW1_DEPTH_OFFSET_POINT				(0x1 << 7)
930
#define GEN7_SF_DW1_FRONTFACE__MASK				0x00000060
931
#define GEN7_SF_DW1_FRONTFACE__SHIFT				5
932
#define GEN7_SF_DW1_FRONTFACE_SOLID				(0x0 << 5)
933
#define GEN7_SF_DW1_FRONTFACE_WIREFRAME				(0x1 << 5)
934
#define GEN7_SF_DW1_FRONTFACE_POINT				(0x2 << 5)
935
#define GEN7_SF_DW1_BACKFACE__MASK				0x00000018
936
#define GEN7_SF_DW1_BACKFACE__SHIFT				3
937
#define GEN7_SF_DW1_BACKFACE_SOLID				(0x0 << 3)
938
#define GEN7_SF_DW1_BACKFACE_WIREFRAME				(0x1 << 3)
939
#define GEN7_SF_DW1_BACKFACE_POINT				(0x2 << 3)
940
#define GEN7_SF_DW1_VIEWPORT_ENABLE				(0x1 << 1)
941
#define GEN7_SF_DW1_FRONTWINDING__MASK				0x00000001
942
#define GEN7_SF_DW1_FRONTWINDING__SHIFT				0
943
#define GEN7_SF_DW1_FRONTWINDING_CW				0x0
944
#define GEN7_SF_DW1_FRONTWINDING_CCW				0x1
945
 
946
#define GEN7_SF_DW2_AA_LINE_ENABLE				(0x1 << 31)
947
#define GEN7_SF_DW2_CULLMODE__MASK				0x60000000
948
#define GEN7_SF_DW2_CULLMODE__SHIFT				29
949
#define GEN7_SF_DW2_CULLMODE_BOTH				(0x0 << 29)
950
#define GEN7_SF_DW2_CULLMODE_NONE				(0x1 << 29)
951
#define GEN7_SF_DW2_CULLMODE_FRONT				(0x2 << 29)
952
#define GEN7_SF_DW2_CULLMODE_BACK				(0x3 << 29)
953
#define GEN7_SF_DW2_LINE_WIDTH__MASK				0x0ffc0000
954
#define GEN7_SF_DW2_LINE_WIDTH__SHIFT				18
955
#define GEN7_SF_DW2_LINE_WIDTH__RADIX				7
956
#define GEN7_SF_DW2_AA_LINE_CAP__MASK				0x00030000
957
#define GEN7_SF_DW2_AA_LINE_CAP__SHIFT				16
958
#define GEN7_SF_DW2_AA_LINE_CAP_0_5				(0x0 << 16)
959
#define GEN7_SF_DW2_AA_LINE_CAP_1_0				(0x1 << 16)
960
#define GEN7_SF_DW2_AA_LINE_CAP_2_0				(0x2 << 16)
961
#define GEN7_SF_DW2_AA_LINE_CAP_4_0				(0x3 << 16)
962
#define GEN75_SF_DW2_LINE_STIPPLE_ENABLE			(0x1 << 14)
963
#define GEN7_SF_DW2_SCISSOR_ENABLE				(0x1 << 11)
964
#define GEN7_SF_DW2_MSRASTMODE__MASK				0x00000300
965
#define GEN7_SF_DW2_MSRASTMODE__SHIFT				8
966
#define GEN7_SF_DW2_MSRASTMODE_OFF_PIXEL			(0x0 << 8)
967
#define GEN7_SF_DW2_MSRASTMODE_OFF_PATTERN			(0x1 << 8)
968
#define GEN7_SF_DW2_MSRASTMODE_ON_PIXEL				(0x2 << 8)
969
#define GEN7_SF_DW2_MSRASTMODE_ON_PATTERN			(0x3 << 8)
970
 
971
#define GEN7_SF_DW3_LINE_LAST_PIXEL_ENABLE			(0x1 << 31)
972
#define GEN7_SF_DW3_TRI_PROVOKE__MASK				0x60000000
973
#define GEN7_SF_DW3_TRI_PROVOKE__SHIFT				29
974
#define GEN7_SF_DW3_LINE_PROVOKE__MASK				0x18000000
975
#define GEN7_SF_DW3_LINE_PROVOKE__SHIFT				27
976
#define GEN7_SF_DW3_TRIFAN_PROVOKE__MASK			0x06000000
977
#define GEN7_SF_DW3_TRIFAN_PROVOKE__SHIFT			25
978
#define GEN7_SF_DW3_TRUE_AA_LINE_DISTANCE			(0x1 << 14)
979
#define GEN7_SF_DW3_SUBPIXEL__MASK				0x00001000
980
#define GEN7_SF_DW3_SUBPIXEL__SHIFT				12
981
#define GEN7_SF_DW3_SUBPIXEL_8BITS				(0x0 << 12)
982
#define GEN7_SF_DW3_SUBPIXEL_4BITS				(0x1 << 12)
983
#define GEN7_SF_DW3_USE_POINT_WIDTH				(0x1 << 11)
984
#define GEN7_SF_DW3_POINT_WIDTH__MASK				0x000007ff
985
#define GEN7_SF_DW3_POINT_WIDTH__SHIFT				0
986
#define GEN7_SF_DW3_POINT_WIDTH__RADIX				3
987
 
988
#define GEN7_3DSTATE_SBE_DW1__SIZE				13
989
 
990
#define GEN8_SBE_DW1_USE_URB_READ_LEN				(0x1 << 29)
991
#define GEN8_SBE_DW1_USE_URB_READ_OFFSET			(0x1 << 28)
992
#define GEN7_SBE_DW1_ATTR_SWIZZLE__MASK				0x10000000
993
#define GEN7_SBE_DW1_ATTR_SWIZZLE__SHIFT			28
994
#define GEN7_SBE_DW1_ATTR_SWIZZLE_0_15				(0x0 << 28)
995
#define GEN7_SBE_DW1_ATTR_SWIZZLE_16_31				(0x1 << 28)
996
#define GEN7_SBE_DW1_ATTR_COUNT__MASK				0x0fc00000
997
#define GEN7_SBE_DW1_ATTR_COUNT__SHIFT				22
998
#define GEN7_SBE_DW1_ATTR_SWIZZLE_ENABLE			(0x1 << 21)
999
#define GEN7_SBE_DW1_POINT_SPRITE_TEXCOORD__MASK		0x00100000
1000
#define GEN7_SBE_DW1_POINT_SPRITE_TEXCOORD__SHIFT		20
1001
#define GEN7_SBE_DW1_POINT_SPRITE_TEXCOORD_UPPERLEFT		(0x0 << 20)
1002
#define GEN7_SBE_DW1_POINT_SPRITE_TEXCOORD_LOWERLEFT		(0x1 << 20)
1003
#define GEN7_SBE_DW1_URB_READ_LEN__MASK				0x0000f800
1004
#define GEN7_SBE_DW1_URB_READ_LEN__SHIFT			11
1005
#define GEN7_SBE_DW1_URB_READ_OFFSET__MASK			0x000003f0
1006
#define GEN7_SBE_DW1_URB_READ_OFFSET__SHIFT			4
1007
#define GEN8_SBE_DW1_URB_READ_OFFSET__MASK			0x000007e0
1008
#define GEN8_SBE_DW1_URB_READ_OFFSET__SHIFT			5
1009
 
1010
#define GEN8_3DSTATE_SBE_SWIZ_DW1_DW8__SIZE			8
1011
 
1012
#define GEN8_SBE_SWIZ_HIGH__MASK				0xffff0000
1013
#define GEN8_SBE_SWIZ_HIGH__SHIFT				16
1014
#define GEN8_SBE_SWIZ_OVERRIDE_W				(0x1 << 15)
1015
#define GEN8_SBE_SWIZ_OVERRIDE_Z				(0x1 << 14)
1016
#define GEN8_SBE_SWIZ_OVERRIDE_Y				(0x1 << 13)
1017
#define GEN8_SBE_SWIZ_OVERRIDE_X				(0x1 << 12)
1018
#define GEN8_SBE_SWIZ_CONST__MASK				0x00000600
1019
#define GEN8_SBE_SWIZ_CONST__SHIFT				9
1020
#define GEN8_SBE_SWIZ_CONST_0000				(0x0 << 9)
1021
#define GEN8_SBE_SWIZ_CONST_0001_FLOAT				(0x1 << 9)
1022
#define GEN8_SBE_SWIZ_CONST_1111_FLOAT				(0x2 << 9)
1023
#define GEN8_SBE_SWIZ_CONST_PRIM_ID				(0x3 << 9)
1024
#define GEN8_SBE_SWIZ_INPUTATTR__MASK				0x000000c0
1025
#define GEN8_SBE_SWIZ_INPUTATTR__SHIFT				6
1026
#define GEN8_SBE_SWIZ_INPUTATTR_NORMAL				(0x0 << 6)
1027
#define GEN8_SBE_SWIZ_INPUTATTR_FACING				(0x1 << 6)
1028
#define GEN8_SBE_SWIZ_INPUTATTR_W				(0x2 << 6)
1029
#define GEN8_SBE_SWIZ_INPUTATTR_FACING_W			(0x3 << 6)
1030
#define GEN8_SBE_SWIZ_URB_ENTRY_OFFSET__MASK			0x0000001f
1031
#define GEN8_SBE_SWIZ_URB_ENTRY_OFFSET__SHIFT			0
1032
 
1033
#define GEN6_3DSTATE_SF__SIZE					20
1034
 
1035
 
1036
 
1037
 
1038
 
1039
 
1040
 
1041
 
1042
 
1043
 
1044
 
1045
 
1046
 
1047
 
1048
 
1049
 
1050
 
1051
 
1052
 
1053
 
1054
#define GEN7_3DSTATE_SBE__SIZE					14
1055
 
1056
 
1057
 
1058
 
1059
 
1060
 
1061
 
1062
 
1063
 
1064
 
1065
 
1066
 
1067
#define GEN9_SBE_DW_ACTIVE_COMPONENT__MASK			0x00000003
1068
#define GEN9_SBE_DW_ACTIVE_COMPONENT__SHIFT			0
1069
#define GEN9_SBE_DW_ACTIVE_COMPONENT_NONE			0x0
1070
#define GEN9_SBE_DW_ACTIVE_COMPONENT_XY				0x1
1071
#define GEN9_SBE_DW_ACTIVE_COMPONENT_XYZ			0x2
1072
#define GEN9_SBE_DW_ACTIVE_COMPONENT_XYZW			0x3
1073
 
1074
#define GEN8_3DSTATE_SBE_SWIZ__SIZE				11
1075
 
1076
 
1077
 
1078
 
1079
#define GEN8_3DSTATE_RASTER__SIZE				5
1080
 
1081
 
1082
#define GEN9_RASTER_DW1_Z_TEST_FAR_ENABLE			(0x1 << 26)
1083
#define GEN8_RASTER_DW1_FRONTWINDING__MASK			0x00200000
1084
#define GEN8_RASTER_DW1_FRONTWINDING__SHIFT			21
1085
#define GEN8_RASTER_DW1_FRONTWINDING_CW				(0x0 << 21)
1086
#define GEN8_RASTER_DW1_FRONTWINDING_CCW			(0x1 << 21)
1087
#define GEN8_RASTER_DW1_CULLMODE__MASK				0x00030000
1088
#define GEN8_RASTER_DW1_CULLMODE__SHIFT				16
1089
#define GEN8_RASTER_DW1_CULLMODE_BOTH				(0x0 << 16)
1090
#define GEN8_RASTER_DW1_CULLMODE_NONE				(0x1 << 16)
1091
#define GEN8_RASTER_DW1_CULLMODE_FRONT				(0x2 << 16)
1092
#define GEN8_RASTER_DW1_CULLMODE_BACK				(0x3 << 16)
1093
#define GEN8_RASTER_DW1_SMOOTH_POINT_ENABLE			(0x1 << 13)
1094
#define GEN8_RASTER_DW1_API_MULTISAMPLE_ENABLE			(0x1 << 12)
1095
#define GEN8_RASTER_DW1_DEPTH_OFFSET_SOLID			(0x1 << 9)
1096
#define GEN8_RASTER_DW1_DEPTH_OFFSET_WIREFRAME			(0x1 << 8)
1097
#define GEN8_RASTER_DW1_DEPTH_OFFSET_POINT			(0x1 << 7)
1098
#define GEN8_RASTER_DW1_FRONTFACE__MASK				0x00000060
1099
#define GEN8_RASTER_DW1_FRONTFACE__SHIFT			5
1100
#define GEN8_RASTER_DW1_FRONTFACE_SOLID				(0x0 << 5)
1101
#define GEN8_RASTER_DW1_FRONTFACE_WIREFRAME			(0x1 << 5)
1102
#define GEN8_RASTER_DW1_FRONTFACE_POINT				(0x2 << 5)
1103
#define GEN8_RASTER_DW1_BACKFACE__MASK				0x00000018
1104
#define GEN8_RASTER_DW1_BACKFACE__SHIFT				3
1105
#define GEN8_RASTER_DW1_BACKFACE_SOLID				(0x0 << 3)
1106
#define GEN8_RASTER_DW1_BACKFACE_WIREFRAME			(0x1 << 3)
1107
#define GEN8_RASTER_DW1_BACKFACE_POINT				(0x2 << 3)
1108
#define GEN8_RASTER_DW1_AA_LINE_ENABLE				(0x1 << 2)
1109
#define GEN8_RASTER_DW1_SCISSOR_ENABLE				(0x1 << 1)
1110
#define GEN8_RASTER_DW1_Z_TEST_ENABLE				(0x1 << 0)
1111
#define GEN9_RASTER_DW1_Z_TEST_NEAR_ENABLE			(0x1 << 0)
1112
 
1113
 
1114
 
1115
 
1116
#define GEN6_3DSTATE_WM__SIZE					9
1117
 
1118
 
1119
#define GEN6_WM_DW1_KERNEL0_ADDR__MASK				0xffffffc0
1120
#define GEN6_WM_DW1_KERNEL0_ADDR__SHIFT				6
1121
#define GEN6_WM_DW1_KERNEL0_ADDR__SHR				6
1122
 
1123
 
1124
 
1125
#define GEN6_WM_DW4_STATISTICS					(0x1 << 31)
1126
#define GEN6_WM_DW4_DEPTH_CLEAR					(0x1 << 30)
1127
#define GEN6_WM_DW4_DEPTH_RESOLVE				(0x1 << 28)
1128
#define GEN6_WM_DW4_HIZ_RESOLVE					(0x1 << 27)
1129
#define GEN6_WM_DW4_URB_GRF_START0__MASK			0x007f0000
1130
#define GEN6_WM_DW4_URB_GRF_START0__SHIFT			16
1131
#define GEN6_WM_DW4_URB_GRF_START1__MASK			0x00007f00
1132
#define GEN6_WM_DW4_URB_GRF_START1__SHIFT			8
1133
#define GEN6_WM_DW4_URB_GRF_START2__MASK			0x0000007f
1134
#define GEN6_WM_DW4_URB_GRF_START2__SHIFT			0
1135
 
1136
#define GEN6_WM_DW5_MAX_THREADS__MASK				0xfe000000
1137
#define GEN6_WM_DW5_MAX_THREADS__SHIFT				25
1138
#define GEN6_WM_DW5_LEGACY_LINE_RAST				(0x1 << 23)
1139
#define GEN6_WM_DW5_PS_KILL_PIXEL				(0x1 << 22)
1140
#define GEN6_WM_DW5_PS_COMPUTE_DEPTH				(0x1 << 21)
1141
#define GEN6_WM_DW5_PS_USE_DEPTH				(0x1 << 20)
1142
#define GEN6_WM_DW5_PS_DISPATCH_ENABLE				(0x1 << 19)
1143
#define GEN6_WM_DW5_AA_LINE_CAP__MASK				0x00030000
1144
#define GEN6_WM_DW5_AA_LINE_CAP__SHIFT				16
1145
#define GEN6_WM_DW5_AA_LINE_CAP_0_5				(0x0 << 16)
1146
#define GEN6_WM_DW5_AA_LINE_CAP_1_0				(0x1 << 16)
1147
#define GEN6_WM_DW5_AA_LINE_CAP_2_0				(0x2 << 16)
1148
#define GEN6_WM_DW5_AA_LINE_CAP_4_0				(0x3 << 16)
1149
#define GEN6_WM_DW5_AA_LINE_WIDTH__MASK				0x0000c000
1150
#define GEN6_WM_DW5_AA_LINE_WIDTH__SHIFT			14
1151
#define GEN6_WM_DW5_AA_LINE_WIDTH_0_5				(0x0 << 14)
1152
#define GEN6_WM_DW5_AA_LINE_WIDTH_1_0				(0x1 << 14)
1153
#define GEN6_WM_DW5_AA_LINE_WIDTH_2_0				(0x2 << 14)
1154
#define GEN6_WM_DW5_AA_LINE_WIDTH_4_0				(0x3 << 14)
1155
#define GEN6_WM_DW5_POLY_STIPPLE_ENABLE				(0x1 << 13)
1156
#define GEN6_WM_DW5_LINE_STIPPLE_ENABLE				(0x1 << 11)
1157
#define GEN6_WM_DW5_PS_COMPUTE_OMASK				(0x1 << 9)
1158
#define GEN6_WM_DW5_PS_USE_W					(0x1 << 8)
1159
#define GEN6_WM_DW5_PS_DUAL_SOURCE_BLEND			(0x1 << 7)
1160
#define GEN6_WM_DW5_PS_DISPATCH_MODE__MASK			0x00000007
1161
#define GEN6_WM_DW5_PS_DISPATCH_MODE__SHIFT			0
1162
 
1163
#define GEN6_WM_DW6_SF_ATTR_COUNT__MASK				0x03f00000
1164
#define GEN6_WM_DW6_SF_ATTR_COUNT__SHIFT			20
1165
#define GEN6_WM_DW6_PS_POSOFFSET__MASK				0x000c0000
1166
#define GEN6_WM_DW6_PS_POSOFFSET__SHIFT				18
1167
#define GEN6_WM_DW6_PS_POSOFFSET_NONE				(0x0 << 18)
1168
#define GEN6_WM_DW6_PS_POSOFFSET_CENTROID			(0x2 << 18)
1169
#define GEN6_WM_DW6_PS_POSOFFSET_SAMPLE				(0x3 << 18)
1170
#define GEN6_WM_DW6_ZW_INTERP__MASK				0x00030000
1171
#define GEN6_WM_DW6_ZW_INTERP__SHIFT				16
1172
#define GEN6_WM_DW6_ZW_INTERP_PIXEL				(0x0 << 16)
1173
#define GEN6_WM_DW6_ZW_INTERP_CENTROID				(0x2 << 16)
1174
#define GEN6_WM_DW6_ZW_INTERP_SAMPLE				(0x3 << 16)
1175
#define GEN6_WM_DW6_BARYCENTRIC_INTERP__MASK			0x0000fc00
1176
#define GEN6_WM_DW6_BARYCENTRIC_INTERP__SHIFT			10
1177
#define GEN6_WM_DW6_POINT_RASTRULE__MASK			0x00000200
1178
#define GEN6_WM_DW6_POINT_RASTRULE__SHIFT			9
1179
#define GEN6_WM_DW6_POINT_RASTRULE_UPPER_LEFT			(0x0 << 9)
1180
#define GEN6_WM_DW6_POINT_RASTRULE_UPPER_RIGHT			(0x1 << 9)
1181
#define GEN6_WM_DW6_MSRASTMODE__MASK				0x00000006
1182
#define GEN6_WM_DW6_MSRASTMODE__SHIFT				1
1183
#define GEN6_WM_DW6_MSRASTMODE_OFF_PIXEL			(0x0 << 1)
1184
#define GEN6_WM_DW6_MSRASTMODE_OFF_PATTERN			(0x1 << 1)
1185
#define GEN6_WM_DW6_MSRASTMODE_ON_PIXEL				(0x2 << 1)
1186
#define GEN6_WM_DW6_MSRASTMODE_ON_PATTERN			(0x3 << 1)
1187
#define GEN6_WM_DW6_MSDISPMODE__MASK				0x00000001
1188
#define GEN6_WM_DW6_MSDISPMODE__SHIFT				0
1189
#define GEN6_WM_DW6_MSDISPMODE_PERSAMPLE			0x0
1190
#define GEN6_WM_DW6_MSDISPMODE_PERPIXEL				0x1
1191
 
1192
#define GEN6_WM_DW7_KERNEL1_ADDR__MASK				0xffffffc0
1193
#define GEN6_WM_DW7_KERNEL1_ADDR__SHIFT				6
1194
#define GEN6_WM_DW7_KERNEL1_ADDR__SHR				6
1195
 
1196
#define GEN6_WM_DW8_KERNEL2_ADDR__MASK				0xffffffc0
1197
#define GEN6_WM_DW8_KERNEL2_ADDR__SHIFT				6
1198
#define GEN6_WM_DW8_KERNEL2_ADDR__SHR				6
1199
 
1200
 
1201
#define GEN7_WM_DW1_STATISTICS					(0x1 << 31)
1202
#define GEN7_WM_DW1_DEPTH_CLEAR					(0x1 << 30)
1203
#define GEN7_WM_DW1_PS_DISPATCH_ENABLE				(0x1 << 29)
1204
#define GEN7_WM_DW1_DEPTH_RESOLVE				(0x1 << 28)
1205
#define GEN7_WM_DW1_HIZ_RESOLVE					(0x1 << 27)
1206
#define GEN7_WM_DW1_LEGACY_LINE_RAST				(0x1 << 26)
1207
#define GEN7_WM_DW1_PS_KILL_PIXEL				(0x1 << 25)
1208
#define GEN7_WM_DW1_PSCDEPTH__MASK				0x01800000
1209
#define GEN7_WM_DW1_PSCDEPTH__SHIFT				23
1210
#define GEN7_WM_DW1_PSCDEPTH_OFF				(0x0 << 23)
1211
#define GEN7_WM_DW1_PSCDEPTH_ON					(0x1 << 23)
1212
#define GEN7_WM_DW1_PSCDEPTH_ON_GE				(0x2 << 23)
1213
#define GEN7_WM_DW1_PSCDEPTH_ON_LE				(0x3 << 23)
1214
#define GEN7_WM_DW1_EDSC__MASK					0x00600000
1215
#define GEN7_WM_DW1_EDSC__SHIFT					21
1216
#define GEN7_WM_DW1_EDSC_NORMAL					(0x0 << 21)
1217
#define GEN7_WM_DW1_EDSC_PSEXEC					(0x1 << 21)
1218
#define GEN7_WM_DW1_EDSC_PREPS					(0x2 << 21)
1219
#define GEN7_WM_DW1_PS_USE_DEPTH				(0x1 << 20)
1220
#define GEN7_WM_DW1_PS_USE_W					(0x1 << 19)
1221
#define GEN7_WM_DW1_ZW_INTERP__MASK				0x00060000
1222
#define GEN7_WM_DW1_ZW_INTERP__SHIFT				17
1223
#define GEN7_WM_DW1_ZW_INTERP_PIXEL				(0x0 << 17)
1224
#define GEN7_WM_DW1_ZW_INTERP_CENTROID				(0x2 << 17)
1225
#define GEN7_WM_DW1_ZW_INTERP_SAMPLE				(0x3 << 17)
1226
#define GEN7_WM_DW1_BARYCENTRIC_INTERP__MASK			0x0001f800
1227
#define GEN7_WM_DW1_BARYCENTRIC_INTERP__SHIFT			11
1228
#define GEN7_WM_DW1_PS_USE_COVERAGE_MASK			(0x1 << 10)
1229
#define GEN7_WM_DW1_AA_LINE_CAP__MASK				0x00000300
1230
#define GEN7_WM_DW1_AA_LINE_CAP__SHIFT				8
1231
#define GEN7_WM_DW1_AA_LINE_CAP_0_5				(0x0 << 8)
1232
#define GEN7_WM_DW1_AA_LINE_CAP_1_0				(0x1 << 8)
1233
#define GEN7_WM_DW1_AA_LINE_CAP_2_0				(0x2 << 8)
1234
#define GEN7_WM_DW1_AA_LINE_CAP_4_0				(0x3 << 8)
1235
#define GEN7_WM_DW1_AA_LINE_WIDTH__MASK				0x000000c0
1236
#define GEN7_WM_DW1_AA_LINE_WIDTH__SHIFT			6
1237
#define GEN7_WM_DW1_AA_LINE_WIDTH_0_5				(0x0 << 6)
1238
#define GEN7_WM_DW1_AA_LINE_WIDTH_1_0				(0x1 << 6)
1239
#define GEN7_WM_DW1_AA_LINE_WIDTH_2_0				(0x2 << 6)
1240
#define GEN7_WM_DW1_AA_LINE_WIDTH_4_0				(0x3 << 6)
1241
#define GEN75_WM_DW1_RT_INDEPENDENT_RAST			(0x1 << 5)
1242
#define GEN7_WM_DW1_POLY_STIPPLE_ENABLE				(0x1 << 4)
1243
#define GEN7_WM_DW1_LINE_STIPPLE_ENABLE				(0x1 << 3)
1244
#define GEN7_WM_DW1_POINT_RASTRULE__MASK			0x00000004
1245
#define GEN7_WM_DW1_POINT_RASTRULE__SHIFT			2
1246
#define GEN7_WM_DW1_POINT_RASTRULE_UPPER_LEFT			(0x0 << 2)
1247
#define GEN7_WM_DW1_POINT_RASTRULE_UPPER_RIGHT			(0x1 << 2)
1248
#define GEN7_WM_DW1_MSRASTMODE__MASK				0x00000003
1249
#define GEN7_WM_DW1_MSRASTMODE__SHIFT				0
1250
#define GEN7_WM_DW1_MSRASTMODE_OFF_PIXEL			0x0
1251
#define GEN7_WM_DW1_MSRASTMODE_OFF_PATTERN			0x1
1252
#define GEN7_WM_DW1_MSRASTMODE_ON_PIXEL				0x2
1253
#define GEN7_WM_DW1_MSRASTMODE_ON_PATTERN			0x3
1254
 
1255
#define GEN7_WM_DW2_MSDISPMODE__MASK				0x80000000
1256
#define GEN7_WM_DW2_MSDISPMODE__SHIFT				31
1257
#define GEN7_WM_DW2_MSDISPMODE_PERSAMPLE			(0x0 << 31)
1258
#define GEN7_WM_DW2_MSDISPMODE_PERPIXEL				(0x1 << 31)
1259
#define GEN75_WM_DW2_PS_UAV_ONLY				(0x1 << 30)
1260
 
1261
#define GEN8_3DSTATE_WM_CHROMAKEY__SIZE				2
1262
 
1263
 
1264
 
1265
#define GEN8_3DSTATE_WM_DEPTH_STENCIL__SIZE			4
1266
 
1267
 
1268
#define GEN8_ZS_DW1_STENCIL0_FAIL_OP__MASK			0xe0000000
1269
#define GEN8_ZS_DW1_STENCIL0_FAIL_OP__SHIFT			29
1270
#define GEN8_ZS_DW1_STENCIL0_ZFAIL_OP__MASK			0x1c000000
1271
#define GEN8_ZS_DW1_STENCIL0_ZFAIL_OP__SHIFT			26
1272
#define GEN8_ZS_DW1_STENCIL0_ZPASS_OP__MASK			0x03800000
1273
#define GEN8_ZS_DW1_STENCIL0_ZPASS_OP__SHIFT			23
1274
#define GEN8_ZS_DW1_STENCIL1_FUNC__MASK				0x00700000
1275
#define GEN8_ZS_DW1_STENCIL1_FUNC__SHIFT			20
1276
#define GEN8_ZS_DW1_STENCIL1_FAIL_OP__MASK			0x000e0000
1277
#define GEN8_ZS_DW1_STENCIL1_FAIL_OP__SHIFT			17
1278
#define GEN8_ZS_DW1_STENCIL1_ZFAIL_OP__MASK			0x0001c000
1279
#define GEN8_ZS_DW1_STENCIL1_ZFAIL_OP__SHIFT			14
1280
#define GEN8_ZS_DW1_STENCIL1_ZPASS_OP__MASK			0x00003800
1281
#define GEN8_ZS_DW1_STENCIL1_ZPASS_OP__SHIFT			11
1282
#define GEN8_ZS_DW1_STENCIL0_FUNC__MASK				0x00000700
1283
#define GEN8_ZS_DW1_STENCIL0_FUNC__SHIFT			8
1284
#define GEN8_ZS_DW1_DEPTH_FUNC__MASK				0x000000e0
1285
#define GEN8_ZS_DW1_DEPTH_FUNC__SHIFT				5
1286
#define GEN8_ZS_DW1_STENCIL1_ENABLE				(0x1 << 4)
1287
#define GEN8_ZS_DW1_STENCIL_TEST_ENABLE				(0x1 << 3)
1288
#define GEN8_ZS_DW1_STENCIL_WRITE_ENABLE			(0x1 << 2)
1289
#define GEN8_ZS_DW1_DEPTH_TEST_ENABLE				(0x1 << 1)
1290
#define GEN8_ZS_DW1_DEPTH_WRITE_ENABLE				(0x1 << 0)
1291
 
1292
#define GEN8_ZS_DW2_STENCIL0_VALUEMASK__MASK			0xff000000
1293
#define GEN8_ZS_DW2_STENCIL0_VALUEMASK__SHIFT			24
1294
#define GEN8_ZS_DW2_STENCIL0_WRITEMASK__MASK			0x00ff0000
1295
#define GEN8_ZS_DW2_STENCIL0_WRITEMASK__SHIFT			16
1296
#define GEN8_ZS_DW2_STENCIL1_VALUEMASK__MASK			0x0000ff00
1297
#define GEN8_ZS_DW2_STENCIL1_VALUEMASK__SHIFT			8
1298
#define GEN8_ZS_DW2_STENCIL1_WRITEMASK__MASK			0x000000ff
1299
#define GEN8_ZS_DW2_STENCIL1_WRITEMASK__SHIFT			0
1300
 
1301
#define GEN9_ZS_DW3_STENCIL0_REF__MASK				0x0000ff00
1302
#define GEN9_ZS_DW3_STENCIL0_REF__SHIFT				8
1303
#define GEN9_ZS_DW3_STENCIL1_REF__MASK				0x000000ff
1304
#define GEN9_ZS_DW3_STENCIL1_REF__SHIFT				0
1305
 
1306
#define GEN8_3DSTATE_WM_HZ_OP__SIZE				5
1307
 
1308
 
1309
#define GEN8_WM_HZ_DW1_STENCIL_CLEAR				(0x1 << 31)
1310
#define GEN8_WM_HZ_DW1_DEPTH_CLEAR				(0x1 << 30)
1311
#define GEN8_WM_HZ_DW1_DEPTH_RESOLVE				(0x1 << 28)
1312
#define GEN8_WM_HZ_DW1_HIZ_RESOLVE				(0x1 << 27)
1313
#define GEN8_WM_HZ_DW1_PIXEL_OFFSET_ENABLE			(0x1 << 26)
1314
#define GEN8_WM_HZ_DW1_FULL_SURFACE_DEPTH_CLEAR			(0x1 << 25)
1315
#define GEN8_WM_HZ_DW1_STENCIL_CLEAR_VALUE__MASK		0x00ff0000
1316
#define GEN8_WM_HZ_DW1_STENCIL_CLEAR_VALUE__SHIFT		16
1317
#define GEN8_WM_HZ_DW1_NUMSAMPLES__MASK				0x0000e000
1318
#define GEN8_WM_HZ_DW1_NUMSAMPLES__SHIFT			13
1319
#define GEN8_WM_HZ_DW1_NUMSAMPLES_1				(0x0 << 13)
1320
#define GEN8_WM_HZ_DW1_NUMSAMPLES_2				(0x1 << 13)
1321
#define GEN8_WM_HZ_DW1_NUMSAMPLES_4				(0x2 << 13)
1322
#define GEN8_WM_HZ_DW1_NUMSAMPLES_8				(0x3 << 13)
1323
#define GEN8_WM_HZ_DW1_NUMSAMPLES_16				(0x4 << 13)
1324
 
1325
#define GEN8_WM_HZ_DW2_RECT_MIN_Y__MASK				0xffff0000
1326
#define GEN8_WM_HZ_DW2_RECT_MIN_Y__SHIFT			16
1327
#define GEN8_WM_HZ_DW2_RECT_MIN_X__MASK				0x0000ffff
1328
#define GEN8_WM_HZ_DW2_RECT_MIN_X__SHIFT			0
1329
 
1330
#define GEN8_WM_HZ_DW3_RECT_MAX_Y__MASK				0xffff0000
1331
#define GEN8_WM_HZ_DW3_RECT_MAX_Y__SHIFT			16
1332
#define GEN8_WM_HZ_DW3_RECT_MAX_X__MASK				0x0000ffff
1333
#define GEN8_WM_HZ_DW3_RECT_MAX_X__SHIFT			0
1334
 
1335
#define GEN8_WM_HZ_DW4_SAMPLE_MASK__MASK			0x0000ffff
1336
#define GEN8_WM_HZ_DW4_SAMPLE_MASK__SHIFT			0
1337
 
1338
#define GEN7_3DSTATE_PS__SIZE					12
1339
 
1340
 
1341
#define GEN7_PS_DW1_KERNEL0_ADDR__MASK				0xffffffc0
1342
#define GEN7_PS_DW1_KERNEL0_ADDR__SHIFT				6
1343
#define GEN7_PS_DW1_KERNEL0_ADDR__SHR				6
1344
 
1345
 
1346
 
1347
#define GEN7_PS_DW4_MAX_THREADS__MASK				0xff000000
1348
#define GEN7_PS_DW4_MAX_THREADS__SHIFT				24
1349
#define GEN75_PS_DW4_MAX_THREADS__MASK				0xff800000
1350
#define GEN75_PS_DW4_MAX_THREADS__SHIFT				23
1351
#define GEN75_PS_DW4_SAMPLE_MASK__MASK				0x000ff000
1352
#define GEN75_PS_DW4_SAMPLE_MASK__SHIFT				12
1353
#define GEN7_PS_DW4_PUSH_CONSTANT_ENABLE			(0x1 << 11)
1354
#define GEN7_PS_DW4_ATTR_ENABLE					(0x1 << 10)
1355
#define GEN7_PS_DW4_COMPUTE_OMASK				(0x1 << 9)
1356
#define GEN7_PS_DW4_RT_FAST_CLEAR				(0x1 << 8)
1357
#define GEN7_PS_DW4_DUAL_SOURCE_BLEND				(0x1 << 7)
1358
#define GEN7_PS_DW4_RT_RESOLVE					(0x1 << 6)
1359
#define GEN75_PS_DW4_ACCESS_UAV					(0x1 << 5)
1360
#define GEN7_PS_DW4_POSOFFSET__MASK				0x00000018
1361
#define GEN7_PS_DW4_POSOFFSET__SHIFT				3
1362
#define GEN7_PS_DW4_POSOFFSET_NONE				(0x0 << 3)
1363
#define GEN7_PS_DW4_POSOFFSET_CENTROID				(0x2 << 3)
1364
#define GEN7_PS_DW4_POSOFFSET_SAMPLE				(0x3 << 3)
1365
#define GEN7_PS_DW4_DISPATCH_MODE__MASK				0x00000007
1366
#define GEN7_PS_DW4_DISPATCH_MODE__SHIFT			0
1367
 
1368
#define GEN7_PS_DW5_URB_GRF_START0__MASK			0x007f0000
1369
#define GEN7_PS_DW5_URB_GRF_START0__SHIFT			16
1370
#define GEN7_PS_DW5_URB_GRF_START1__MASK			0x00007f00
1371
#define GEN7_PS_DW5_URB_GRF_START1__SHIFT			8
1372
#define GEN7_PS_DW5_URB_GRF_START2__MASK			0x0000007f
1373
#define GEN7_PS_DW5_URB_GRF_START2__SHIFT			0
1374
 
1375
#define GEN7_PS_DW6_KERNEL1_ADDR__MASK				0xffffffc0
1376
#define GEN7_PS_DW6_KERNEL1_ADDR__SHIFT				6
1377
#define GEN7_PS_DW6_KERNEL1_ADDR__SHR				6
1378
 
1379
#define GEN7_PS_DW7_KERNEL2_ADDR__MASK				0xffffffc0
1380
#define GEN7_PS_DW7_KERNEL2_ADDR__SHIFT				6
1381
#define GEN7_PS_DW7_KERNEL2_ADDR__SHR				6
1382
 
1383
 
1384
 
1385
#define GEN8_PS_DW1_KERNEL0_ADDR__MASK				0xffffffc0
1386
#define GEN8_PS_DW1_KERNEL0_ADDR__SHIFT				6
1387
#define GEN8_PS_DW1_KERNEL0_ADDR__SHR				6
1388
 
1389
 
1390
 
1391
 
1392
 
1393
#define GEN8_PS_DW6_MAX_THREADS__MASK				0xff800000
1394
#define GEN8_PS_DW6_MAX_THREADS__SHIFT				23
1395
#define GEN8_PS_DW6_PUSH_CONSTANT_ENABLE			(0x1 << 11)
1396
#define GEN8_PS_DW6_RT_FAST_CLEAR				(0x1 << 8)
1397
#define GEN8_PS_DW6_RT_RESOLVE					(0x1 << 6)
1398
#define GEN8_PS_DW6_POSOFFSET__MASK				0x00000018
1399
#define GEN8_PS_DW6_POSOFFSET__SHIFT				3
1400
#define GEN8_PS_DW6_POSOFFSET_NONE				(0x0 << 3)
1401
#define GEN8_PS_DW6_POSOFFSET_CENTROID				(0x2 << 3)
1402
#define GEN8_PS_DW6_POSOFFSET_SAMPLE				(0x3 << 3)
1403
#define GEN8_PS_DW6_DISPATCH_MODE__MASK				0x00000007
1404
#define GEN8_PS_DW6_DISPATCH_MODE__SHIFT			0
1405
 
1406
#define GEN8_PS_DW7_URB_GRF_START0__MASK			0x007f0000
1407
#define GEN8_PS_DW7_URB_GRF_START0__SHIFT			16
1408
#define GEN8_PS_DW7_URB_GRF_START1__MASK			0x00007f00
1409
#define GEN8_PS_DW7_URB_GRF_START1__SHIFT			8
1410
#define GEN8_PS_DW7_URB_GRF_START2__MASK			0x0000007f
1411
#define GEN8_PS_DW7_URB_GRF_START2__SHIFT			0
1412
 
1413
#define GEN8_PS_DW8_KERNEL1_ADDR__MASK				0xffffffc0
1414
#define GEN8_PS_DW8_KERNEL1_ADDR__SHIFT				6
1415
#define GEN8_PS_DW8_KERNEL1_ADDR__SHR				6
1416
 
1417
 
1418
#define GEN8_PS_DW10_KERNEL2_ADDR__MASK				0xffffffc0
1419
#define GEN8_PS_DW10_KERNEL2_ADDR__SHIFT			6
1420
#define GEN8_PS_DW10_KERNEL2_ADDR__SHR				6
1421
 
1422
 
1423
#define GEN8_3DSTATE_PS_EXTRA__SIZE				2
1424
 
1425
 
1426
#define GEN8_PSX_DW1_DISPATCH_ENABLE				(0x1 << 31)
1427
#define GEN8_PSX_DW1_UAV_ONLY					(0x1 << 30)
1428
#define GEN8_PSX_DW1_COMPUTE_OMASK				(0x1 << 29)
1429
#define GEN8_PSX_DW1_KILL_PIXEL					(0x1 << 28)
1430
#define GEN8_PSX_DW1_PSCDEPTH__MASK				0x0c000000
1431
#define GEN8_PSX_DW1_PSCDEPTH__SHIFT				26
1432
#define GEN8_PSX_DW1_PSCDEPTH_OFF				(0x0 << 26)
1433
#define GEN8_PSX_DW1_PSCDEPTH_ON				(0x1 << 26)
1434
#define GEN8_PSX_DW1_PSCDEPTH_ON_GE				(0x2 << 26)
1435
#define GEN8_PSX_DW1_PSCDEPTH_ON_LE				(0x3 << 26)
1436
#define GEN8_PSX_DW1_FORCE_COMPUTE_DEPTH			(0x1 << 25)
1437
#define GEN8_PSX_DW1_USE_DEPTH					(0x1 << 24)
1438
#define GEN8_PSX_DW1_USE_W					(0x1 << 23)
1439
#define GEN8_PSX_DW1_ATTR_ENABLE				(0x1 << 8)
1440
#define GEN8_PSX_DW1_DISABLE_ALPHA_TO_COVERAGE			(0x1 << 7)
1441
#define GEN8_PSX_DW1_PER_SAMPLE					(0x1 << 6)
1442
#define GEN8_PSX_DW1_COMPUTE_STENCIL				(0x1 << 5)
1443
#define GEN8_PSX_DW1_ACCESS_UAV					(0x1 << 2)
1444
#define GEN8_PSX_DW1_USE_COVERAGE_MASK				(0x1 << 1)
1445
 
1446
#define GEN8_3DSTATE_PS_BLEND__SIZE				2
1447
 
1448
 
1449
#define GEN8_PS_BLEND_DW1_ALPHA_TO_COVERAGE			(0x1 << 31)
1450
#define GEN8_PS_BLEND_DW1_WRITABLE_RT				(0x1 << 30)
1451
#define GEN8_PS_BLEND_DW1_BLEND_ENABLE				(0x1 << 29)
1452
#define GEN8_PS_BLEND_DW1_SRC_ALPHA_FACTOR__MASK		0x1f000000
1453
#define GEN8_PS_BLEND_DW1_SRC_ALPHA_FACTOR__SHIFT		24
1454
#define GEN8_PS_BLEND_DW1_DST_ALPHA_FACTOR__MASK		0x00f80000
1455
#define GEN8_PS_BLEND_DW1_DST_ALPHA_FACTOR__SHIFT		19
1456
#define GEN8_PS_BLEND_DW1_SRC_COLOR_FACTOR__MASK		0x0007c000
1457
#define GEN8_PS_BLEND_DW1_SRC_COLOR_FACTOR__SHIFT		14
1458
#define GEN8_PS_BLEND_DW1_DST_COLOR_FACTOR__MASK		0x00003e00
1459
#define GEN8_PS_BLEND_DW1_DST_COLOR_FACTOR__SHIFT		9
1460
#define GEN8_PS_BLEND_DW1_ALPHA_TEST_ENABLE			(0x1 << 8)
1461
#define GEN8_PS_BLEND_DW1_INDEPENDENT_ALPHA_ENABLE		(0x1 << 7)
1462
 
1463
#define GEN6_3DSTATE_CONSTANT_ANY__SIZE				11
1464
 
1465
#define GEN6_CONSTANT_DW0_BUFFER_ENABLES__MASK			0x0000f000
1466
#define GEN6_CONSTANT_DW0_BUFFER_ENABLES__SHIFT			12
1467
#define GEN6_CONSTANT_DW0_MOCS__MASK				0x00000f00
1468
#define GEN6_CONSTANT_DW0_MOCS__SHIFT				8
1469
 
1470
#define GEN6_CONSTANT_DW_ADDR_READ_LEN__MASK			0x0000001f
1471
#define GEN6_CONSTANT_DW_ADDR_READ_LEN__SHIFT			0
1472
#define GEN6_CONSTANT_DW_ADDR_ADDR__MASK			0xffffffe0
1473
#define GEN6_CONSTANT_DW_ADDR_ADDR__SHIFT			5
1474
#define GEN6_CONSTANT_DW_ADDR_ADDR__SHR				5
1475
 
1476
 
1477
 
1478
#define GEN7_CONSTANT_DW1_BUFFER1_READ_LEN__MASK		0xffff0000
1479
#define GEN7_CONSTANT_DW1_BUFFER1_READ_LEN__SHIFT		16
1480
#define GEN7_CONSTANT_DW1_BUFFER0_READ_LEN__MASK		0x0000ffff
1481
#define GEN7_CONSTANT_DW1_BUFFER0_READ_LEN__SHIFT		0
1482
 
1483
#define GEN7_CONSTANT_DW2_BUFFER3_READ_LEN__MASK		0xffff0000
1484
#define GEN7_CONSTANT_DW2_BUFFER3_READ_LEN__SHIFT		16
1485
#define GEN7_CONSTANT_DW2_BUFFER2_READ_LEN__MASK		0x0000ffff
1486
#define GEN7_CONSTANT_DW2_BUFFER2_READ_LEN__SHIFT		0
1487
 
1488
#define GEN7_CONSTANT_DW_ADDR_MOCS__MASK			0x0000001f
1489
#define GEN7_CONSTANT_DW_ADDR_MOCS__SHIFT			0
1490
#define GEN7_CONSTANT_DW_ADDR_ADDR__MASK			0xffffffe0
1491
#define GEN7_CONSTANT_DW_ADDR_ADDR__SHIFT			5
1492
#define GEN7_CONSTANT_DW_ADDR_ADDR__SHR				5
1493
 
1494
#define GEN8_CONSTANT_DW_ADDR_ADDR__MASK			0xffffffe0
1495
#define GEN8_CONSTANT_DW_ADDR_ADDR__SHIFT			5
1496
#define GEN8_CONSTANT_DW_ADDR_ADDR__SHR				5
1497
 
1498
#define GEN6_3DSTATE_SAMPLE_MASK__SIZE				2
1499
 
1500
 
1501
#define GEN6_SAMPLE_MASK_DW1_VAL__MASK				0x0000000f
1502
#define GEN6_SAMPLE_MASK_DW1_VAL__SHIFT				0
1503
#define GEN7_SAMPLE_MASK_DW1_VAL__MASK				0x000000ff
1504
#define GEN7_SAMPLE_MASK_DW1_VAL__SHIFT				0
1505
#define GEN8_SAMPLE_MASK_DW1_VAL__MASK				0x0000ffff
1506
#define GEN8_SAMPLE_MASK_DW1_VAL__SHIFT				0
1507
 
1508
#define GEN6_3DSTATE_DRAWING_RECTANGLE__SIZE			4
1509
 
1510
 
1511
#define GEN6_DRAWING_RECTANGLE_DW1_MIN_Y__MASK			0xffff0000
1512
#define GEN6_DRAWING_RECTANGLE_DW1_MIN_Y__SHIFT			16
1513
#define GEN6_DRAWING_RECTANGLE_DW1_MIN_X__MASK			0x0000ffff
1514
#define GEN6_DRAWING_RECTANGLE_DW1_MIN_X__SHIFT			0
1515
 
1516
#define GEN6_DRAWING_RECTANGLE_DW2_MAX_Y__MASK			0xffff0000
1517
#define GEN6_DRAWING_RECTANGLE_DW2_MAX_Y__SHIFT			16
1518
#define GEN6_DRAWING_RECTANGLE_DW2_MAX_X__MASK			0x0000ffff
1519
#define GEN6_DRAWING_RECTANGLE_DW2_MAX_X__SHIFT			0
1520
 
1521
#define GEN6_DRAWING_RECTANGLE_DW3_ORIGIN_Y__MASK		0xffff0000
1522
#define GEN6_DRAWING_RECTANGLE_DW3_ORIGIN_Y__SHIFT		16
1523
#define GEN6_DRAWING_RECTANGLE_DW3_ORIGIN_X__MASK		0x0000ffff
1524
#define GEN6_DRAWING_RECTANGLE_DW3_ORIGIN_X__SHIFT		0
1525
 
1526
#define GEN6_3DSTATE_DEPTH_BUFFER__SIZE				8
1527
 
1528
 
1529
#define GEN6_DEPTH_DW1_TYPE__MASK				0xe0000000
1530
#define GEN6_DEPTH_DW1_TYPE__SHIFT				29
1531
#define GEN6_DEPTH_DW1_TILING__MASK				0x0c000000
1532
#define GEN6_DEPTH_DW1_TILING__SHIFT				26
1533
#define GEN6_DEPTH_DW1_STR_MODE__MASK				0x01800000
1534
#define GEN6_DEPTH_DW1_STR_MODE__SHIFT				23
1535
#define GEN6_DEPTH_DW1_HIZ_ENABLE				(0x1 << 22)
1536
#define GEN6_DEPTH_DW1_SEPARATE_STENCIL				(0x1 << 21)
1537
#define GEN6_DEPTH_DW1_FORMAT__MASK				0x001c0000
1538
#define GEN6_DEPTH_DW1_FORMAT__SHIFT				18
1539
#define GEN6_DEPTH_DW1_PITCH__MASK				0x0001ffff
1540
#define GEN6_DEPTH_DW1_PITCH__SHIFT				0
1541
 
1542
 
1543
#define GEN6_DEPTH_DW3_HEIGHT__MASK				0xfff80000
1544
#define GEN6_DEPTH_DW3_HEIGHT__SHIFT				19
1545
#define GEN6_DEPTH_DW3_WIDTH__MASK				0x0007ffc0
1546
#define GEN6_DEPTH_DW3_WIDTH__SHIFT				6
1547
#define GEN6_DEPTH_DW3_LOD__MASK				0x0000003c
1548
#define GEN6_DEPTH_DW3_LOD__SHIFT				2
1549
#define GEN6_DEPTH_DW3_MIPLAYOUT__MASK				0x00000002
1550
#define GEN6_DEPTH_DW3_MIPLAYOUT__SHIFT				1
1551
#define GEN6_DEPTH_DW3_MIPLAYOUT_BELOW				(0x0 << 1)
1552
#define GEN6_DEPTH_DW3_MIPLAYOUT_RIGHT				(0x1 << 1)
1553
 
1554
#define GEN6_DEPTH_DW4_DEPTH__MASK				0xffe00000
1555
#define GEN6_DEPTH_DW4_DEPTH__SHIFT				21
1556
#define GEN6_DEPTH_DW4_MIN_ARRAY_ELEMENT__MASK			0x001ffc00
1557
#define GEN6_DEPTH_DW4_MIN_ARRAY_ELEMENT__SHIFT			10
1558
#define GEN6_DEPTH_DW4_RT_VIEW_EXTENT__MASK			0x000003fe
1559
#define GEN6_DEPTH_DW4_RT_VIEW_EXTENT__SHIFT			1
1560
 
1561
#define GEN6_DEPTH_DW5_OFFSET_Y__MASK				0xffff0000
1562
#define GEN6_DEPTH_DW5_OFFSET_Y__SHIFT				16
1563
#define GEN6_DEPTH_DW5_OFFSET_X__MASK				0x0000ffff
1564
#define GEN6_DEPTH_DW5_OFFSET_X__SHIFT				0
1565
 
1566
#define GEN6_DEPTH_DW6_MOCS__MASK				0xf8000000
1567
#define GEN6_DEPTH_DW6_MOCS__SHIFT				27
1568
 
1569
 
1570
 
1571
#define GEN7_DEPTH_DW1_TYPE__MASK				0xe0000000
1572
#define GEN7_DEPTH_DW1_TYPE__SHIFT				29
1573
#define GEN7_DEPTH_DW1_DEPTH_WRITE_ENABLE			(0x1 << 28)
1574
#define GEN7_DEPTH_DW1_STENCIL_WRITE_ENABLE			(0x1 << 27)
1575
#define GEN7_DEPTH_DW1_HIZ_ENABLE				(0x1 << 22)
1576
#define GEN7_DEPTH_DW1_FORMAT__MASK				0x001c0000
1577
#define GEN7_DEPTH_DW1_FORMAT__SHIFT				18
1578
#define GEN7_DEPTH_DW1_PITCH__MASK				0x0003ffff
1579
#define GEN7_DEPTH_DW1_PITCH__SHIFT				0
1580
 
1581
 
1582
#define GEN7_DEPTH_DW3_HEIGHT__MASK				0xfffc0000
1583
#define GEN7_DEPTH_DW3_HEIGHT__SHIFT				18
1584
#define GEN7_DEPTH_DW3_WIDTH__MASK				0x0003fff0
1585
#define GEN7_DEPTH_DW3_WIDTH__SHIFT				4
1586
#define GEN7_DEPTH_DW3_LOD__MASK				0x0000000f
1587
#define GEN7_DEPTH_DW3_LOD__SHIFT				0
1588
 
1589
#define GEN7_DEPTH_DW4_DEPTH__MASK				0xffe00000
1590
#define GEN7_DEPTH_DW4_DEPTH__SHIFT				21
1591
#define GEN7_DEPTH_DW4_MIN_ARRAY_ELEMENT__MASK			0x001ffc00
1592
#define GEN7_DEPTH_DW4_MIN_ARRAY_ELEMENT__SHIFT			10
1593
#define GEN7_DEPTH_DW4_MOCS__MASK				0x0000000f
1594
#define GEN7_DEPTH_DW4_MOCS__SHIFT				0
1595
 
1596
#define GEN7_DEPTH_DW5_OFFSET_Y__MASK				0xffff0000
1597
#define GEN7_DEPTH_DW5_OFFSET_Y__SHIFT				16
1598
#define GEN7_DEPTH_DW5_OFFSET_X__MASK				0x0000ffff
1599
#define GEN7_DEPTH_DW5_OFFSET_X__SHIFT				0
1600
 
1601
#define GEN7_DEPTH_DW6_RT_VIEW_EXTENT__MASK			0xffe00000
1602
#define GEN7_DEPTH_DW6_RT_VIEW_EXTENT__SHIFT			21
1603
 
1604
 
1605
 
1606
#define GEN8_DEPTH_DW1_TYPE__MASK				0xe0000000
1607
#define GEN8_DEPTH_DW1_TYPE__SHIFT				29
1608
#define GEN8_DEPTH_DW1_DEPTH_WRITE_ENABLE			(0x1 << 28)
1609
#define GEN8_DEPTH_DW1_STENCIL_WRITE_ENABLE			(0x1 << 27)
1610
#define GEN8_DEPTH_DW1_HIZ_ENABLE				(0x1 << 22)
1611
#define GEN8_DEPTH_DW1_FORMAT__MASK				0x001c0000
1612
#define GEN8_DEPTH_DW1_FORMAT__SHIFT				18
1613
#define GEN8_DEPTH_DW1_PITCH__MASK				0x0003ffff
1614
#define GEN8_DEPTH_DW1_PITCH__SHIFT				0
1615
 
1616
 
1617
 
1618
#define GEN8_DEPTH_DW4_HEIGHT__MASK				0xfffc0000
1619
#define GEN8_DEPTH_DW4_HEIGHT__SHIFT				18
1620
#define GEN8_DEPTH_DW4_WIDTH__MASK				0x0003fff0
1621
#define GEN8_DEPTH_DW4_WIDTH__SHIFT				4
1622
#define GEN8_DEPTH_DW4_LOD__MASK				0x0000000f
1623
#define GEN8_DEPTH_DW4_LOD__SHIFT				0
1624
 
1625
#define GEN8_DEPTH_DW5_DEPTH__MASK				0xffe00000
1626
#define GEN8_DEPTH_DW5_DEPTH__SHIFT				21
1627
#define GEN8_DEPTH_DW5_MIN_ARRAY_ELEMENT__MASK			0x001ffc00
1628
#define GEN8_DEPTH_DW5_MIN_ARRAY_ELEMENT__SHIFT			10
1629
#define GEN8_DEPTH_DW5_MOCS__MASK				0x0000007f
1630
#define GEN8_DEPTH_DW5_MOCS__SHIFT				0
1631
 
1632
#define GEN8_DEPTH_DW6_OFFSET_Y__MASK				0xffff0000
1633
#define GEN8_DEPTH_DW6_OFFSET_Y__SHIFT				16
1634
#define GEN8_DEPTH_DW6_OFFSET_X__MASK				0x0000ffff
1635
#define GEN8_DEPTH_DW6_OFFSET_X__SHIFT				0
1636
 
1637
#define GEN8_DEPTH_DW7_RT_VIEW_EXTENT__MASK			0xffe00000
1638
#define GEN8_DEPTH_DW7_RT_VIEW_EXTENT__SHIFT			21
1639
#define GEN8_DEPTH_DW7_QPITCH__MASK				0x00007fff
1640
#define GEN8_DEPTH_DW7_QPITCH__SHIFT				0
1641
 
1642
#define GEN6_3DSTATE_POLY_STIPPLE_OFFSET__SIZE			2
1643
 
1644
 
1645
#define GEN6_POLY_STIPPLE_OFFSET_DW1_X__MASK			0x00001f00
1646
#define GEN6_POLY_STIPPLE_OFFSET_DW1_X__SHIFT			8
1647
#define GEN6_POLY_STIPPLE_OFFSET_DW1_Y__MASK			0x0000001f
1648
#define GEN6_POLY_STIPPLE_OFFSET_DW1_Y__SHIFT			0
1649
 
1650
#define GEN6_3DSTATE_POLY_STIPPLE_PATTERN__SIZE			33
1651
 
1652
 
1653
 
1654
#define GEN6_3DSTATE_LINE_STIPPLE__SIZE				3
1655
 
1656
 
1657
#define GEN6_LINE_STIPPLE_DW1_PATTERN__MASK			0x0000ffff
1658
#define GEN6_LINE_STIPPLE_DW1_PATTERN__SHIFT			0
1659
 
1660
#define GEN6_LINE_STIPPLE_DW2_INVERSE_REPEAT_COUNT__MASK	0xffff0000
1661
#define GEN6_LINE_STIPPLE_DW2_INVERSE_REPEAT_COUNT__SHIFT	16
1662
#define GEN6_LINE_STIPPLE_DW2_INVERSE_REPEAT_COUNT__RADIX	13
1663
#define GEN7_LINE_STIPPLE_DW2_INVERSE_REPEAT_COUNT__MASK	0xffff8000
1664
#define GEN7_LINE_STIPPLE_DW2_INVERSE_REPEAT_COUNT__SHIFT	15
1665
#define GEN7_LINE_STIPPLE_DW2_INVERSE_REPEAT_COUNT__RADIX	16
1666
#define GEN6_LINE_STIPPLE_DW2_REPEAT_COUNT__MASK		0x000001ff
1667
#define GEN6_LINE_STIPPLE_DW2_REPEAT_COUNT__SHIFT		0
1668
 
1669
#define GEN6_3DSTATE_AA_LINE_PARAMETERS__SIZE			3
1670
 
1671
 
1672
#define GEN6_AA_LINE_DW1_BIAS__MASK				0x00ff0000
1673
#define GEN6_AA_LINE_DW1_BIAS__SHIFT				16
1674
#define GEN6_AA_LINE_DW1_BIAS__RADIX				8
1675
#define GEN6_AA_LINE_DW1_SLOPE__MASK				0x000000ff
1676
#define GEN6_AA_LINE_DW1_SLOPE__SHIFT				0
1677
#define GEN6_AA_LINE_DW1_SLOPE__RADIX				8
1678
 
1679
#define GEN6_AA_LINE_DW2_CAP_BIAS__MASK				0x00ff0000
1680
#define GEN6_AA_LINE_DW2_CAP_BIAS__SHIFT			16
1681
#define GEN6_AA_LINE_DW2_CAP_BIAS__RADIX			8
1682
#define GEN6_AA_LINE_DW2_CAP_SLOPE__MASK			0x000000ff
1683
#define GEN6_AA_LINE_DW2_CAP_SLOPE__SHIFT			0
1684
#define GEN6_AA_LINE_DW2_CAP_SLOPE__RADIX			8
1685
 
1686
#define GEN6_3DSTATE_GS_SVB_INDEX__SIZE				4
1687
 
1688
 
1689
#define GEN6_SVBI_DW1_INDEX__MASK				0x60000000
1690
#define GEN6_SVBI_DW1_INDEX__SHIFT				29
1691
#define GEN6_SVBI_DW1_LOAD_INTERNAL_VERTEX_COUNT		(0x1 << 0)
1692
 
1693
 
1694
 
1695
#define GEN6_3DSTATE_MULTISAMPLE__SIZE				4
1696
 
1697
 
1698
#define GEN75_MULTISAMPLE_DW1_DX9_MULTISAMPLE_ENABLE		(0x1 << 5)
1699
#define GEN6_MULTISAMPLE_DW1_PIXLOC__MASK			0x00000010
1700
#define GEN6_MULTISAMPLE_DW1_PIXLOC__SHIFT			4
1701
#define GEN6_MULTISAMPLE_DW1_PIXLOC_CENTER			(0x0 << 4)
1702
#define GEN6_MULTISAMPLE_DW1_PIXLOC_UL_CORNER			(0x1 << 4)
1703
#define GEN6_MULTISAMPLE_DW1_NUMSAMPLES__MASK			0x0000000e
1704
#define GEN6_MULTISAMPLE_DW1_NUMSAMPLES__SHIFT			1
1705
#define GEN6_MULTISAMPLE_DW1_NUMSAMPLES_1			(0x0 << 1)
1706
#define GEN8_MULTISAMPLE_DW1_NUMSAMPLES_2			(0x1 << 1)
1707
#define GEN6_MULTISAMPLE_DW1_NUMSAMPLES_4			(0x2 << 1)
1708
#define GEN7_MULTISAMPLE_DW1_NUMSAMPLES_8			(0x3 << 1)
1709
#define GEN8_MULTISAMPLE_DW1_NUMSAMPLES_16			(0x4 << 1)
1710
 
1711
 
1712
 
1713
#define GEN8_3DSTATE_SAMPLE_PATTERN__SIZE			9
1714
 
1715
 
1716
 
1717
 
1718
 
1719
#define GEN8_SAMPLE_PATTERN_DW8_1X__MASK			0x00ff0000
1720
#define GEN8_SAMPLE_PATTERN_DW8_1X__SHIFT			16
1721
#define GEN8_SAMPLE_PATTERN_DW8_2X__MASK			0x0000ffff
1722
#define GEN8_SAMPLE_PATTERN_DW8_2X__SHIFT			0
1723
 
1724
#define GEN6_3DSTATE_STENCIL_BUFFER__SIZE			5
1725
 
1726
 
1727
#define GEN75_STENCIL_DW1_STENCIL_BUFFER_ENABLE			(0x1 << 31)
1728
#define GEN6_STENCIL_DW1_MOCS__MASK				0x1e000000
1729
#define GEN6_STENCIL_DW1_MOCS__SHIFT				25
1730
#define GEN8_STENCIL_DW1_MOCS__MASK				0x1fc00000
1731
#define GEN8_STENCIL_DW1_MOCS__SHIFT				22
1732
#define GEN6_STENCIL_DW1_PITCH__MASK				0x0001ffff
1733
#define GEN6_STENCIL_DW1_PITCH__SHIFT				0
1734
 
1735
 
1736
 
1737
#define GEN8_STENCIL_DW4_QPITCH__MASK				0x00007fff
1738
#define GEN8_STENCIL_DW4_QPITCH__SHIFT				0
1739
 
1740
#define GEN6_3DSTATE_HIER_DEPTH_BUFFER__SIZE			5
1741
 
1742
 
1743
#define GEN6_HIZ_DW1_MOCS__MASK					0x1e000000
1744
#define GEN6_HIZ_DW1_MOCS__SHIFT				25
1745
#define GEN8_HIZ_DW1_MOCS__MASK					0xfe000000
1746
#define GEN8_HIZ_DW1_MOCS__SHIFT				25
1747
#define GEN6_HIZ_DW1_PITCH__MASK				0x0001ffff
1748
#define GEN6_HIZ_DW1_PITCH__SHIFT				0
1749
 
1750
 
1751
 
1752
#define GEN8_HIZ_DW4_QPITCH__MASK				0x00007fff
1753
#define GEN8_HIZ_DW4_QPITCH__SHIFT				0
1754
 
1755
#define GEN6_3DSTATE_CLEAR_PARAMS__SIZE				3
1756
 
1757
#define GEN6_CLEAR_PARAMS_DW0_VALID				(0x1 << 15)
1758
 
1759
 
1760
 
1761
#define GEN7_CLEAR_PARAMS_DW2_VALID				(0x1 << 0)
1762
 
1763
#define GEN6_3DPRIMITIVE__SIZE					7
1764
 
1765
#define GEN6_3DPRIM_DW0_ACCESS__MASK				0x00008000
1766
#define GEN6_3DPRIM_DW0_ACCESS__SHIFT				15
1767
#define GEN6_3DPRIM_DW0_ACCESS_SEQUENTIAL			(0x0 << 15)
1768
#define GEN6_3DPRIM_DW0_ACCESS_RANDOM				(0x1 << 15)
1769
#define GEN6_3DPRIM_DW0_TYPE__MASK				0x00007c00
1770
#define GEN6_3DPRIM_DW0_TYPE__SHIFT				10
1771
#define GEN6_3DPRIM_DW0_USE_INTERNAL_VERTEX_COUNT		(0x1 << 9)
1772
 
1773
 
1774
 
1775
 
1776
 
1777
 
1778
 
1779
#define GEN7_3DPRIM_DW0_INDIRECT_PARAM_ENABLE			(0x1 << 10)
1780
#define GEN75_3DPRIM_DW0_UAV_COHERENCY_REQUIRED			(0x1 << 9)
1781
#define GEN7_3DPRIM_DW0_PREDICATE_ENABLE			(0x1 << 8)
1782
 
1783
#define GEN7_3DPRIM_DW1_END_OFFSET_ENABLE			(0x1 << 9)
1784
#define GEN7_3DPRIM_DW1_ACCESS__MASK				0x00000100
1785
#define GEN7_3DPRIM_DW1_ACCESS__SHIFT				8
1786
#define GEN7_3DPRIM_DW1_ACCESS_SEQUENTIAL			(0x0 << 8)
1787
#define GEN7_3DPRIM_DW1_ACCESS_RANDOM				(0x1 << 8)
1788
#define GEN7_3DPRIM_DW1_TYPE__MASK				0x0000003f
1789
#define GEN7_3DPRIM_DW1_TYPE__SHIFT				0
1790
 
1791
 
1792
 
1793
 
1794
 
1795
 
1796
 
1797
#endif /* GEN_RENDER_3D_XML */