2 * RadeonHD R6xx, R7xx Register documentation
4 * Copyright (C) 2008-2009 Advanced Micro Devices, Inc.
5 * Copyright (C) 2008-2009 Matthias Hopf
7 * Permission is hereby granted, free of charge, to any person obtaining a
8 * copy of this software and associated documentation files (the "Software"),
9 * to deal in the Software without restriction, including without limitation
10 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11 * and/or sell copies of the Software, and to permit persons to whom the
12 * Software is furnished to do so, subject to the following conditions:
14 * The above copyright notice and this permission notice shall be included
15 * in all copies or substantial portions of the Software.
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20 * THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
21 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
22 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 VGT_VTX_VECT_EJECT_REG = 0x000088b0,
31 PRIM_COUNT_mask = 0x3ff << 0,
33 VGT_LAST_COPY_STATE = 0x000088c0,
34 SRC_STATE_ID_mask = 0x07 << 0,
35 SRC_STATE_ID_shift = 0,
36 DST_STATE_ID_mask = 0x07 << 16,
37 DST_STATE_ID_shift = 16,
38 VGT_CACHE_INVALIDATION = 0x000088c4,
39 CACHE_INVALIDATION_mask = 0x03 << 0,
40 CACHE_INVALIDATION_shift = 0,
44 VS_NO_EXTRA_BUFFER_bit = 1 << 5,
45 VGT_GS_PER_ES = 0x000088c8,
46 VGT_ES_PER_GS = 0x000088cc,
47 VGT_GS_VERTEX_REUSE = 0x000088d4,
48 VERT_REUSE_mask = 0x1f << 0,
50 VGT_MC_LAT_CNTL = 0x000088d8,
51 MC_TIME_STAMP_RES_mask = 0x03 << 0,
52 MC_TIME_STAMP_RES_shift = 0,
53 X_0_992_MAX_LATENCY = 0x00,
54 X_0_496_MAX_LATENCY = 0x01,
55 X_0_248_MAX_LATENCY = 0x02,
56 X_0_124_MAX_LATENCY = 0x03,
57 VGT_GS_PER_VS = 0x000088e8,
58 GS_PER_VS_mask = 0x0f << 0,
60 VGT_CNTL_STATUS = 0x000088f0,
61 VGT_OUT_INDX_BUSY_bit = 1 << 0,
62 VGT_OUT_BUSY_bit = 1 << 1,
63 VGT_PT_BUSY_bit = 1 << 2,
64 VGT_TE_BUSY_bit = 1 << 3,
65 VGT_VR_BUSY_bit = 1 << 4,
66 VGT_GRP_BUSY_bit = 1 << 5,
67 VGT_DMA_REQ_BUSY_bit = 1 << 6,
68 VGT_DMA_BUSY_bit = 1 << 7,
69 VGT_GS_BUSY_bit = 1 << 8,
70 VGT_BUSY_bit = 1 << 9,
71 VGT_PRIMITIVE_TYPE = 0x00008958,
72 VGT_PRIMITIVE_TYPE__PRIM_TYPE_mask = 0x3f << 0,
73 VGT_PRIMITIVE_TYPE__PRIM_TYPE_shift = 0,
75 DI_PT_POINTLIST = 0x01,
76 DI_PT_LINELIST = 0x02,
77 DI_PT_LINESTRIP = 0x03,
80 DI_PT_TRISTRIP = 0x06,
81 DI_PT_UNUSED_0 = 0x07,
82 DI_PT_UNUSED_1 = 0x08,
83 DI_PT_UNUSED_2 = 0x09,
84 DI_PT_LINELIST_ADJ = 0x0a,
85 DI_PT_LINESTRIP_ADJ = 0x0b,
86 DI_PT_TRILIST_ADJ = 0x0c,
87 DI_PT_TRISTRIP_ADJ = 0x0d,
88 DI_PT_UNUSED_3 = 0x0e,
89 DI_PT_UNUSED_4 = 0x0f,
90 DI_PT_TRI_WITH_WFLAGS = 0x10,
91 DI_PT_RECTLIST = 0x11,
92 DI_PT_LINELOOP = 0x12,
93 DI_PT_QUADLIST = 0x13,
94 DI_PT_QUADSTRIP = 0x14,
96 DI_PT_2D_COPY_RECT_LIST_V0 = 0x16,
97 DI_PT_2D_COPY_RECT_LIST_V1 = 0x17,
98 DI_PT_2D_COPY_RECT_LIST_V2 = 0x18,
99 DI_PT_2D_COPY_RECT_LIST_V3 = 0x19,
100 DI_PT_2D_FILL_RECT_LIST = 0x1a,
101 DI_PT_2D_LINE_STRIP = 0x1b,
102 DI_PT_2D_TRI_STRIP = 0x1c,
103 VGT_INDEX_TYPE = 0x0000895c,
104 INDEX_TYPE_mask = 0x03 << 0,
105 INDEX_TYPE_shift = 0,
106 DI_INDEX_SIZE_16_BIT = 0x00,
107 DI_INDEX_SIZE_32_BIT = 0x01,
108 VGT_STRMOUT_BUFFER_FILLED_SIZE_0 = 0x00008960,
109 VGT_STRMOUT_BUFFER_FILLED_SIZE_1 = 0x00008964,
110 VGT_STRMOUT_BUFFER_FILLED_SIZE_2 = 0x00008968,
111 VGT_STRMOUT_BUFFER_FILLED_SIZE_3 = 0x0000896c,
112 VGT_NUM_INDICES = 0x00008970,
113 VGT_NUM_INSTANCES = 0x00008974,
114 PA_CL_CNTL_STATUS = 0x00008a10,
115 CL_BUSY_bit = 1 << 31,
116 PA_CL_ENHANCE = 0x00008a14,
117 CLIP_VTX_REORDER_ENA_bit = 1 << 0,
118 NUM_CLIP_SEQ_mask = 0x03 << 1,
119 NUM_CLIP_SEQ_shift = 1,
120 CLIPPED_PRIM_SEQ_STALL_bit = 1 << 3,
121 VE_NAN_PROC_DISABLE_bit = 1 << 4,
122 PA_SU_CNTL_STATUS = 0x00008a50,
123 SU_BUSY_bit = 1 << 31,
124 PA_SC_LINE_STIPPLE_STATE = 0x00008b10,
125 CURRENT_PTR_mask = 0x0f << 0,
126 CURRENT_PTR_shift = 0,
127 CURRENT_COUNT_mask = 0xff << 8,
128 CURRENT_COUNT_shift = 8,
129 PA_SC_MULTI_CHIP_CNTL = 0x00008b20,
130 LOG2_NUM_CHIPS_mask = 0x07 << 0,
131 LOG2_NUM_CHIPS_shift = 0,
132 MULTI_CHIP_TILE_SIZE_mask = 0x03 << 3,
133 MULTI_CHIP_TILE_SIZE_shift = 3,
134 X_16_X_16_PIXEL_TILE_PER_CHIP = 0x00,
135 X_32_X_32_PIXEL_TILE_PER_CHIP = 0x01,
136 X_64_X_64_PIXEL_TILE_PER_CHIP = 0x02,
137 X_128X128_PIXEL_TILE_PER_CHIP = 0x03,
138 CHIP_TILE_X_LOC_mask = 0x07 << 5,
139 CHIP_TILE_X_LOC_shift = 5,
140 CHIP_TILE_Y_LOC_mask = 0x07 << 8,
141 CHIP_TILE_Y_LOC_shift = 8,
142 CHIP_SUPER_TILE_B_bit = 1 << 11,
143 PA_SC_AA_SAMPLE_LOCS_2S = 0x00008b40,
144 S0_X_mask = 0x0f << 0,
146 S0_Y_mask = 0x0f << 4,
148 S1_X_mask = 0x0f << 8,
150 S1_Y_mask = 0x0f << 12,
152 PA_SC_AA_SAMPLE_LOCS_4S = 0x00008b44,
153 /* S0_X_mask = 0x0f << 0, */
154 /* S0_X_shift = 0, */
155 /* S0_Y_mask = 0x0f << 4, */
156 /* S0_Y_shift = 4, */
157 /* S1_X_mask = 0x0f << 8, */
158 /* S1_X_shift = 8, */
159 /* S1_Y_mask = 0x0f << 12, */
160 /* S1_Y_shift = 12, */
161 S2_X_mask = 0x0f << 16,
163 S2_Y_mask = 0x0f << 20,
165 S3_X_mask = 0x0f << 24,
167 S3_Y_mask = 0x0f << 28,
169 PA_SC_AA_SAMPLE_LOCS_8S_WD0 = 0x00008b48,
170 /* S0_X_mask = 0x0f << 0, */
171 /* S0_X_shift = 0, */
172 /* S0_Y_mask = 0x0f << 4, */
173 /* S0_Y_shift = 4, */
174 /* S1_X_mask = 0x0f << 8, */
175 /* S1_X_shift = 8, */
176 /* S1_Y_mask = 0x0f << 12, */
177 /* S1_Y_shift = 12, */
178 /* S2_X_mask = 0x0f << 16, */
179 /* S2_X_shift = 16, */
180 /* S2_Y_mask = 0x0f << 20, */
181 /* S2_Y_shift = 20, */
182 /* S3_X_mask = 0x0f << 24, */
183 /* S3_X_shift = 24, */
184 /* S3_Y_mask = 0x0f << 28, */
185 /* S3_Y_shift = 28, */
186 PA_SC_AA_SAMPLE_LOCS_8S_WD1 = 0x00008b4c,
187 S4_X_mask = 0x0f << 0,
189 S4_Y_mask = 0x0f << 4,
191 S5_X_mask = 0x0f << 8,
193 S5_Y_mask = 0x0f << 12,
195 S6_X_mask = 0x0f << 16,
197 S6_Y_mask = 0x0f << 20,
199 S7_X_mask = 0x0f << 24,
201 S7_Y_mask = 0x0f << 28,
203 PA_SC_CNTL_STATUS = 0x00008be0,
204 MPASS_OVERFLOW_bit = 1 << 30,
205 PA_SC_ENHANCE = 0x00008bf0,
206 FORCE_EOV_MAX_CLK_CNT_mask = 0xfff << 0,
207 FORCE_EOV_MAX_CLK_CNT_shift = 0,
208 FORCE_EOV_MAX_TILE_CNT_mask = 0xfff << 12,
209 FORCE_EOV_MAX_TILE_CNT_shift = 12,
210 SQ_CONFIG = 0x00008c00,
211 VC_ENABLE_bit = 1 << 0,
212 EXPORT_SRC_C_bit = 1 << 1,
213 DX9_CONSTS_bit = 1 << 2,
214 ALU_INST_PREFER_VECTOR_bit = 1 << 3,
215 SQ_CONFIG__DX10_CLAMP_bit = 1 << 4,
216 ALU_PREFER_ONE_WATERFALL_bit = 1 << 5,
217 ALU_MAX_ONE_WATERFALL_bit = 1 << 6,
218 CLAUSE_SEQ_PRIO_mask = 0x03 << 8,
219 CLAUSE_SEQ_PRIO_shift = 8,
220 SQ_CL_PRIO_RND_ROBIN = 0x00,
221 SQ_CL_PRIO_MACRO_SEQ = 0x01,
222 SQ_CL_PRIO_NONE = 0x02,
223 PS_PRIO_mask = 0x03 << 24,
225 VS_PRIO_mask = 0x03 << 26,
227 GS_PRIO_mask = 0x03 << 28,
229 ES_PRIO_mask = 0x03 << 30,
231 SQ_GPR_RESOURCE_MGMT_1 = 0x00008c04,
232 NUM_PS_GPRS_mask = 0xff << 0,
233 NUM_PS_GPRS_shift = 0,
234 NUM_VS_GPRS_mask = 0xff << 16,
235 NUM_VS_GPRS_shift = 16,
236 NUM_CLAUSE_TEMP_GPRS_mask = 0x0f << 28,
237 NUM_CLAUSE_TEMP_GPRS_shift = 28,
238 SQ_GPR_RESOURCE_MGMT_2 = 0x00008c08,
239 NUM_GS_GPRS_mask = 0xff << 0,
240 NUM_GS_GPRS_shift = 0,
241 NUM_ES_GPRS_mask = 0xff << 16,
242 NUM_ES_GPRS_shift = 16,
243 SQ_THREAD_RESOURCE_MGMT = 0x00008c0c,
244 NUM_PS_THREADS_mask = 0xff << 0,
245 NUM_PS_THREADS_shift = 0,
246 NUM_VS_THREADS_mask = 0xff << 8,
247 NUM_VS_THREADS_shift = 8,
248 NUM_GS_THREADS_mask = 0xff << 16,
249 NUM_GS_THREADS_shift = 16,
250 NUM_ES_THREADS_mask = 0xff << 24,
251 NUM_ES_THREADS_shift = 24,
252 SQ_STACK_RESOURCE_MGMT_1 = 0x00008c10,
253 NUM_PS_STACK_ENTRIES_mask = 0xfff << 0,
254 NUM_PS_STACK_ENTRIES_shift = 0,
255 NUM_VS_STACK_ENTRIES_mask = 0xfff << 16,
256 NUM_VS_STACK_ENTRIES_shift = 16,
257 SQ_STACK_RESOURCE_MGMT_2 = 0x00008c14,
258 NUM_GS_STACK_ENTRIES_mask = 0xfff << 0,
259 NUM_GS_STACK_ENTRIES_shift = 0,
260 NUM_ES_STACK_ENTRIES_mask = 0xfff << 16,
261 NUM_ES_STACK_ENTRIES_shift = 16,
262 SQ_ESGS_RING_BASE = 0x00008c40,
263 SQ_ESGS_RING_SIZE = 0x00008c44,
264 SQ_GSVS_RING_BASE = 0x00008c48,
265 SQ_GSVS_RING_SIZE = 0x00008c4c,
266 SQ_ESTMP_RING_BASE = 0x00008c50,
267 SQ_ESTMP_RING_SIZE = 0x00008c54,
268 SQ_GSTMP_RING_BASE = 0x00008c58,
269 SQ_GSTMP_RING_SIZE = 0x00008c5c,
270 SQ_VSTMP_RING_BASE = 0x00008c60,
271 SQ_VSTMP_RING_SIZE = 0x00008c64,
272 SQ_PSTMP_RING_BASE = 0x00008c68,
273 SQ_PSTMP_RING_SIZE = 0x00008c6c,
274 SQ_FBUF_RING_BASE = 0x00008c70,
275 SQ_FBUF_RING_SIZE = 0x00008c74,
276 SQ_REDUC_RING_BASE = 0x00008c78,
277 SQ_REDUC_RING_SIZE = 0x00008c7c,
278 SQ_ALU_WORD1_OP3 = 0x00008dfc,
279 SRC2_SEL_mask = 0x1ff << 0,
283 SQ_ALU_SRC_1_INT = 0xfa,
284 SQ_ALU_SRC_M_1_INT = 0xfb,
285 SQ_ALU_SRC_0_5 = 0xfc,
286 SQ_ALU_SRC_LITERAL = 0xfd,
287 SQ_ALU_SRC_PV = 0xfe,
288 SQ_ALU_SRC_PS = 0xff,
289 SRC2_REL_bit = 1 << 9,
290 SRC2_CHAN_mask = 0x03 << 10,
291 SRC2_CHAN_shift = 10,
296 SRC2_NEG_bit = 1 << 12,
297 SQ_ALU_WORD1_OP3__ALU_INST_mask = 0x1f << 13,
298 SQ_ALU_WORD1_OP3__ALU_INST_shift = 13,
299 SQ_OP3_INST_MUL_LIT = 0x0c,
300 SQ_OP3_INST_MUL_LIT_M2 = 0x0d,
301 SQ_OP3_INST_MUL_LIT_M4 = 0x0e,
302 SQ_OP3_INST_MUL_LIT_D2 = 0x0f,
303 SQ_OP3_INST_MULADD = 0x10,
304 SQ_OP3_INST_MULADD_M2 = 0x11,
305 SQ_OP3_INST_MULADD_M4 = 0x12,
306 SQ_OP3_INST_MULADD_D2 = 0x13,
307 SQ_OP3_INST_MULADD_IEEE = 0x14,
308 SQ_OP3_INST_MULADD_IEEE_M2 = 0x15,
309 SQ_OP3_INST_MULADD_IEEE_M4 = 0x16,
310 SQ_OP3_INST_MULADD_IEEE_D2 = 0x17,
311 SQ_OP3_INST_CNDE = 0x18,
312 SQ_OP3_INST_CNDGT = 0x19,
313 SQ_OP3_INST_CNDGE = 0x1a,
314 SQ_OP3_INST_CNDE_INT = 0x1c,
315 SQ_OP3_INST_CNDGT_INT = 0x1d,
316 SQ_OP3_INST_CNDGE_INT = 0x1e,
317 SQ_TEX_WORD2 = 0x00008dfc,
318 OFFSET_X_mask = 0x1f << 0,
320 OFFSET_Y_mask = 0x1f << 5,
322 OFFSET_Z_mask = 0x1f << 10,
324 SAMPLER_ID_mask = 0x1f << 15,
325 SAMPLER_ID_shift = 15,
326 SQ_TEX_WORD2__SRC_SEL_X_mask = 0x07 << 20,
327 SQ_TEX_WORD2__SRC_SEL_X_shift = 20,
334 SRC_SEL_Y_mask = 0x07 << 23,
335 SRC_SEL_Y_shift = 23,
336 /* SQ_SEL_X = 0x00, */
337 /* SQ_SEL_Y = 0x01, */
338 /* SQ_SEL_Z = 0x02, */
339 /* SQ_SEL_W = 0x03, */
340 /* SQ_SEL_0 = 0x04, */
341 /* SQ_SEL_1 = 0x05, */
342 SRC_SEL_Z_mask = 0x07 << 26,
343 SRC_SEL_Z_shift = 26,
344 /* SQ_SEL_X = 0x00, */
345 /* SQ_SEL_Y = 0x01, */
346 /* SQ_SEL_Z = 0x02, */
347 /* SQ_SEL_W = 0x03, */
348 /* SQ_SEL_0 = 0x04, */
349 /* SQ_SEL_1 = 0x05, */
350 SRC_SEL_W_mask = 0x07 << 29,
351 SRC_SEL_W_shift = 29,
352 /* SQ_SEL_X = 0x00, */
353 /* SQ_SEL_Y = 0x01, */
354 /* SQ_SEL_Z = 0x02, */
355 /* SQ_SEL_W = 0x03, */
356 /* SQ_SEL_0 = 0x04, */
357 /* SQ_SEL_1 = 0x05, */
358 SQ_CF_ALLOC_EXPORT_WORD1 = 0x00008dfc,
359 BURST_COUNT_mask = 0x0f << 17,
360 BURST_COUNT_shift = 17,
361 END_OF_PROGRAM_bit = 1 << 21,
362 VALID_PIXEL_MODE_bit = 1 << 22,
363 SQ_CF_ALLOC_EXPORT_WORD1__CF_INST_mask = 0x7f << 23,
364 SQ_CF_ALLOC_EXPORT_WORD1__CF_INST_shift = 23,
365 SQ_CF_INST_MEM_STREAM0 = 0x20,
366 SQ_CF_INST_MEM_STREAM1 = 0x21,
367 SQ_CF_INST_MEM_STREAM2 = 0x22,
368 SQ_CF_INST_MEM_STREAM3 = 0x23,
369 SQ_CF_INST_MEM_SCRATCH = 0x24,
370 SQ_CF_INST_MEM_REDUCTION = 0x25,
371 SQ_CF_INST_MEM_RING = 0x26,
372 SQ_CF_INST_EXPORT = 0x27,
373 SQ_CF_INST_EXPORT_DONE = 0x28,
374 WHOLE_QUAD_MODE_bit = 1 << 30,
375 BARRIER_bit = 1 << 31,
376 SQ_CF_ALU_WORD1 = 0x00008dfc,
377 KCACHE_MODE1_mask = 0x03 << 0,
378 KCACHE_MODE1_shift = 0,
379 SQ_CF_KCACHE_NOP = 0x00,
380 SQ_CF_KCACHE_LOCK_1 = 0x01,
381 SQ_CF_KCACHE_LOCK_2 = 0x02,
382 SQ_CF_KCACHE_LOCK_LOOP_INDEX = 0x03,
383 KCACHE_ADDR0_mask = 0xff << 2,
384 KCACHE_ADDR0_shift = 2,
385 KCACHE_ADDR1_mask = 0xff << 10,
386 KCACHE_ADDR1_shift = 10,
387 SQ_CF_ALU_WORD1__COUNT_mask = 0x7f << 18,
388 SQ_CF_ALU_WORD1__COUNT_shift = 18,
389 SQ_CF_ALU_WORD1__ALT_CONST_bit = 1 << 25,
390 SQ_CF_ALU_WORD1__CF_INST_mask = 0x0f << 26,
391 SQ_CF_ALU_WORD1__CF_INST_shift = 26,
392 SQ_CF_INST_ALU = 0x08,
393 SQ_CF_INST_ALU_PUSH_BEFORE = 0x09,
394 SQ_CF_INST_ALU_POP_AFTER = 0x0a,
395 SQ_CF_INST_ALU_POP2_AFTER = 0x0b,
396 SQ_CF_INST_ALU_CONTINUE = 0x0d,
397 SQ_CF_INST_ALU_BREAK = 0x0e,
398 SQ_CF_INST_ALU_ELSE_AFTER = 0x0f,
399 /* WHOLE_QUAD_MODE_bit = 1 << 30, */
400 /* BARRIER_bit = 1 << 31, */
401 SQ_TEX_WORD1 = 0x00008dfc,
402 SQ_TEX_WORD1__DST_GPR_mask = 0x7f << 0,
403 SQ_TEX_WORD1__DST_GPR_shift = 0,
404 SQ_TEX_WORD1__DST_REL_bit = 1 << 7,
405 SQ_TEX_WORD1__DST_SEL_X_mask = 0x07 << 9,
406 SQ_TEX_WORD1__DST_SEL_X_shift = 9,
407 /* SQ_SEL_X = 0x00, */
408 /* SQ_SEL_Y = 0x01, */
409 /* SQ_SEL_Z = 0x02, */
410 /* SQ_SEL_W = 0x03, */
411 /* SQ_SEL_0 = 0x04, */
412 /* SQ_SEL_1 = 0x05, */
414 SQ_TEX_WORD1__DST_SEL_Y_mask = 0x07 << 12,
415 SQ_TEX_WORD1__DST_SEL_Y_shift = 12,
416 /* SQ_SEL_X = 0x00, */
417 /* SQ_SEL_Y = 0x01, */
418 /* SQ_SEL_Z = 0x02, */
419 /* SQ_SEL_W = 0x03, */
420 /* SQ_SEL_0 = 0x04, */
421 /* SQ_SEL_1 = 0x05, */
422 /* SQ_SEL_MASK = 0x07, */
423 SQ_TEX_WORD1__DST_SEL_Z_mask = 0x07 << 15,
424 SQ_TEX_WORD1__DST_SEL_Z_shift = 15,
425 /* SQ_SEL_X = 0x00, */
426 /* SQ_SEL_Y = 0x01, */
427 /* SQ_SEL_Z = 0x02, */
428 /* SQ_SEL_W = 0x03, */
429 /* SQ_SEL_0 = 0x04, */
430 /* SQ_SEL_1 = 0x05, */
431 /* SQ_SEL_MASK = 0x07, */
432 SQ_TEX_WORD1__DST_SEL_W_mask = 0x07 << 18,
433 SQ_TEX_WORD1__DST_SEL_W_shift = 18,
434 /* SQ_SEL_X = 0x00, */
435 /* SQ_SEL_Y = 0x01, */
436 /* SQ_SEL_Z = 0x02, */
437 /* SQ_SEL_W = 0x03, */
438 /* SQ_SEL_0 = 0x04, */
439 /* SQ_SEL_1 = 0x05, */
440 /* SQ_SEL_MASK = 0x07, */
441 SQ_TEX_WORD1__LOD_BIAS_mask = 0x7f << 21,
442 SQ_TEX_WORD1__LOD_BIAS_shift = 21,
443 COORD_TYPE_X_bit = 1 << 28,
444 COORD_TYPE_Y_bit = 1 << 29,
445 COORD_TYPE_Z_bit = 1 << 30,
446 COORD_TYPE_W_bit = 1 << 31,
447 SQ_VTX_WORD0 = 0x00008dfc,
448 VTX_INST_mask = 0x1f << 0,
450 SQ_VTX_INST_FETCH = 0x00,
451 SQ_VTX_INST_SEMANTIC = 0x01,
452 FETCH_TYPE_mask = 0x03 << 5,
453 FETCH_TYPE_shift = 5,
454 SQ_VTX_FETCH_VERTEX_DATA = 0x00,
455 SQ_VTX_FETCH_INSTANCE_DATA = 0x01,
456 SQ_VTX_FETCH_NO_INDEX_OFFSET = 0x02,
457 FETCH_WHOLE_QUAD_bit = 1 << 7,
458 BUFFER_ID_mask = 0xff << 8,
460 SRC_GPR_mask = 0x7f << 16,
462 SRC_REL_bit = 1 << 23,
463 SQ_VTX_WORD0__SRC_SEL_X_mask = 0x03 << 24,
464 SQ_VTX_WORD0__SRC_SEL_X_shift = 24,
465 /* SQ_SEL_X = 0x00, */
466 /* SQ_SEL_Y = 0x01, */
467 /* SQ_SEL_Z = 0x02, */
468 /* SQ_SEL_W = 0x03, */
469 MEGA_FETCH_COUNT_mask = 0x3f << 26,
470 MEGA_FETCH_COUNT_shift = 26,
471 SQ_CF_ALLOC_EXPORT_WORD1_SWIZ = 0x00008dfc,
472 SEL_X_mask = 0x07 << 0,
474 /* SQ_SEL_X = 0x00, */
475 /* SQ_SEL_Y = 0x01, */
476 /* SQ_SEL_Z = 0x02, */
477 /* SQ_SEL_W = 0x03, */
478 /* SQ_SEL_0 = 0x04, */
479 /* SQ_SEL_1 = 0x05, */
480 /* SQ_SEL_MASK = 0x07, */
481 SEL_Y_mask = 0x07 << 3,
483 /* SQ_SEL_X = 0x00, */
484 /* SQ_SEL_Y = 0x01, */
485 /* SQ_SEL_Z = 0x02, */
486 /* SQ_SEL_W = 0x03, */
487 /* SQ_SEL_0 = 0x04, */
488 /* SQ_SEL_1 = 0x05, */
489 /* SQ_SEL_MASK = 0x07, */
490 SEL_Z_mask = 0x07 << 6,
492 /* SQ_SEL_X = 0x00, */
493 /* SQ_SEL_Y = 0x01, */
494 /* SQ_SEL_Z = 0x02, */
495 /* SQ_SEL_W = 0x03, */
496 /* SQ_SEL_0 = 0x04, */
497 /* SQ_SEL_1 = 0x05, */
498 /* SQ_SEL_MASK = 0x07, */
499 SEL_W_mask = 0x07 << 9,
501 /* SQ_SEL_X = 0x00, */
502 /* SQ_SEL_Y = 0x01, */
503 /* SQ_SEL_Z = 0x02, */
504 /* SQ_SEL_W = 0x03, */
505 /* SQ_SEL_0 = 0x04, */
506 /* SQ_SEL_1 = 0x05, */
507 /* SQ_SEL_MASK = 0x07, */
508 SQ_ALU_WORD1 = 0x00008dfc,
509 ENCODING_mask = 0x07 << 15,
511 BANK_SWIZZLE_mask = 0x07 << 18,
512 BANK_SWIZZLE_shift = 18,
513 SQ_ALU_VEC_012 = 0x00,
514 SQ_ALU_VEC_021 = 0x01,
515 SQ_ALU_VEC_120 = 0x02,
516 SQ_ALU_VEC_102 = 0x03,
517 SQ_ALU_VEC_201 = 0x04,
518 SQ_ALU_VEC_210 = 0x05,
519 SQ_ALU_WORD1__DST_GPR_mask = 0x7f << 21,
520 SQ_ALU_WORD1__DST_GPR_shift = 21,
521 SQ_ALU_WORD1__DST_REL_bit = 1 << 28,
522 DST_CHAN_mask = 0x03 << 29,
528 SQ_ALU_WORD1__CLAMP_bit = 1 << 31,
529 SQ_CF_ALU_WORD0 = 0x00008dfc,
530 SQ_CF_ALU_WORD0__ADDR_mask = 0x3fffff << 0,
531 SQ_CF_ALU_WORD0__ADDR_shift = 0,
532 KCACHE_BANK0_mask = 0x0f << 22,
533 KCACHE_BANK0_shift = 22,
534 KCACHE_BANK1_mask = 0x0f << 26,
535 KCACHE_BANK1_shift = 26,
536 KCACHE_MODE0_mask = 0x03 << 30,
537 KCACHE_MODE0_shift = 30,
538 /* SQ_CF_KCACHE_NOP = 0x00, */
539 /* SQ_CF_KCACHE_LOCK_1 = 0x01, */
540 /* SQ_CF_KCACHE_LOCK_2 = 0x02, */
541 /* SQ_CF_KCACHE_LOCK_LOOP_INDEX = 0x03, */
542 SQ_VTX_WORD2 = 0x00008dfc,
543 SQ_VTX_WORD2__OFFSET_mask = 0xffff << 0,
544 SQ_VTX_WORD2__OFFSET_shift = 0,
545 SQ_VTX_WORD2__ENDIAN_SWAP_mask = 0x03 << 16,
546 SQ_VTX_WORD2__ENDIAN_SWAP_shift = 16,
547 SQ_ENDIAN_NONE = 0x00,
548 SQ_ENDIAN_8IN16 = 0x01,
549 SQ_ENDIAN_8IN32 = 0x02,
550 CONST_BUF_NO_STRIDE_bit = 1 << 18,
551 MEGA_FETCH_bit = 1 << 19,
552 SQ_VTX_WORD2__ALT_CONST_bit = 1 << 20,
553 SQ_ALU_WORD1_OP2_V2 = 0x00008dfc,
554 SRC0_ABS_bit = 1 << 0,
555 SRC1_ABS_bit = 1 << 1,
556 UPDATE_EXECUTE_MASK_bit = 1 << 2,
557 UPDATE_PRED_bit = 1 << 3,
558 WRITE_MASK_bit = 1 << 4,
559 SQ_ALU_WORD1_OP2_V2__OMOD_mask = 0x03 << 5,
560 SQ_ALU_WORD1_OP2_V2__OMOD_shift = 5,
561 SQ_ALU_OMOD_OFF = 0x00,
562 SQ_ALU_OMOD_M2 = 0x01,
563 SQ_ALU_OMOD_M4 = 0x02,
564 SQ_ALU_OMOD_D2 = 0x03,
565 SQ_ALU_WORD1_OP2_V2__ALU_INST_mask = 0x7ff << 7,
566 SQ_ALU_WORD1_OP2_V2__ALU_INST_shift = 7,
567 SQ_OP2_INST_ADD = 0x00,
568 SQ_OP2_INST_MUL = 0x01,
569 SQ_OP2_INST_MUL_IEEE = 0x02,
570 SQ_OP2_INST_MAX = 0x03,
571 SQ_OP2_INST_MIN = 0x04,
572 SQ_OP2_INST_MAX_DX10 = 0x05,
573 SQ_OP2_INST_MIN_DX10 = 0x06,
574 SQ_OP2_INST_SETE = 0x08,
575 SQ_OP2_INST_SETGT = 0x09,
576 SQ_OP2_INST_SETGE = 0x0a,
577 SQ_OP2_INST_SETNE = 0x0b,
578 SQ_OP2_INST_SETE_DX10 = 0x0c,
579 SQ_OP2_INST_SETGT_DX10 = 0x0d,
580 SQ_OP2_INST_SETGE_DX10 = 0x0e,
581 SQ_OP2_INST_SETNE_DX10 = 0x0f,
582 SQ_OP2_INST_FRACT = 0x10,
583 SQ_OP2_INST_TRUNC = 0x11,
584 SQ_OP2_INST_CEIL = 0x12,
585 SQ_OP2_INST_RNDNE = 0x13,
586 SQ_OP2_INST_FLOOR = 0x14,
587 SQ_OP2_INST_MOVA = 0x15,
588 SQ_OP2_INST_MOVA_FLOOR = 0x16,
589 SQ_OP2_INST_MOVA_INT = 0x18,
590 SQ_OP2_INST_MOV = 0x19,
591 SQ_OP2_INST_NOP = 0x1a,
592 SQ_OP2_INST_PRED_SETGT_UINT = 0x1e,
593 SQ_OP2_INST_PRED_SETGE_UINT = 0x1f,
594 SQ_OP2_INST_PRED_SETE = 0x20,
595 SQ_OP2_INST_PRED_SETGT = 0x21,
596 SQ_OP2_INST_PRED_SETGE = 0x22,
597 SQ_OP2_INST_PRED_SETNE = 0x23,
598 SQ_OP2_INST_PRED_SET_INV = 0x24,
599 SQ_OP2_INST_PRED_SET_POP = 0x25,
600 SQ_OP2_INST_PRED_SET_CLR = 0x26,
601 SQ_OP2_INST_PRED_SET_RESTORE = 0x27,
602 SQ_OP2_INST_PRED_SETE_PUSH = 0x28,
603 SQ_OP2_INST_PRED_SETGT_PUSH = 0x29,
604 SQ_OP2_INST_PRED_SETGE_PUSH = 0x2a,
605 SQ_OP2_INST_PRED_SETNE_PUSH = 0x2b,
606 SQ_OP2_INST_KILLE = 0x2c,
607 SQ_OP2_INST_KILLGT = 0x2d,
608 SQ_OP2_INST_KILLGE = 0x2e,
609 SQ_OP2_INST_KILLNE = 0x2f,
610 SQ_OP2_INST_AND_INT = 0x30,
611 SQ_OP2_INST_OR_INT = 0x31,
612 SQ_OP2_INST_XOR_INT = 0x32,
613 SQ_OP2_INST_NOT_INT = 0x33,
614 SQ_OP2_INST_ADD_INT = 0x34,
615 SQ_OP2_INST_SUB_INT = 0x35,
616 SQ_OP2_INST_MAX_INT = 0x36,
617 SQ_OP2_INST_MIN_INT = 0x37,
618 SQ_OP2_INST_MAX_UINT = 0x38,
619 SQ_OP2_INST_MIN_UINT = 0x39,
620 SQ_OP2_INST_SETE_INT = 0x3a,
621 SQ_OP2_INST_SETGT_INT = 0x3b,
622 SQ_OP2_INST_SETGE_INT = 0x3c,
623 SQ_OP2_INST_SETNE_INT = 0x3d,
624 SQ_OP2_INST_SETGT_UINT = 0x3e,
625 SQ_OP2_INST_SETGE_UINT = 0x3f,
626 SQ_OP2_INST_KILLGT_UINT = 0x40,
627 SQ_OP2_INST_KILLGE_UINT = 0x41,
628 SQ_OP2_INST_PRED_SETE_INT = 0x42,
629 SQ_OP2_INST_PRED_SETGT_INT = 0x43,
630 SQ_OP2_INST_PRED_SETGE_INT = 0x44,
631 SQ_OP2_INST_PRED_SETNE_INT = 0x45,
632 SQ_OP2_INST_KILLE_INT = 0x46,
633 SQ_OP2_INST_KILLGT_INT = 0x47,
634 SQ_OP2_INST_KILLGE_INT = 0x48,
635 SQ_OP2_INST_KILLNE_INT = 0x49,
636 SQ_OP2_INST_PRED_SETE_PUSH_INT = 0x4a,
637 SQ_OP2_INST_PRED_SETGT_PUSH_INT = 0x4b,
638 SQ_OP2_INST_PRED_SETGE_PUSH_INT = 0x4c,
639 SQ_OP2_INST_PRED_SETNE_PUSH_INT = 0x4d,
640 SQ_OP2_INST_PRED_SETLT_PUSH_INT = 0x4e,
641 SQ_OP2_INST_PRED_SETLE_PUSH_INT = 0x4f,
642 SQ_OP2_INST_DOT4 = 0x50,
643 SQ_OP2_INST_DOT4_IEEE = 0x51,
644 SQ_OP2_INST_CUBE = 0x52,
645 SQ_OP2_INST_MAX4 = 0x53,
646 SQ_OP2_INST_MOVA_GPR_INT = 0x60,
647 SQ_OP2_INST_EXP_IEEE = 0x61,
648 SQ_OP2_INST_LOG_CLAMPED = 0x62,
649 SQ_OP2_INST_LOG_IEEE = 0x63,
650 SQ_OP2_INST_RECIP_CLAMPED = 0x64,
651 SQ_OP2_INST_RECIP_FF = 0x65,
652 SQ_OP2_INST_RECIP_IEEE = 0x66,
653 SQ_OP2_INST_RECIPSQRT_CLAMPED = 0x67,
654 SQ_OP2_INST_RECIPSQRT_FF = 0x68,
655 SQ_OP2_INST_RECIPSQRT_IEEE = 0x69,
656 SQ_OP2_INST_SQRT_IEEE = 0x6a,
657 SQ_OP2_INST_FLT_TO_INT = 0x6b,
658 SQ_OP2_INST_INT_TO_FLT = 0x6c,
659 SQ_OP2_INST_UINT_TO_FLT = 0x6d,
660 SQ_OP2_INST_SIN = 0x6e,
661 SQ_OP2_INST_COS = 0x6f,
662 SQ_OP2_INST_ASHR_INT = 0x70,
663 SQ_OP2_INST_LSHR_INT = 0x71,
664 SQ_OP2_INST_LSHL_INT = 0x72,
665 SQ_OP2_INST_MULLO_INT = 0x73,
666 SQ_OP2_INST_MULHI_INT = 0x74,
667 SQ_OP2_INST_MULLO_UINT = 0x75,
668 SQ_OP2_INST_MULHI_UINT = 0x76,
669 SQ_OP2_INST_RECIP_INT = 0x77,
670 SQ_OP2_INST_RECIP_UINT = 0x78,
671 SQ_OP2_INST_FLT_TO_UINT = 0x79,
672 SQ_CF_ALLOC_EXPORT_WORD1_BUF = 0x00008dfc,
673 ARRAY_SIZE_mask = 0xfff << 0,
674 ARRAY_SIZE_shift = 0,
675 COMP_MASK_mask = 0x0f << 12,
676 COMP_MASK_shift = 12,
677 SQ_CF_WORD0 = 0x00008dfc,
678 SQ_CF_ALLOC_EXPORT_WORD0 = 0x00008dfc,
679 ARRAY_BASE_mask = 0x1fff << 0,
680 ARRAY_BASE_shift = 0,
681 SQ_CF_ALLOC_EXPORT_WORD0__TYPE_mask = 0x03 << 13,
682 SQ_CF_ALLOC_EXPORT_WORD0__TYPE_shift = 13,
683 SQ_EXPORT_PIXEL = 0x00,
684 SQ_EXPORT_POS = 0x01,
685 SQ_EXPORT_PARAM = 0x02,
686 X_UNUSED_FOR_SX_EXPORTS = 0x03,
687 RW_GPR_mask = 0x7f << 15,
689 RW_REL_bit = 1 << 22,
690 INDEX_GPR_mask = 0x7f << 23,
691 INDEX_GPR_shift = 23,
692 ELEM_SIZE_mask = 0x03 << 30,
693 ELEM_SIZE_shift = 30,
694 SQ_VTX_WORD1 = 0x00008dfc,
695 SQ_VTX_WORD1__DST_SEL_X_mask = 0x07 << 9,
696 SQ_VTX_WORD1__DST_SEL_X_shift = 9,
697 /* SQ_SEL_X = 0x00, */
698 /* SQ_SEL_Y = 0x01, */
699 /* SQ_SEL_Z = 0x02, */
700 /* SQ_SEL_W = 0x03, */
701 /* SQ_SEL_0 = 0x04, */
702 /* SQ_SEL_1 = 0x05, */
703 /* SQ_SEL_MASK = 0x07, */
704 SQ_VTX_WORD1__DST_SEL_Y_mask = 0x07 << 12,
705 SQ_VTX_WORD1__DST_SEL_Y_shift = 12,
706 /* SQ_SEL_X = 0x00, */
707 /* SQ_SEL_Y = 0x01, */
708 /* SQ_SEL_Z = 0x02, */
709 /* SQ_SEL_W = 0x03, */
710 /* SQ_SEL_0 = 0x04, */
711 /* SQ_SEL_1 = 0x05, */
712 /* SQ_SEL_MASK = 0x07, */
713 SQ_VTX_WORD1__DST_SEL_Z_mask = 0x07 << 15,
714 SQ_VTX_WORD1__DST_SEL_Z_shift = 15,
715 /* SQ_SEL_X = 0x00, */
716 /* SQ_SEL_Y = 0x01, */
717 /* SQ_SEL_Z = 0x02, */
718 /* SQ_SEL_W = 0x03, */
719 /* SQ_SEL_0 = 0x04, */
720 /* SQ_SEL_1 = 0x05, */
721 /* SQ_SEL_MASK = 0x07, */
722 SQ_VTX_WORD1__DST_SEL_W_mask = 0x07 << 18,
723 SQ_VTX_WORD1__DST_SEL_W_shift = 18,
724 /* SQ_SEL_X = 0x00, */
725 /* SQ_SEL_Y = 0x01, */
726 /* SQ_SEL_Z = 0x02, */
727 /* SQ_SEL_W = 0x03, */
728 /* SQ_SEL_0 = 0x04, */
729 /* SQ_SEL_1 = 0x05, */
730 /* SQ_SEL_MASK = 0x07, */
731 USE_CONST_FIELDS_bit = 1 << 21,
732 SQ_VTX_WORD1__DATA_FORMAT_mask = 0x3f << 22,
733 SQ_VTX_WORD1__DATA_FORMAT_shift = 22,
734 SQ_VTX_WORD1__NUM_FORMAT_ALL_mask = 0x03 << 28,
735 SQ_VTX_WORD1__NUM_FORMAT_ALL_shift = 28,
736 SQ_NUM_FORMAT_NORM = 0x00,
737 SQ_NUM_FORMAT_INT = 0x01,
738 SQ_NUM_FORMAT_SCALED = 0x02,
739 SQ_VTX_WORD1__FORMAT_COMP_ALL_bit = 1 << 30,
740 SQ_VTX_WORD1__SRF_MODE_ALL_bit = 1 << 31,
741 SQ_ALU_WORD1_OP2 = 0x00008dfc,
742 /* SRC0_ABS_bit = 1 << 0, */
743 /* SRC1_ABS_bit = 1 << 1, */
744 /* UPDATE_EXECUTE_MASK_bit = 1 << 2, */
745 /* UPDATE_PRED_bit = 1 << 3, */
746 /* WRITE_MASK_bit = 1 << 4, */
747 FOG_MERGE_bit = 1 << 5,
748 SQ_ALU_WORD1_OP2__OMOD_mask = 0x03 << 6,
749 SQ_ALU_WORD1_OP2__OMOD_shift = 6,
750 /* SQ_ALU_OMOD_OFF = 0x00, */
751 /* SQ_ALU_OMOD_M2 = 0x01, */
752 /* SQ_ALU_OMOD_M4 = 0x02, */
753 /* SQ_ALU_OMOD_D2 = 0x03, */
754 SQ_ALU_WORD1_OP2__ALU_INST_mask = 0x3ff << 8,
755 SQ_ALU_WORD1_OP2__ALU_INST_shift = 8,
756 /* SQ_OP2_INST_ADD = 0x00, */
757 /* SQ_OP2_INST_MUL = 0x01, */
758 /* SQ_OP2_INST_MUL_IEEE = 0x02, */
759 /* SQ_OP2_INST_MAX = 0x03, */
760 /* SQ_OP2_INST_MIN = 0x04, */
761 /* SQ_OP2_INST_MAX_DX10 = 0x05, */
762 /* SQ_OP2_INST_MIN_DX10 = 0x06, */
763 /* SQ_OP2_INST_SETE = 0x08, */
764 /* SQ_OP2_INST_SETGT = 0x09, */
765 /* SQ_OP2_INST_SETGE = 0x0a, */
766 /* SQ_OP2_INST_SETNE = 0x0b, */
767 /* SQ_OP2_INST_SETE_DX10 = 0x0c, */
768 /* SQ_OP2_INST_SETGT_DX10 = 0x0d, */
769 /* SQ_OP2_INST_SETGE_DX10 = 0x0e, */
770 /* SQ_OP2_INST_SETNE_DX10 = 0x0f, */
771 /* SQ_OP2_INST_FRACT = 0x10, */
772 /* SQ_OP2_INST_TRUNC = 0x11, */
773 /* SQ_OP2_INST_CEIL = 0x12, */
774 /* SQ_OP2_INST_RNDNE = 0x13, */
775 /* SQ_OP2_INST_FLOOR = 0x14, */
776 /* SQ_OP2_INST_MOVA = 0x15, */
777 /* SQ_OP2_INST_MOVA_FLOOR = 0x16, */
778 /* SQ_OP2_INST_MOVA_INT = 0x18, */
779 /* SQ_OP2_INST_MOV = 0x19, */
780 /* SQ_OP2_INST_NOP = 0x1a, */
781 /* SQ_OP2_INST_PRED_SETGT_UINT = 0x1e, */
782 /* SQ_OP2_INST_PRED_SETGE_UINT = 0x1f, */
783 /* SQ_OP2_INST_PRED_SETE = 0x20, */
784 /* SQ_OP2_INST_PRED_SETGT = 0x21, */
785 /* SQ_OP2_INST_PRED_SETGE = 0x22, */
786 /* SQ_OP2_INST_PRED_SETNE = 0x23, */
787 /* SQ_OP2_INST_PRED_SET_INV = 0x24, */
788 /* SQ_OP2_INST_PRED_SET_POP = 0x25, */
789 /* SQ_OP2_INST_PRED_SET_CLR = 0x26, */
790 /* SQ_OP2_INST_PRED_SET_RESTORE = 0x27, */
791 /* SQ_OP2_INST_PRED_SETE_PUSH = 0x28, */
792 /* SQ_OP2_INST_PRED_SETGT_PUSH = 0x29, */
793 /* SQ_OP2_INST_PRED_SETGE_PUSH = 0x2a, */
794 /* SQ_OP2_INST_PRED_SETNE_PUSH = 0x2b, */
795 /* SQ_OP2_INST_KILLE = 0x2c, */
796 /* SQ_OP2_INST_KILLGT = 0x2d, */
797 /* SQ_OP2_INST_KILLGE = 0x2e, */
798 /* SQ_OP2_INST_KILLNE = 0x2f, */
799 /* SQ_OP2_INST_AND_INT = 0x30, */
800 /* SQ_OP2_INST_OR_INT = 0x31, */
801 /* SQ_OP2_INST_XOR_INT = 0x32, */
802 /* SQ_OP2_INST_NOT_INT = 0x33, */
803 /* SQ_OP2_INST_ADD_INT = 0x34, */
804 /* SQ_OP2_INST_SUB_INT = 0x35, */
805 /* SQ_OP2_INST_MAX_INT = 0x36, */
806 /* SQ_OP2_INST_MIN_INT = 0x37, */
807 /* SQ_OP2_INST_MAX_UINT = 0x38, */
808 /* SQ_OP2_INST_MIN_UINT = 0x39, */
809 /* SQ_OP2_INST_SETE_INT = 0x3a, */
810 /* SQ_OP2_INST_SETGT_INT = 0x3b, */
811 /* SQ_OP2_INST_SETGE_INT = 0x3c, */
812 /* SQ_OP2_INST_SETNE_INT = 0x3d, */
813 /* SQ_OP2_INST_SETGT_UINT = 0x3e, */
814 /* SQ_OP2_INST_SETGE_UINT = 0x3f, */
815 /* SQ_OP2_INST_KILLGT_UINT = 0x40, */
816 /* SQ_OP2_INST_KILLGE_UINT = 0x41, */
817 /* SQ_OP2_INST_PRED_SETE_INT = 0x42, */
818 /* SQ_OP2_INST_PRED_SETGT_INT = 0x43, */
819 /* SQ_OP2_INST_PRED_SETGE_INT = 0x44, */
820 /* SQ_OP2_INST_PRED_SETNE_INT = 0x45, */
821 /* SQ_OP2_INST_KILLE_INT = 0x46, */
822 /* SQ_OP2_INST_KILLGT_INT = 0x47, */
823 /* SQ_OP2_INST_KILLGE_INT = 0x48, */
824 /* SQ_OP2_INST_KILLNE_INT = 0x49, */
825 /* SQ_OP2_INST_PRED_SETE_PUSH_INT = 0x4a, */
826 /* SQ_OP2_INST_PRED_SETGT_PUSH_INT = 0x4b, */
827 /* SQ_OP2_INST_PRED_SETGE_PUSH_INT = 0x4c, */
828 /* SQ_OP2_INST_PRED_SETNE_PUSH_INT = 0x4d, */
829 /* SQ_OP2_INST_PRED_SETLT_PUSH_INT = 0x4e, */
830 /* SQ_OP2_INST_PRED_SETLE_PUSH_INT = 0x4f, */
831 /* SQ_OP2_INST_DOT4 = 0x50, */
832 /* SQ_OP2_INST_DOT4_IEEE = 0x51, */
833 /* SQ_OP2_INST_CUBE = 0x52, */
834 /* SQ_OP2_INST_MAX4 = 0x53, */
835 /* SQ_OP2_INST_MOVA_GPR_INT = 0x60, */
836 /* SQ_OP2_INST_EXP_IEEE = 0x61, */
837 /* SQ_OP2_INST_LOG_CLAMPED = 0x62, */
838 /* SQ_OP2_INST_LOG_IEEE = 0x63, */
839 /* SQ_OP2_INST_RECIP_CLAMPED = 0x64, */
840 /* SQ_OP2_INST_RECIP_FF = 0x65, */
841 /* SQ_OP2_INST_RECIP_IEEE = 0x66, */
842 /* SQ_OP2_INST_RECIPSQRT_CLAMPED = 0x67, */
843 /* SQ_OP2_INST_RECIPSQRT_FF = 0x68, */
844 /* SQ_OP2_INST_RECIPSQRT_IEEE = 0x69, */
845 /* SQ_OP2_INST_SQRT_IEEE = 0x6a, */
846 /* SQ_OP2_INST_FLT_TO_INT = 0x6b, */
847 /* SQ_OP2_INST_INT_TO_FLT = 0x6c, */
848 /* SQ_OP2_INST_UINT_TO_FLT = 0x6d, */
849 /* SQ_OP2_INST_SIN = 0x6e, */
850 /* SQ_OP2_INST_COS = 0x6f, */
851 /* SQ_OP2_INST_ASHR_INT = 0x70, */
852 /* SQ_OP2_INST_LSHR_INT = 0x71, */
853 /* SQ_OP2_INST_LSHL_INT = 0x72, */
854 /* SQ_OP2_INST_MULLO_INT = 0x73, */
855 /* SQ_OP2_INST_MULHI_INT = 0x74, */
856 /* SQ_OP2_INST_MULLO_UINT = 0x75, */
857 /* SQ_OP2_INST_MULHI_UINT = 0x76, */
858 /* SQ_OP2_INST_RECIP_INT = 0x77, */
859 /* SQ_OP2_INST_RECIP_UINT = 0x78, */
860 /* SQ_OP2_INST_FLT_TO_UINT = 0x79, */
861 SQ_CF_WORD1 = 0x00008dfc,
862 POP_COUNT_mask = 0x07 << 0,
864 CF_CONST_mask = 0x1f << 3,
866 COND_mask = 0x03 << 8,
868 SQ_CF_COND_ACTIVE = 0x00,
869 SQ_CF_COND_FALSE = 0x01,
870 SQ_CF_COND_BOOL = 0x02,
871 SQ_CF_COND_NOT_BOOL = 0x03,
872 SQ_CF_WORD1__COUNT_mask = 0x07 << 10,
873 SQ_CF_WORD1__COUNT_shift = 10,
874 CALL_COUNT_mask = 0x3f << 13,
875 CALL_COUNT_shift = 13,
876 COUNT_3_bit = 1 << 19,
877 /* END_OF_PROGRAM_bit = 1 << 21, */
878 /* VALID_PIXEL_MODE_bit = 1 << 22, */
879 SQ_CF_WORD1__CF_INST_mask = 0x7f << 23,
880 SQ_CF_WORD1__CF_INST_shift = 23,
881 SQ_CF_INST_NOP = 0x00,
882 SQ_CF_INST_TEX = 0x01,
883 SQ_CF_INST_VTX = 0x02,
884 SQ_CF_INST_VTX_TC = 0x03,
885 SQ_CF_INST_LOOP_START = 0x04,
886 SQ_CF_INST_LOOP_END = 0x05,
887 SQ_CF_INST_LOOP_START_DX10 = 0x06,
888 SQ_CF_INST_LOOP_START_NO_AL = 0x07,
889 SQ_CF_INST_LOOP_CONTINUE = 0x08,
890 SQ_CF_INST_LOOP_BREAK = 0x09,
891 SQ_CF_INST_JUMP = 0x0a,
892 SQ_CF_INST_PUSH = 0x0b,
893 SQ_CF_INST_PUSH_ELSE = 0x0c,
894 SQ_CF_INST_ELSE = 0x0d,
895 SQ_CF_INST_POP = 0x0e,
896 SQ_CF_INST_POP_JUMP = 0x0f,
897 SQ_CF_INST_POP_PUSH = 0x10,
898 SQ_CF_INST_POP_PUSH_ELSE = 0x11,
899 SQ_CF_INST_CALL = 0x12,
900 SQ_CF_INST_CALL_FS = 0x13,
901 SQ_CF_INST_RETURN = 0x14,
902 SQ_CF_INST_EMIT_VERTEX = 0x15,
903 SQ_CF_INST_EMIT_CUT_VERTEX = 0x16,
904 SQ_CF_INST_CUT_VERTEX = 0x17,
905 SQ_CF_INST_KILL = 0x18,
906 /* WHOLE_QUAD_MODE_bit = 1 << 30, */
907 /* BARRIER_bit = 1 << 31, */
908 SQ_VTX_WORD1_SEM = 0x00008dfc,
909 SEMANTIC_ID_mask = 0xff << 0,
910 SEMANTIC_ID_shift = 0,
911 SQ_TEX_WORD0 = 0x00008dfc,
912 TEX_INST_mask = 0x1f << 0,
914 SQ_TEX_INST_VTX_FETCH = 0x00,
915 SQ_TEX_INST_VTX_SEMANTIC = 0x01,
916 SQ_TEX_INST_LD = 0x03,
917 SQ_TEX_INST_GET_TEXTURE_RESINFO = 0x04,
918 SQ_TEX_INST_GET_NUMBER_OF_SAMPLES = 0x05,
919 SQ_TEX_INST_GET_LOD = 0x06,
920 SQ_TEX_INST_GET_GRADIENTS_H = 0x07,
921 SQ_TEX_INST_GET_GRADIENTS_V = 0x08,
922 SQ_TEX_INST_GET_LERP = 0x09,
923 SQ_TEX_INST_RESERVED_10 = 0x0a,
924 SQ_TEX_INST_SET_GRADIENTS_H = 0x0b,
925 SQ_TEX_INST_SET_GRADIENTS_V = 0x0c,
926 SQ_TEX_INST_PASS = 0x0d,
927 X_Z_SET_INDEX_FOR_ARRAY_OF_CUBEMAPS = 0x0e,
928 SQ_TEX_INST_SAMPLE = 0x10,
929 SQ_TEX_INST_SAMPLE_L = 0x11,
930 SQ_TEX_INST_SAMPLE_LB = 0x12,
931 SQ_TEX_INST_SAMPLE_LZ = 0x13,
932 SQ_TEX_INST_SAMPLE_G = 0x14,
933 SQ_TEX_INST_SAMPLE_G_L = 0x15,
934 SQ_TEX_INST_SAMPLE_G_LB = 0x16,
935 SQ_TEX_INST_SAMPLE_G_LZ = 0x17,
936 SQ_TEX_INST_SAMPLE_C = 0x18,
937 SQ_TEX_INST_SAMPLE_C_L = 0x19,
938 SQ_TEX_INST_SAMPLE_C_LB = 0x1a,
939 SQ_TEX_INST_SAMPLE_C_LZ = 0x1b,
940 SQ_TEX_INST_SAMPLE_C_G = 0x1c,
941 SQ_TEX_INST_SAMPLE_C_G_L = 0x1d,
942 SQ_TEX_INST_SAMPLE_C_G_LB = 0x1e,
943 SQ_TEX_INST_SAMPLE_C_G_LZ = 0x1f,
944 BC_FRAC_MODE_bit = 1 << 5,
945 /* FETCH_WHOLE_QUAD_bit = 1 << 7, */
946 RESOURCE_ID_mask = 0xff << 8,
947 RESOURCE_ID_shift = 8,
948 /* SRC_GPR_mask = 0x7f << 16, */
949 /* SRC_GPR_shift = 16, */
950 /* SRC_REL_bit = 1 << 23, */
951 SQ_TEX_WORD0__ALT_CONST_bit = 1 << 24,
952 SQ_VTX_WORD1_GPR = 0x00008dfc,
953 SQ_VTX_WORD1_GPR__DST_GPR_mask = 0x7f << 0,
954 SQ_VTX_WORD1_GPR__DST_GPR_shift = 0,
955 SQ_VTX_WORD1_GPR__DST_REL_bit = 1 << 7,
956 SQ_ALU_WORD0 = 0x00008dfc,
957 SRC0_SEL_mask = 0x1ff << 0,
959 /* SQ_ALU_SRC_0 = 0xf8, */
960 /* SQ_ALU_SRC_1 = 0xf9, */
961 /* SQ_ALU_SRC_1_INT = 0xfa, */
962 /* SQ_ALU_SRC_M_1_INT = 0xfb, */
963 /* SQ_ALU_SRC_0_5 = 0xfc, */
964 /* SQ_ALU_SRC_LITERAL = 0xfd, */
965 /* SQ_ALU_SRC_PV = 0xfe, */
966 /* SQ_ALU_SRC_PS = 0xff, */
967 SRC0_REL_bit = 1 << 9,
968 SRC0_CHAN_mask = 0x03 << 10,
969 SRC0_CHAN_shift = 10,
970 /* SQ_CHAN_X = 0x00, */
971 /* SQ_CHAN_Y = 0x01, */
972 /* SQ_CHAN_Z = 0x02, */
973 /* SQ_CHAN_W = 0x03, */
974 SRC0_NEG_bit = 1 << 12,
975 SRC1_SEL_mask = 0x1ff << 13,
977 /* SQ_ALU_SRC_0 = 0xf8, */
978 /* SQ_ALU_SRC_1 = 0xf9, */
979 /* SQ_ALU_SRC_1_INT = 0xfa, */
980 /* SQ_ALU_SRC_M_1_INT = 0xfb, */
981 /* SQ_ALU_SRC_0_5 = 0xfc, */
982 /* SQ_ALU_SRC_LITERAL = 0xfd, */
983 /* SQ_ALU_SRC_PV = 0xfe, */
984 /* SQ_ALU_SRC_PS = 0xff, */
985 SRC1_REL_bit = 1 << 22,
986 SRC1_CHAN_mask = 0x03 << 23,
987 SRC1_CHAN_shift = 23,
988 /* SQ_CHAN_X = 0x00, */
989 /* SQ_CHAN_Y = 0x01, */
990 /* SQ_CHAN_Z = 0x02, */
991 /* SQ_CHAN_W = 0x03, */
992 SRC1_NEG_bit = 1 << 25,
993 INDEX_MODE_mask = 0x07 << 26,
994 INDEX_MODE_shift = 26,
995 SQ_INDEX_AR_X = 0x00,
996 SQ_INDEX_AR_Y = 0x01,
997 SQ_INDEX_AR_Z = 0x02,
998 SQ_INDEX_AR_W = 0x03,
999 SQ_INDEX_LOOP = 0x04,
1000 PRED_SEL_mask = 0x03 << 29,
1001 PRED_SEL_shift = 29,
1002 SQ_PRED_SEL_OFF = 0x00,
1003 SQ_PRED_SEL_ZERO = 0x02,
1004 SQ_PRED_SEL_ONE = 0x03,
1006 SX_EXPORT_BUFFER_SIZES = 0x0000900c,
1007 COLOR_BUFFER_SIZE_mask = 0xff << 0,
1008 COLOR_BUFFER_SIZE_shift = 0,
1009 POSITION_BUFFER_SIZE_mask = 0xff << 8,
1010 POSITION_BUFFER_SIZE_shift = 8,
1011 SMX_BUFFER_SIZE_mask = 0xff << 16,
1012 SMX_BUFFER_SIZE_shift = 16,
1013 SX_MEMORY_EXPORT_BASE = 0x00009010,
1014 SX_MEMORY_EXPORT_SIZE = 0x00009014,
1015 SPI_CONFIG_CNTL = 0x00009100,
1016 GPR_WRITE_PRIORITY_mask = 0x1f << 0,
1017 GPR_WRITE_PRIORITY_shift = 0,
1018 X_PRIORITY_ORDER = 0x00,
1019 X_PRIORITY_ORDER_VS = 0x01,
1020 DISABLE_INTERP_1_bit = 1 << 5,
1021 DEBUG_THREAD_TYPE_SEL_mask = 0x03 << 6,
1022 DEBUG_THREAD_TYPE_SEL_shift = 6,
1023 DEBUG_GROUP_SEL_mask = 0x1f << 8,
1024 DEBUG_GROUP_SEL_shift = 8,
1025 DEBUG_GRBM_OVERRIDE_bit = 1 << 13,
1026 SPI_CONFIG_CNTL_1 = 0x0000913c,
1027 VTX_DONE_DELAY_mask = 0x0f << 0,
1028 VTX_DONE_DELAY_shift = 0,
1029 X_DELAY_10_CLKS = 0x00,
1030 X_DELAY_11_CLKS = 0x01,
1031 X_DELAY_12_CLKS = 0x02,
1032 X_DELAY_13_CLKS = 0x03,
1033 X_DELAY_14_CLKS = 0x04,
1034 X_DELAY_15_CLKS = 0x05,
1035 X_DELAY_16_CLKS = 0x06,
1036 X_DELAY_17_CLKS = 0x07,
1037 X_DELAY_2_CLKS = 0x08,
1038 X_DELAY_3_CLKS = 0x09,
1039 X_DELAY_4_CLKS = 0x0a,
1040 X_DELAY_5_CLKS = 0x0b,
1041 X_DELAY_6_CLKS = 0x0c,
1042 X_DELAY_7_CLKS = 0x0d,
1043 X_DELAY_8_CLKS = 0x0e,
1044 X_DELAY_9_CLKS = 0x0f,
1045 INTERP_ONE_PRIM_PER_ROW_bit = 1 << 4,
1046 TD_FILTER4 = 0x00009400,
1047 WEIGHT_1_mask = 0x7ff << 0,
1049 WEIGHT_0_mask = 0x7ff << 11,
1050 WEIGHT_0_shift = 11,
1051 WEIGHT_PAIR_bit = 1 << 22,
1052 PHASE_mask = 0x0f << 23,
1054 DIRECTION_bit = 1 << 27,
1055 TD_FILTER4_1 = 0x00009404,
1056 TD_FILTER4_1_num = 35,
1057 /* WEIGHT_1_mask = 0x7ff << 0, */
1058 /* WEIGHT_1_shift = 0, */
1059 /* WEIGHT_0_mask = 0x7ff << 11, */
1060 /* WEIGHT_0_shift = 11, */
1061 TD_CNTL = 0x00009490,
1062 SYNC_PHASE_SH_mask = 0x03 << 0,
1063 SYNC_PHASE_SH_shift = 0,
1064 SYNC_PHASE_VC_SMX_mask = 0x03 << 4,
1065 SYNC_PHASE_VC_SMX_shift = 4,
1066 TD0_CNTL = 0x00009494,
1068 ID_OVERRIDE_mask = 0x03 << 28,
1069 ID_OVERRIDE_shift = 28,
1070 TD0_STATUS = 0x000094a4,
1073 TA_CNTL = 0x00009504,
1074 GRADIENT_CREDIT_mask = 0x1f << 0,
1075 GRADIENT_CREDIT_shift = 0,
1076 WALKER_CREDIT_mask = 0x1f << 8,
1077 WALKER_CREDIT_shift = 8,
1078 ALIGNER_CREDIT_mask = 0x1f << 16,
1079 ALIGNER_CREDIT_shift = 16,
1080 TD_FIFO_CREDIT_mask = 0x3ff << 22,
1081 TD_FIFO_CREDIT_shift = 22,
1082 TA_CNTL_AUX = 0x00009508,
1083 DISABLE_CUBE_WRAP_bit = 1 << 0,
1084 SYNC_GRADIENT_bit = 1 << 24,
1085 SYNC_WALKER_bit = 1 << 25,
1086 SYNC_ALIGNER_bit = 1 << 26,
1087 BILINEAR_PRECISION_bit = 1 << 31,
1088 TA0_CNTL = 0x00009510,
1089 /* ID_OVERRIDE_mask = 0x03 << 28, */
1090 /* ID_OVERRIDE_shift = 28, */
1091 TA1_CNTL = 0x00009514,
1092 /* ID_OVERRIDE_mask = 0x03 << 28, */
1093 /* ID_OVERRIDE_shift = 28, */
1094 TA2_CNTL = 0x00009518,
1095 /* ID_OVERRIDE_mask = 0x03 << 28, */
1096 /* ID_OVERRIDE_shift = 28, */
1097 TA3_CNTL = 0x0000951c,
1098 /* ID_OVERRIDE_mask = 0x03 << 28, */
1099 /* ID_OVERRIDE_shift = 28, */
1100 TA0_STATUS = 0x00009520,
1101 FG_PFIFO_EMPTYB_bit = 1 << 12,
1102 FG_LFIFO_EMPTYB_bit = 1 << 13,
1103 FG_SFIFO_EMPTYB_bit = 1 << 14,
1104 FL_PFIFO_EMPTYB_bit = 1 << 16,
1105 FL_LFIFO_EMPTYB_bit = 1 << 17,
1106 FL_SFIFO_EMPTYB_bit = 1 << 18,
1107 FA_PFIFO_EMPTYB_bit = 1 << 20,
1108 FA_LFIFO_EMPTYB_bit = 1 << 21,
1109 FA_SFIFO_EMPTYB_bit = 1 << 22,
1110 IN_BUSY_bit = 1 << 24,
1111 FG_BUSY_bit = 1 << 25,
1112 FL_BUSY_bit = 1 << 27,
1113 TA_BUSY_bit = 1 << 28,
1114 FA_BUSY_bit = 1 << 29,
1115 AL_BUSY_bit = 1 << 30,
1116 /* BUSY_bit = 1 << 31, */
1117 TA1_STATUS = 0x00009524,
1118 /* FG_PFIFO_EMPTYB_bit = 1 << 12, */
1119 /* FG_LFIFO_EMPTYB_bit = 1 << 13, */
1120 /* FG_SFIFO_EMPTYB_bit = 1 << 14, */
1121 /* FL_PFIFO_EMPTYB_bit = 1 << 16, */
1122 /* FL_LFIFO_EMPTYB_bit = 1 << 17, */
1123 /* FL_SFIFO_EMPTYB_bit = 1 << 18, */
1124 /* FA_PFIFO_EMPTYB_bit = 1 << 20, */
1125 /* FA_LFIFO_EMPTYB_bit = 1 << 21, */
1126 /* FA_SFIFO_EMPTYB_bit = 1 << 22, */
1127 /* IN_BUSY_bit = 1 << 24, */
1128 /* FG_BUSY_bit = 1 << 25, */
1129 /* FL_BUSY_bit = 1 << 27, */
1130 /* TA_BUSY_bit = 1 << 28, */
1131 /* FA_BUSY_bit = 1 << 29, */
1132 /* AL_BUSY_bit = 1 << 30, */
1133 /* BUSY_bit = 1 << 31, */
1134 TA2_STATUS = 0x00009528,
1135 /* FG_PFIFO_EMPTYB_bit = 1 << 12, */
1136 /* FG_LFIFO_EMPTYB_bit = 1 << 13, */
1137 /* FG_SFIFO_EMPTYB_bit = 1 << 14, */
1138 /* FL_PFIFO_EMPTYB_bit = 1 << 16, */
1139 /* FL_LFIFO_EMPTYB_bit = 1 << 17, */
1140 /* FL_SFIFO_EMPTYB_bit = 1 << 18, */
1141 /* FA_PFIFO_EMPTYB_bit = 1 << 20, */
1142 /* FA_LFIFO_EMPTYB_bit = 1 << 21, */
1143 /* FA_SFIFO_EMPTYB_bit = 1 << 22, */
1144 /* IN_BUSY_bit = 1 << 24, */
1145 /* FG_BUSY_bit = 1 << 25, */
1146 /* FL_BUSY_bit = 1 << 27, */
1147 /* TA_BUSY_bit = 1 << 28, */
1148 /* FA_BUSY_bit = 1 << 29, */
1149 /* AL_BUSY_bit = 1 << 30, */
1150 /* BUSY_bit = 1 << 31, */
1151 TA3_STATUS = 0x0000952c,
1152 /* FG_PFIFO_EMPTYB_bit = 1 << 12, */
1153 /* FG_LFIFO_EMPTYB_bit = 1 << 13, */
1154 /* FG_SFIFO_EMPTYB_bit = 1 << 14, */
1155 /* FL_PFIFO_EMPTYB_bit = 1 << 16, */
1156 /* FL_LFIFO_EMPTYB_bit = 1 << 17, */
1157 /* FL_SFIFO_EMPTYB_bit = 1 << 18, */
1158 /* FA_PFIFO_EMPTYB_bit = 1 << 20, */
1159 /* FA_LFIFO_EMPTYB_bit = 1 << 21, */
1160 /* FA_SFIFO_EMPTYB_bit = 1 << 22, */
1161 /* IN_BUSY_bit = 1 << 24, */
1162 /* FG_BUSY_bit = 1 << 25, */
1163 /* FL_BUSY_bit = 1 << 27, */
1164 /* TA_BUSY_bit = 1 << 28, */
1165 /* FA_BUSY_bit = 1 << 29, */
1166 /* AL_BUSY_bit = 1 << 30, */
1167 /* BUSY_bit = 1 << 31, */
1168 TC_STATUS = 0x00009600,
1169 TC_BUSY_bit = 1 << 0,
1170 TC_INVALIDATE = 0x00009604,
1172 TC_CNTL = 0x00009608,
1173 FORCE_HIT_bit = 1 << 0,
1174 FORCE_MISS_bit = 1 << 1,
1175 L2_SIZE_mask = 0x0f << 5,
1185 L2_DISABLE_LATE_HIT_bit = 1 << 9,
1186 DISABLE_VERT_PERF_bit = 1 << 10,
1187 DISABLE_INVAL_BUSY_bit = 1 << 11,
1188 DISABLE_INVAL_SAME_SURFACE_bit = 1 << 12,
1189 PARTITION_MODE_mask = 0x03 << 13,
1190 PARTITION_MODE_shift = 13,
1192 MISS_ARB_MODE_bit = 1 << 15,
1193 HIT_ARB_MODE_bit = 1 << 16,
1194 DISABLE_WRITE_DELAY_bit = 1 << 17,
1195 HIT_FIFO_DEPTH_bit = 1 << 18,
1196 VC_CNTL = 0x00009700,
1197 L2_INVALIDATE_bit = 1 << 0,
1198 RESERVED_bit = 1 << 1,
1199 CC_FORCE_MISS_bit = 1 << 2,
1200 MI_CHAN_SEL_mask = 0x03 << 3,
1201 MI_CHAN_SEL_shift = 3,
1202 X_MC0_USES_CH_0_1 = 0x00,
1203 X_MC0_USES_CH_0_3 = 0x01,
1204 X_VC_MC0_IS_ACTIVE = 0x02,
1205 X_VC_MC1_IS_DISABLED = 0x03,
1206 MI_STEER_DISABLE_bit = 1 << 5,
1207 MI_CREDIT_CTR_mask = 0x0f << 6,
1208 MI_CREDIT_CTR_shift = 6,
1209 MI_CREDIT_WE_bit = 1 << 10,
1210 MI_REQ_STALL_THLD_mask = 0x07 << 11,
1211 MI_REQ_STALL_THLD_shift = 11,
1212 X_LATENCY_EXCEEDS_399_CLOCKS = 0x00,
1213 X_LATENCY_EXCEEDS_415_CLOCKS = 0x01,
1214 X_LATENCY_EXCEEDS_431_CLOCKS = 0x02,
1215 X_LATENCY_EXCEEDS_447_CLOCKS = 0x03,
1216 X_LATENCY_EXCEEDS_463_CLOCKS = 0x04,
1217 X_LATENCY_EXCEEDS_479_CLOCKS = 0x05,
1218 X_LATENCY_EXCEEDS_495_CLOCKS = 0x06,
1219 X_LATENCY_EXCEEDS_511_CLOCKS = 0x07,
1220 VC_CNTL__MI_TIMESTAMP_RES_mask = 0x1f << 14,
1221 VC_CNTL__MI_TIMESTAMP_RES_shift = 14,
1222 X_1X_SYSTEM_CLOCK = 0x00,
1223 X_2X_SYSTEM_CLOCK = 0x01,
1224 X_4X_SYSTEM_CLOCK = 0x02,
1225 X_8X_SYSTEM_CLOCK = 0x03,
1226 X_16X_SYSTEM_CLOCK = 0x04,
1227 X_32X_SYSTEM_CLOCK = 0x05,
1228 X_64X_SYSTEM_CLOCK = 0x06,
1229 X_128X_SYSTEM_CLOCK = 0x07,
1230 X_256X_SYSTEM_CLOCK = 0x08,
1231 X_512X_SYSTEM_CLOCK = 0x09,
1232 X_1024X_SYSTEM_CLOCK = 0x0a,
1233 X_2048X_SYSTEM_CLOCK = 0x0b,
1234 X_4092X_SYSTEM_CLOCK = 0x0c,
1235 X_8192X_SYSTEM_CLOCK = 0x0d,
1236 X_16384X_SYSTEM_CLOCK = 0x0e,
1237 X_32768X_SYSTEM_CLOCK = 0x0f,
1238 VC_CNTL_STATUS = 0x00009704,
1239 RP_BUSY_bit = 1 << 0,
1240 RG_BUSY_bit = 1 << 1,
1241 VC_BUSY_bit = 1 << 2,
1242 CLAMP_DETECT_bit = 1 << 3,
1243 VC_CONFIG = 0x00009718,
1244 WRITE_DIS_bit = 1 << 0,
1245 GPR_DATA_PHASE_ADJ_mask = 0x07 << 1,
1246 GPR_DATA_PHASE_ADJ_shift = 1,
1247 X_LATENCY_BASE_0_CYCLES = 0x00,
1248 X_LATENCY_BASE_1_CYCLES = 0x01,
1249 X_LATENCY_BASE_2_CYCLES = 0x02,
1250 X_LATENCY_BASE_3_CYCLES = 0x03,
1251 TD_SIMD_SYNC_ADJ_mask = 0x07 << 4,
1252 TD_SIMD_SYNC_ADJ_shift = 4,
1253 X_0_CYCLES_DELAY = 0x00,
1254 X_1_CYCLES_DELAY = 0x01,
1255 X_2_CYCLES_DELAY = 0x02,
1256 X_3_CYCLES_DELAY = 0x03,
1257 X_4_CYCLES_DELAY = 0x04,
1258 X_5_CYCLES_DELAY = 0x05,
1259 X_6_CYCLES_DELAY = 0x06,
1260 X_7_CYCLES_DELAY = 0x07,
1261 SMX_DC_CTL0 = 0x0000a020,
1262 WR_GATHER_STREAM0_bit = 1 << 0,
1263 WR_GATHER_STREAM1_bit = 1 << 1,
1264 WR_GATHER_STREAM2_bit = 1 << 2,
1265 WR_GATHER_STREAM3_bit = 1 << 3,
1266 WR_GATHER_SCRATCH_bit = 1 << 4,
1267 WR_GATHER_REDUC_BUF_bit = 1 << 5,
1268 WR_GATHER_RING_BUF_bit = 1 << 6,
1269 WR_GATHER_F_BUF_bit = 1 << 7,
1270 DISABLE_CACHES_bit = 1 << 8,
1271 AUTO_FLUSH_INVAL_EN_bit = 1 << 10,
1272 AUTO_FLUSH_EN_bit = 1 << 11,
1273 AUTO_FLUSH_CNT_mask = 0xffff << 12,
1274 AUTO_FLUSH_CNT_shift = 12,
1275 MC_RD_STALL_FACTOR_mask = 0x03 << 28,
1276 MC_RD_STALL_FACTOR_shift = 28,
1277 MC_WR_STALL_FACTOR_mask = 0x03 << 30,
1278 MC_WR_STALL_FACTOR_shift = 30,
1279 SMX_DC_CTL1 = 0x0000a024,
1280 OP_FIFO_SKID_mask = 0x7f << 0,
1281 OP_FIFO_SKID_shift = 0,
1282 CACHE_LINE_SIZE_bit = 1 << 8,
1283 MULTI_FLUSH_MODE_bit = 1 << 9,
1284 MULTI_FLUSH_REQ_ABORT_IDX_FIFO_SKID_mask = 0x0f << 10,
1285 MULTI_FLUSH_REQ_ABORT_IDX_FIFO_SKID_shift = 10,
1286 DISABLE_WR_GATHER_RD_HIT_FORCE_EVICT_bit = 1 << 16,
1287 DISABLE_WR_GATHER_RD_HIT_COMP_VLDS_CHECK_bit = 1 << 17,
1288 DISABLE_FLUSH_ES_ALSO_INVALS_bit = 1 << 18,
1289 DISABLE_FLUSH_GS_ALSO_INVALS_bit = 1 << 19,
1290 SMX_DC_CTL2 = 0x0000a028,
1291 INVALIDATE_CACHES_bit = 1 << 0,
1292 CACHES_INVALID_bit = 1 << 1,
1293 CACHES_DIRTY_bit = 1 << 2,
1294 FLUSH_ALL_bit = 1 << 4,
1295 FLUSH_GS_THREADS_bit = 1 << 8,
1296 FLUSH_ES_THREADS_bit = 1 << 9,
1297 SMX_DC_MC_INTF_CTL = 0x0000a02c,
1298 MC_RD_REQ_CRED_mask = 0xff << 0,
1299 MC_RD_REQ_CRED_shift = 0,
1300 MC_WR_REQ_CRED_mask = 0xff << 16,
1301 MC_WR_REQ_CRED_shift = 16,
1302 TD_PS_SAMPLER0_BORDER_RED = 0x0000a400,
1303 TD_PS_SAMPLER0_BORDER_RED_num = 18,
1304 TD_PS_SAMPLER0_BORDER_RED_offset = 16,
1305 TD_PS_SAMPLER0_BORDER_GREEN = 0x0000a404,
1306 TD_PS_SAMPLER0_BORDER_GREEN_num = 18,
1307 TD_PS_SAMPLER0_BORDER_GREEN_offset = 16,
1308 TD_PS_SAMPLER0_BORDER_BLUE = 0x0000a408,
1309 TD_PS_SAMPLER0_BORDER_BLUE_num = 18,
1310 TD_PS_SAMPLER0_BORDER_BLUE_offset = 16,
1311 TD_PS_SAMPLER0_BORDER_ALPHA = 0x0000a40c,
1312 TD_PS_SAMPLER0_BORDER_ALPHA_num = 18,
1313 TD_PS_SAMPLER0_BORDER_ALPHA_offset = 16,
1314 TD_VS_SAMPLER0_BORDER_RED = 0x0000a600,
1315 TD_VS_SAMPLER0_BORDER_RED_num = 18,
1316 TD_VS_SAMPLER0_BORDER_RED_offset = 16,
1317 TD_VS_SAMPLER0_BORDER_GREEN = 0x0000a604,
1318 TD_VS_SAMPLER0_BORDER_GREEN_num = 18,
1319 TD_VS_SAMPLER0_BORDER_GREEN_offset = 16,
1320 TD_VS_SAMPLER0_BORDER_BLUE = 0x0000a608,
1321 TD_VS_SAMPLER0_BORDER_BLUE_num = 18,
1322 TD_VS_SAMPLER0_BORDER_BLUE_offset = 16,
1323 TD_VS_SAMPLER0_BORDER_ALPHA = 0x0000a60c,
1324 TD_VS_SAMPLER0_BORDER_ALPHA_num = 18,
1325 TD_VS_SAMPLER0_BORDER_ALPHA_offset = 16,
1326 TD_GS_SAMPLER0_BORDER_RED = 0x0000a800,
1327 TD_GS_SAMPLER0_BORDER_RED_num = 18,
1328 TD_GS_SAMPLER0_BORDER_RED_offset = 16,
1329 TD_GS_SAMPLER0_BORDER_GREEN = 0x0000a804,
1330 TD_GS_SAMPLER0_BORDER_GREEN_num = 18,
1331 TD_GS_SAMPLER0_BORDER_GREEN_offset = 16,
1332 TD_GS_SAMPLER0_BORDER_BLUE = 0x0000a808,
1333 TD_GS_SAMPLER0_BORDER_BLUE_num = 18,
1334 TD_GS_SAMPLER0_BORDER_BLUE_offset = 16,
1335 TD_GS_SAMPLER0_BORDER_ALPHA = 0x0000a80c,
1336 TD_GS_SAMPLER0_BORDER_ALPHA_num = 18,
1337 TD_GS_SAMPLER0_BORDER_ALPHA_offset = 16,
1338 TD_PS_SAMPLER0_CLEARTYPE_KERNEL = 0x0000aa00,
1339 TD_PS_SAMPLER0_CLEARTYPE_KERNEL_num = 18,
1340 TD_PS_SAMPLER0_CLEARTYPE_KERNEL__WIDTH_mask = 0x07 << 0,
1341 TD_PS_SAMPLER0_CLEARTYPE_KERNEL__WIDTH_shift = 0,
1342 TD_PS_SAMPLER0_CLEARTYPE_KERNEL__HEIGHT_mask = 0x07 << 3,
1343 TD_PS_SAMPLER0_CLEARTYPE_KERNEL__HEIGHT_shift = 3,
1344 DB_DEPTH_SIZE = 0x00028000,
1345 PITCH_TILE_MAX_mask = 0x3ff << 0,
1346 PITCH_TILE_MAX_shift = 0,
1347 SLICE_TILE_MAX_mask = 0xfffff << 10,
1348 SLICE_TILE_MAX_shift = 10,
1349 DB_DEPTH_VIEW = 0x00028004,
1350 SLICE_START_mask = 0x7ff << 0,
1351 SLICE_START_shift = 0,
1352 SLICE_MAX_mask = 0x7ff << 13,
1353 SLICE_MAX_shift = 13,
1354 DB_DEPTH_BASE = 0x0002800c,
1355 DB_DEPTH_INFO = 0x00028010,
1356 DB_DEPTH_INFO__FORMAT_mask = 0x07 << 0,
1357 DB_DEPTH_INFO__FORMAT_shift = 0,
1358 DEPTH_INVALID = 0x00,
1362 DEPTH_X8_24_FLOAT = 0x04,
1363 DEPTH_8_24_FLOAT = 0x05,
1364 DEPTH_32_FLOAT = 0x06,
1365 DEPTH_X24_8_32_FLOAT = 0x07,
1366 DB_DEPTH_INFO__READ_SIZE_bit = 1 << 3,
1367 DB_DEPTH_INFO__ARRAY_MODE_mask = 0x0f << 15,
1368 DB_DEPTH_INFO__ARRAY_MODE_shift = 15,
1369 ARRAY_1D_TILED_THIN1 = 0x02,
1370 ARRAY_2D_TILED_THIN1 = 0x04,
1371 TILE_SURFACE_ENABLE_bit = 1 << 25,
1372 TILE_COMPACT_bit = 1 << 26,
1373 ZRANGE_PRECISION_bit = 1 << 31,
1374 DB_HTILE_DATA_BASE = 0x00028014,
1375 DB_STENCIL_CLEAR = 0x00028028,
1376 DB_STENCIL_CLEAR__CLEAR_mask = 0xff << 0,
1377 DB_STENCIL_CLEAR__CLEAR_shift = 0,
1378 MIN_mask = 0xff << 16,
1380 DB_DEPTH_CLEAR = 0x0002802c,
1381 PA_SC_SCREEN_SCISSOR_TL = 0x00028030,
1382 PA_SC_SCREEN_SCISSOR_TL__TL_X_mask = 0x7fff << 0,
1383 PA_SC_SCREEN_SCISSOR_TL__TL_X_shift = 0,
1384 PA_SC_SCREEN_SCISSOR_TL__TL_Y_mask = 0x7fff << 16,
1385 PA_SC_SCREEN_SCISSOR_TL__TL_Y_shift = 16,
1386 PA_SC_SCREEN_SCISSOR_BR = 0x00028034,
1387 PA_SC_SCREEN_SCISSOR_BR__BR_X_mask = 0x7fff << 0,
1388 PA_SC_SCREEN_SCISSOR_BR__BR_X_shift = 0,
1389 PA_SC_SCREEN_SCISSOR_BR__BR_Y_mask = 0x7fff << 16,
1390 PA_SC_SCREEN_SCISSOR_BR__BR_Y_shift = 16,
1391 CB_COLOR0_BASE = 0x00028040,
1392 CB_COLOR0_BASE_num = 8,
1393 CB_COLOR0_SIZE = 0x00028060,
1394 CB_COLOR0_SIZE_num = 8,
1395 /* PITCH_TILE_MAX_mask = 0x3ff << 0, */
1396 /* PITCH_TILE_MAX_shift = 0, */
1397 /* SLICE_TILE_MAX_mask = 0xfffff << 10, */
1398 /* SLICE_TILE_MAX_shift = 10, */
1399 CB_COLOR0_VIEW = 0x00028080,
1400 CB_COLOR0_VIEW_num = 8,
1401 /* SLICE_START_mask = 0x7ff << 0, */
1402 /* SLICE_START_shift = 0, */
1403 /* SLICE_MAX_mask = 0x7ff << 13, */
1404 /* SLICE_MAX_shift = 13, */
1405 CB_COLOR0_INFO = 0x000280a0,
1406 CB_COLOR0_INFO_num = 8,
1407 ENDIAN_mask = 0x03 << 0,
1410 ENDIAN_8IN16 = 0x01,
1411 ENDIAN_8IN32 = 0x02,
1412 ENDIAN_8IN64 = 0x03,
1413 CB_COLOR0_INFO__FORMAT_mask = 0x3f << 2,
1414 CB_COLOR0_INFO__FORMAT_shift = 2,
1415 COLOR_INVALID = 0x00,
1420 COLOR_16_FLOAT = 0x06,
1424 COLOR_1_5_5_5 = 0x0a,
1425 COLOR_4_4_4_4 = 0x0b,
1426 COLOR_5_5_5_1 = 0x0c,
1428 COLOR_32_FLOAT = 0x0e,
1430 COLOR_16_16_FLOAT = 0x10,
1432 COLOR_8_24_FLOAT = 0x12,
1434 COLOR_24_8_FLOAT = 0x14,
1435 COLOR_10_11_11 = 0x15,
1436 COLOR_10_11_11_FLOAT = 0x16,
1437 COLOR_11_11_10 = 0x17,
1438 COLOR_11_11_10_FLOAT = 0x18,
1439 COLOR_2_10_10_10 = 0x19,
1440 COLOR_8_8_8_8 = 0x1a,
1441 COLOR_10_10_10_2 = 0x1b,
1442 COLOR_X24_8_32_FLOAT = 0x1c,
1444 COLOR_32_32_FLOAT = 0x1e,
1445 COLOR_16_16_16_16 = 0x1f,
1446 COLOR_16_16_16_16_FLOAT = 0x20,
1447 COLOR_32_32_32_32 = 0x22,
1448 COLOR_32_32_32_32_FLOAT = 0x23,
1449 CB_COLOR0_INFO__ARRAY_MODE_mask = 0x0f << 8,
1450 CB_COLOR0_INFO__ARRAY_MODE_shift = 8,
1451 ARRAY_LINEAR_GENERAL = 0x00,
1452 ARRAY_LINEAR_ALIGNED = 0x01,
1453 /* ARRAY_1D_TILED_THIN1 = 0x02, */
1454 /* ARRAY_2D_TILED_THIN1 = 0x04, */
1455 NUMBER_TYPE_mask = 0x07 << 12,
1456 NUMBER_TYPE_shift = 12,
1457 NUMBER_UNORM = 0x00,
1458 NUMBER_SNORM = 0x01,
1459 NUMBER_USCALED = 0x02,
1460 NUMBER_SSCALED = 0x03,
1464 NUMBER_FLOAT = 0x07,
1465 CB_COLOR0_INFO__READ_SIZE_bit = 1 << 15,
1466 COMP_SWAP_mask = 0x03 << 16,
1467 COMP_SWAP_shift = 16,
1470 SWAP_STD_REV = 0x02,
1471 SWAP_ALT_REV = 0x03,
1472 CB_COLOR0_INFO__TILE_MODE_mask = 0x03 << 18,
1473 CB_COLOR0_INFO__TILE_MODE_shift = 18,
1474 TILE_DISABLE = 0x00,
1475 TILE_CLEAR_ENABLE = 0x01,
1476 TILE_FRAG_ENABLE = 0x02,
1477 BLEND_CLAMP_bit = 1 << 20,
1478 CLEAR_COLOR_bit = 1 << 21,
1479 BLEND_BYPASS_bit = 1 << 22,
1480 BLEND_FLOAT32_bit = 1 << 23,
1481 SIMPLE_FLOAT_bit = 1 << 24,
1482 CB_COLOR0_INFO__ROUND_MODE_bit = 1 << 25,
1483 /* TILE_COMPACT_bit = 1 << 26, */
1484 SOURCE_FORMAT_bit = 1 << 27,
1485 CB_COLOR0_TILE = 0x000280c0,
1486 CB_COLOR0_TILE_num = 8,
1487 CB_COLOR0_FRAG = 0x000280e0,
1488 CB_COLOR0_FRAG_num = 8,
1489 CB_COLOR0_MASK = 0x00028100,
1490 CB_COLOR0_MASK_num = 8,
1491 CMASK_BLOCK_MAX_mask = 0xfff << 0,
1492 CMASK_BLOCK_MAX_shift = 0,
1493 FMASK_TILE_MAX_mask = 0xfffff << 12,
1494 FMASK_TILE_MAX_shift = 12,
1495 CB_CLEAR_RED = 0x00028120,
1496 CB_CLEAR_GREEN = 0x00028124,
1497 CB_CLEAR_BLUE = 0x00028128,
1498 CB_CLEAR_ALPHA = 0x0002812c,
1499 SQ_ALU_CONST_BUFFER_SIZE_PS_0 = 0x00028140,
1500 SQ_ALU_CONST_BUFFER_SIZE_PS_0_num = 16,
1501 SQ_ALU_CONST_BUFFER_SIZE_PS_0__DATA_mask = 0x1ff << 0,
1502 SQ_ALU_CONST_BUFFER_SIZE_PS_0__DATA_shift = 0,
1503 SQ_ALU_CONST_BUFFER_SIZE_VS_0 = 0x00028180,
1504 SQ_ALU_CONST_BUFFER_SIZE_VS_0_num = 16,
1505 SQ_ALU_CONST_BUFFER_SIZE_VS_0__DATA_mask = 0x1ff << 0,
1506 SQ_ALU_CONST_BUFFER_SIZE_VS_0__DATA_shift = 0,
1507 SQ_ALU_CONST_BUFFER_SIZE_GS_0 = 0x000281c0,
1508 SQ_ALU_CONST_BUFFER_SIZE_GS_0_num = 16,
1509 SQ_ALU_CONST_BUFFER_SIZE_GS_0__DATA_mask = 0x1ff << 0,
1510 SQ_ALU_CONST_BUFFER_SIZE_GS_0__DATA_shift = 0,
1511 PA_SC_WINDOW_OFFSET = 0x00028200,
1512 WINDOW_X_OFFSET_mask = 0x7fff << 0,
1513 WINDOW_X_OFFSET_shift = 0,
1514 WINDOW_Y_OFFSET_mask = 0x7fff << 16,
1515 WINDOW_Y_OFFSET_shift = 16,
1516 PA_SC_WINDOW_SCISSOR_TL = 0x00028204,
1517 PA_SC_WINDOW_SCISSOR_TL__TL_X_mask = 0x3fff << 0,
1518 PA_SC_WINDOW_SCISSOR_TL__TL_X_shift = 0,
1519 PA_SC_WINDOW_SCISSOR_TL__TL_Y_mask = 0x3fff << 16,
1520 PA_SC_WINDOW_SCISSOR_TL__TL_Y_shift = 16,
1521 WINDOW_OFFSET_DISABLE_bit = 1 << 31,
1522 PA_SC_WINDOW_SCISSOR_BR = 0x00028208,
1523 PA_SC_WINDOW_SCISSOR_BR__BR_X_mask = 0x3fff << 0,
1524 PA_SC_WINDOW_SCISSOR_BR__BR_X_shift = 0,
1525 PA_SC_WINDOW_SCISSOR_BR__BR_Y_mask = 0x3fff << 16,
1526 PA_SC_WINDOW_SCISSOR_BR__BR_Y_shift = 16,
1527 PA_SC_CLIPRECT_RULE = 0x0002820c,
1528 CLIP_RULE_mask = 0xffff << 0,
1529 CLIP_RULE_shift = 0,
1530 PA_SC_CLIPRECT_0_TL = 0x00028210,
1531 PA_SC_CLIPRECT_0_TL_num = 4,
1532 PA_SC_CLIPRECT_0_TL_offset = 8,
1533 PA_SC_CLIPRECT_0_TL__TL_X_mask = 0x3fff << 0,
1534 PA_SC_CLIPRECT_0_TL__TL_X_shift = 0,
1535 PA_SC_CLIPRECT_0_TL__TL_Y_mask = 0x3fff << 16,
1536 PA_SC_CLIPRECT_0_TL__TL_Y_shift = 16,
1537 PA_SC_CLIPRECT_0_BR = 0x00028214,
1538 PA_SC_CLIPRECT_0_BR_num = 4,
1539 PA_SC_CLIPRECT_0_BR_offset = 8,
1540 PA_SC_CLIPRECT_0_BR__BR_X_mask = 0x3fff << 0,
1541 PA_SC_CLIPRECT_0_BR__BR_X_shift = 0,
1542 PA_SC_CLIPRECT_0_BR__BR_Y_mask = 0x3fff << 16,
1543 PA_SC_CLIPRECT_0_BR__BR_Y_shift = 16,
1544 CB_TARGET_MASK = 0x00028238,
1545 TARGET0_ENABLE_mask = 0x0f << 0,
1546 TARGET0_ENABLE_shift = 0,
1547 TARGET1_ENABLE_mask = 0x0f << 4,
1548 TARGET1_ENABLE_shift = 4,
1549 TARGET2_ENABLE_mask = 0x0f << 8,
1550 TARGET2_ENABLE_shift = 8,
1551 TARGET3_ENABLE_mask = 0x0f << 12,
1552 TARGET3_ENABLE_shift = 12,
1553 TARGET4_ENABLE_mask = 0x0f << 16,
1554 TARGET4_ENABLE_shift = 16,
1555 TARGET5_ENABLE_mask = 0x0f << 20,
1556 TARGET5_ENABLE_shift = 20,
1557 TARGET6_ENABLE_mask = 0x0f << 24,
1558 TARGET6_ENABLE_shift = 24,
1559 TARGET7_ENABLE_mask = 0x0f << 28,
1560 TARGET7_ENABLE_shift = 28,
1561 CB_SHADER_MASK = 0x0002823c,
1562 OUTPUT0_ENABLE_mask = 0x0f << 0,
1563 OUTPUT0_ENABLE_shift = 0,
1564 OUTPUT1_ENABLE_mask = 0x0f << 4,
1565 OUTPUT1_ENABLE_shift = 4,
1566 OUTPUT2_ENABLE_mask = 0x0f << 8,
1567 OUTPUT2_ENABLE_shift = 8,
1568 OUTPUT3_ENABLE_mask = 0x0f << 12,
1569 OUTPUT3_ENABLE_shift = 12,
1570 OUTPUT4_ENABLE_mask = 0x0f << 16,
1571 OUTPUT4_ENABLE_shift = 16,
1572 OUTPUT5_ENABLE_mask = 0x0f << 20,
1573 OUTPUT5_ENABLE_shift = 20,
1574 OUTPUT6_ENABLE_mask = 0x0f << 24,
1575 OUTPUT6_ENABLE_shift = 24,
1576 OUTPUT7_ENABLE_mask = 0x0f << 28,
1577 OUTPUT7_ENABLE_shift = 28,
1578 PA_SC_GENERIC_SCISSOR_TL = 0x00028240,
1579 PA_SC_GENERIC_SCISSOR_TL__TL_X_mask = 0x3fff << 0,
1580 PA_SC_GENERIC_SCISSOR_TL__TL_X_shift = 0,
1581 PA_SC_GENERIC_SCISSOR_TL__TL_Y_mask = 0x3fff << 16,
1582 PA_SC_GENERIC_SCISSOR_TL__TL_Y_shift = 16,
1583 /* WINDOW_OFFSET_DISABLE_bit = 1 << 31, */
1584 PA_SC_GENERIC_SCISSOR_BR = 0x00028244,
1585 PA_SC_GENERIC_SCISSOR_BR__BR_X_mask = 0x3fff << 0,
1586 PA_SC_GENERIC_SCISSOR_BR__BR_X_shift = 0,
1587 PA_SC_GENERIC_SCISSOR_BR__BR_Y_mask = 0x3fff << 16,
1588 PA_SC_GENERIC_SCISSOR_BR__BR_Y_shift = 16,
1589 PA_SC_VPORT_SCISSOR_0_TL = 0x00028250,
1590 PA_SC_VPORT_SCISSOR_0_TL_num = 16,
1591 PA_SC_VPORT_SCISSOR_0_TL_offset = 8,
1592 PA_SC_VPORT_SCISSOR_0_TL__TL_X_mask = 0x3fff << 0,
1593 PA_SC_VPORT_SCISSOR_0_TL__TL_X_shift = 0,
1594 PA_SC_VPORT_SCISSOR_0_TL__TL_Y_mask = 0x3fff << 16,
1595 PA_SC_VPORT_SCISSOR_0_TL__TL_Y_shift = 16,
1596 /* WINDOW_OFFSET_DISABLE_bit = 1 << 31, */
1597 PA_SC_VPORT_SCISSOR_0_BR = 0x00028254,
1598 PA_SC_VPORT_SCISSOR_0_BR_num = 16,
1599 PA_SC_VPORT_SCISSOR_0_BR_offset = 8,
1600 PA_SC_VPORT_SCISSOR_0_BR__BR_X_mask = 0x3fff << 0,
1601 PA_SC_VPORT_SCISSOR_0_BR__BR_X_shift = 0,
1602 PA_SC_VPORT_SCISSOR_0_BR__BR_Y_mask = 0x3fff << 16,
1603 PA_SC_VPORT_SCISSOR_0_BR__BR_Y_shift = 16,
1604 PA_SC_VPORT_ZMIN_0 = 0x000282d0,
1605 PA_SC_VPORT_ZMIN_0_num = 16,
1606 PA_SC_VPORT_ZMIN_0_offset = 8,
1607 PA_SC_VPORT_ZMAX_0 = 0x000282d4,
1608 PA_SC_VPORT_ZMAX_0_num = 16,
1609 PA_SC_VPORT_ZMAX_0_offset = 8,
1610 SX_MISC = 0x00028350,
1611 MULTIPASS_bit = 1 << 0,
1612 SQ_VTX_SEMANTIC_0 = 0x00028380,
1613 SQ_VTX_SEMANTIC_0_num = 32,
1614 /* SEMANTIC_ID_mask = 0xff << 0, */
1615 /* SEMANTIC_ID_shift = 0, */
1616 VGT_MAX_VTX_INDX = 0x00028400,
1617 VGT_MIN_VTX_INDX = 0x00028404,
1618 VGT_INDX_OFFSET = 0x00028408,
1619 VGT_MULTI_PRIM_IB_RESET_INDX = 0x0002840c,
1620 SX_ALPHA_TEST_CONTROL = 0x00028410,
1621 ALPHA_FUNC_mask = 0x07 << 0,
1622 ALPHA_FUNC_shift = 0,
1628 REF_NOTEQUAL = 0x05,
1631 ALPHA_TEST_ENABLE_bit = 1 << 3,
1632 ALPHA_TEST_BYPASS_bit = 1 << 8,
1633 CB_BLEND_RED = 0x00028414,
1634 CB_BLEND_GREEN = 0x00028418,
1635 CB_BLEND_BLUE = 0x0002841c,
1636 CB_BLEND_ALPHA = 0x00028420,
1637 CB_FOG_RED = 0x00028424,
1638 CB_FOG_GREEN = 0x00028428,
1639 CB_FOG_BLUE = 0x0002842c,
1640 DB_STENCILREFMASK = 0x00028430,
1641 STENCILREF_mask = 0xff << 0,
1642 STENCILREF_shift = 0,
1643 STENCILMASK_mask = 0xff << 8,
1644 STENCILMASK_shift = 8,
1645 STENCILWRITEMASK_mask = 0xff << 16,
1646 STENCILWRITEMASK_shift = 16,
1647 DB_STENCILREFMASK_BF = 0x00028434,
1648 STENCILREF_BF_mask = 0xff << 0,
1649 STENCILREF_BF_shift = 0,
1650 STENCILMASK_BF_mask = 0xff << 8,
1651 STENCILMASK_BF_shift = 8,
1652 STENCILWRITEMASK_BF_mask = 0xff << 16,
1653 STENCILWRITEMASK_BF_shift = 16,
1654 SX_ALPHA_REF = 0x00028438,
1655 PA_CL_VPORT_XSCALE_0 = 0x0002843c,
1656 PA_CL_VPORT_XSCALE_0_num = 16,
1657 PA_CL_VPORT_XSCALE_0_offset = 24,
1658 PA_CL_VPORT_XOFFSET_0 = 0x00028440,
1659 PA_CL_VPORT_XOFFSET_0_num = 16,
1660 PA_CL_VPORT_XOFFSET_0_offset = 24,
1661 PA_CL_VPORT_YSCALE_0 = 0x00028444,
1662 PA_CL_VPORT_YSCALE_0_num = 16,
1663 PA_CL_VPORT_YSCALE_0_offset = 24,
1664 PA_CL_VPORT_YOFFSET_0 = 0x00028448,
1665 PA_CL_VPORT_YOFFSET_0_num = 16,
1666 PA_CL_VPORT_YOFFSET_0_offset = 24,
1667 PA_CL_VPORT_ZSCALE_0 = 0x0002844c,
1668 PA_CL_VPORT_ZSCALE_0_num = 16,
1669 PA_CL_VPORT_ZSCALE_0_offset = 24,
1670 PA_CL_VPORT_ZOFFSET_0 = 0x00028450,
1671 PA_CL_VPORT_ZOFFSET_0_num = 16,
1672 PA_CL_VPORT_ZOFFSET_0_offset = 24,
1673 SPI_VS_OUT_ID_0 = 0x00028614,
1674 SPI_VS_OUT_ID_0_num = 10,
1675 SEMANTIC_0_mask = 0xff << 0,
1676 SEMANTIC_0_shift = 0,
1677 SEMANTIC_1_mask = 0xff << 8,
1678 SEMANTIC_1_shift = 8,
1679 SEMANTIC_2_mask = 0xff << 16,
1680 SEMANTIC_2_shift = 16,
1681 SEMANTIC_3_mask = 0xff << 24,
1682 SEMANTIC_3_shift = 24,
1683 SPI_PS_INPUT_CNTL_0 = 0x00028644,
1684 SPI_PS_INPUT_CNTL_0_num = 32,
1685 SEMANTIC_mask = 0xff << 0,
1687 DEFAULT_VAL_mask = 0x03 << 8,
1688 DEFAULT_VAL_shift = 8,
1690 FLAT_SHADE_bit = 1 << 10,
1691 SEL_CENTROID_bit = 1 << 11,
1692 SEL_LINEAR_bit = 1 << 12,
1693 CYL_WRAP_mask = 0x0f << 13,
1694 CYL_WRAP_shift = 13,
1695 PT_SPRITE_TEX_bit = 1 << 17,
1696 SEL_SAMPLE_bit = 1 << 18,
1697 SPI_VS_OUT_CONFIG = 0x000286c4,
1698 VS_PER_COMPONENT_bit = 1 << 0,
1699 VS_EXPORT_COUNT_mask = 0x1f << 1,
1700 VS_EXPORT_COUNT_shift = 1,
1701 VS_EXPORTS_FOG_bit = 1 << 8,
1702 VS_OUT_FOG_VEC_ADDR_mask = 0x1f << 9,
1703 VS_OUT_FOG_VEC_ADDR_shift = 9,
1704 SPI_PS_IN_CONTROL_0 = 0x000286cc,
1705 NUM_INTERP_mask = 0x3f << 0,
1706 NUM_INTERP_shift = 0,
1707 POSITION_ENA_bit = 1 << 8,
1708 POSITION_CENTROID_bit = 1 << 9,
1709 POSITION_ADDR_mask = 0x1f << 10,
1710 POSITION_ADDR_shift = 10,
1711 PARAM_GEN_mask = 0x0f << 15,
1712 PARAM_GEN_shift = 15,
1713 PARAM_GEN_ADDR_mask = 0x7f << 19,
1714 PARAM_GEN_ADDR_shift = 19,
1715 BARYC_SAMPLE_CNTL_mask = 0x03 << 26,
1716 BARYC_SAMPLE_CNTL_shift = 26,
1717 CENTROIDS_ONLY = 0x00,
1718 CENTERS_ONLY = 0x01,
1719 CENTROIDS_AND_CENTERS = 0x02,
1721 PERSP_GRADIENT_ENA_bit = 1 << 28,
1722 LINEAR_GRADIENT_ENA_bit = 1 << 29,
1723 POSITION_SAMPLE_bit = 1 << 30,
1724 BARYC_AT_SAMPLE_ENA_bit = 1 << 31,
1725 SPI_PS_IN_CONTROL_1 = 0x000286d0,
1726 GEN_INDEX_PIX_bit = 1 << 0,
1727 GEN_INDEX_PIX_ADDR_mask = 0x7f << 1,
1728 GEN_INDEX_PIX_ADDR_shift = 1,
1729 FRONT_FACE_ENA_bit = 1 << 8,
1730 FRONT_FACE_CHAN_mask = 0x03 << 9,
1731 FRONT_FACE_CHAN_shift = 9,
1732 FRONT_FACE_ALL_BITS_bit = 1 << 11,
1733 FRONT_FACE_ADDR_mask = 0x1f << 12,
1734 FRONT_FACE_ADDR_shift = 12,
1735 FOG_ADDR_mask = 0x7f << 17,
1736 FOG_ADDR_shift = 17,
1737 FIXED_PT_POSITION_ENA_bit = 1 << 24,
1738 FIXED_PT_POSITION_ADDR_mask = 0x1f << 25,
1739 FIXED_PT_POSITION_ADDR_shift = 25,
1740 SPI_INTERP_CONTROL_0 = 0x000286d4,
1741 FLAT_SHADE_ENA_bit = 1 << 0,
1742 PNT_SPRITE_ENA_bit = 1 << 1,
1743 PNT_SPRITE_OVRD_X_mask = 0x07 << 2,
1744 PNT_SPRITE_OVRD_X_shift = 2,
1745 SPI_PNT_SPRITE_SEL_0 = 0x00,
1746 SPI_PNT_SPRITE_SEL_1 = 0x01,
1747 SPI_PNT_SPRITE_SEL_S = 0x02,
1748 SPI_PNT_SPRITE_SEL_T = 0x03,
1749 SPI_PNT_SPRITE_SEL_NONE = 0x04,
1750 PNT_SPRITE_OVRD_Y_mask = 0x07 << 5,
1751 PNT_SPRITE_OVRD_Y_shift = 5,
1752 /* SPI_PNT_SPRITE_SEL_0 = 0x00, */
1753 /* SPI_PNT_SPRITE_SEL_1 = 0x01, */
1754 /* SPI_PNT_SPRITE_SEL_S = 0x02, */
1755 /* SPI_PNT_SPRITE_SEL_T = 0x03, */
1756 /* SPI_PNT_SPRITE_SEL_NONE = 0x04, */
1757 PNT_SPRITE_OVRD_Z_mask = 0x07 << 8,
1758 PNT_SPRITE_OVRD_Z_shift = 8,
1759 /* SPI_PNT_SPRITE_SEL_0 = 0x00, */
1760 /* SPI_PNT_SPRITE_SEL_1 = 0x01, */
1761 /* SPI_PNT_SPRITE_SEL_S = 0x02, */
1762 /* SPI_PNT_SPRITE_SEL_T = 0x03, */
1763 /* SPI_PNT_SPRITE_SEL_NONE = 0x04, */
1764 PNT_SPRITE_OVRD_W_mask = 0x07 << 11,
1765 PNT_SPRITE_OVRD_W_shift = 11,
1766 /* SPI_PNT_SPRITE_SEL_0 = 0x00, */
1767 /* SPI_PNT_SPRITE_SEL_1 = 0x01, */
1768 /* SPI_PNT_SPRITE_SEL_S = 0x02, */
1769 /* SPI_PNT_SPRITE_SEL_T = 0x03, */
1770 /* SPI_PNT_SPRITE_SEL_NONE = 0x04, */
1771 PNT_SPRITE_TOP_1_bit = 1 << 14,
1772 SPI_INPUT_Z = 0x000286d8,
1773 PROVIDE_Z_TO_SPI_bit = 1 << 0,
1774 SPI_FOG_CNTL = 0x000286dc,
1775 PASS_FOG_THROUGH_PS_bit = 1 << 0,
1776 PIXEL_FOG_FUNC_mask = 0x03 << 1,
1777 PIXEL_FOG_FUNC_shift = 1,
1778 SPI_FOG_NONE = 0x00,
1780 SPI_FOG_EXP2 = 0x02,
1781 SPI_FOG_LINEAR = 0x03,
1782 PIXEL_FOG_SRC_SEL_bit = 1 << 3,
1783 VS_FOG_CLAMP_DISABLE_bit = 1 << 4,
1784 SPI_FOG_FUNC_SCALE = 0x000286e0,
1785 SPI_FOG_FUNC_BIAS = 0x000286e4,
1786 CB_BLEND0_CONTROL = 0x00028780,
1787 CB_BLEND0_CONTROL_num = 8,
1788 COLOR_SRCBLEND_mask = 0x1f << 0,
1789 COLOR_SRCBLEND_shift = 0,
1790 COLOR_COMB_FCN_mask = 0x07 << 5,
1791 COLOR_COMB_FCN_shift = 5,
1792 COLOR_DESTBLEND_mask = 0x1f << 8,
1793 COLOR_DESTBLEND_shift = 8,
1794 OPACITY_WEIGHT_bit = 1 << 13,
1795 ALPHA_SRCBLEND_mask = 0x1f << 16,
1796 ALPHA_SRCBLEND_shift = 16,
1797 ALPHA_COMB_FCN_mask = 0x07 << 21,
1798 ALPHA_COMB_FCN_shift = 21,
1799 ALPHA_DESTBLEND_mask = 0x1f << 24,
1800 ALPHA_DESTBLEND_shift = 24,
1801 SEPARATE_ALPHA_BLEND_bit = 1 << 29,
1802 VGT_DMA_BASE_HI = 0x000287e4,
1803 VGT_DMA_BASE_HI__BASE_ADDR_mask = 0xff << 0,
1804 VGT_DMA_BASE_HI__BASE_ADDR_shift = 0,
1805 VGT_DMA_BASE = 0x000287e8,
1806 VGT_DRAW_INITIATOR = 0x000287f0,
1807 SOURCE_SELECT_mask = 0x03 << 0,
1808 SOURCE_SELECT_shift = 0,
1809 DI_SRC_SEL_DMA = 0x00,
1810 DI_SRC_SEL_IMMEDIATE = 0x01,
1811 DI_SRC_SEL_AUTO_INDEX = 0x02,
1812 DI_SRC_SEL_RESERVED = 0x03,
1813 MAJOR_MODE_mask = 0x03 << 2,
1814 MAJOR_MODE_shift = 2,
1815 DI_MAJOR_MODE_0 = 0x00,
1816 DI_MAJOR_MODE_1 = 0x01,
1817 SPRITE_EN_bit = 1 << 4,
1818 NOT_EOP_bit = 1 << 5,
1819 USE_OPAQUE_bit = 1 << 6,
1820 VGT_IMMED_DATA = 0x000287f4,
1821 VGT_EVENT_ADDRESS_REG = 0x000287f8,
1822 ADDRESS_LOW_mask = 0xfffffff << 0,
1823 ADDRESS_LOW_shift = 0,
1824 DB_DEPTH_CONTROL = 0x00028800,
1825 STENCIL_ENABLE_bit = 1 << 0,
1826 Z_ENABLE_bit = 1 << 1,
1827 Z_WRITE_ENABLE_bit = 1 << 2,
1828 ZFUNC_mask = 0x07 << 4,
1834 FRAG_GREATER = 0x04,
1835 FRAG_NOTEQUAL = 0x05,
1838 BACKFACE_ENABLE_bit = 1 << 7,
1839 STENCILFUNC_mask = 0x07 << 8,
1840 STENCILFUNC_shift = 8,
1841 /* REF_NEVER = 0x00, */
1842 /* REF_LESS = 0x01, */
1843 /* REF_EQUAL = 0x02, */
1844 /* REF_LEQUAL = 0x03, */
1845 /* REF_GREATER = 0x04, */
1846 /* REF_NOTEQUAL = 0x05, */
1847 /* REF_GEQUAL = 0x06, */
1848 /* REF_ALWAYS = 0x07, */
1849 STENCILFAIL_mask = 0x07 << 11,
1850 STENCILFAIL_shift = 11,
1851 STENCIL_KEEP = 0x00,
1852 STENCIL_ZERO = 0x01,
1853 STENCIL_REPLACE = 0x02,
1854 STENCIL_INCR_CLAMP = 0x03,
1855 STENCIL_DECR_CLAMP = 0x04,
1856 STENCIL_INVERT = 0x05,
1857 STENCIL_INCR_WRAP = 0x06,
1858 STENCIL_DECR_WRAP = 0x07,
1859 STENCILZPASS_mask = 0x07 << 14,
1860 STENCILZPASS_shift = 14,
1861 /* STENCIL_KEEP = 0x00, */
1862 /* STENCIL_ZERO = 0x01, */
1863 /* STENCIL_REPLACE = 0x02, */
1864 /* STENCIL_INCR_CLAMP = 0x03, */
1865 /* STENCIL_DECR_CLAMP = 0x04, */
1866 /* STENCIL_INVERT = 0x05, */
1867 /* STENCIL_INCR_WRAP = 0x06, */
1868 /* STENCIL_DECR_WRAP = 0x07, */
1869 STENCILZFAIL_mask = 0x07 << 17,
1870 STENCILZFAIL_shift = 17,
1871 /* STENCIL_KEEP = 0x00, */
1872 /* STENCIL_ZERO = 0x01, */
1873 /* STENCIL_REPLACE = 0x02, */
1874 /* STENCIL_INCR_CLAMP = 0x03, */
1875 /* STENCIL_DECR_CLAMP = 0x04, */
1876 /* STENCIL_INVERT = 0x05, */
1877 /* STENCIL_INCR_WRAP = 0x06, */
1878 /* STENCIL_DECR_WRAP = 0x07, */
1879 STENCILFUNC_BF_mask = 0x07 << 20,
1880 STENCILFUNC_BF_shift = 20,
1881 /* REF_NEVER = 0x00, */
1882 /* REF_LESS = 0x01, */
1883 /* REF_EQUAL = 0x02, */
1884 /* REF_LEQUAL = 0x03, */
1885 /* REF_GREATER = 0x04, */
1886 /* REF_NOTEQUAL = 0x05, */
1887 /* REF_GEQUAL = 0x06, */
1888 /* REF_ALWAYS = 0x07, */
1889 STENCILFAIL_BF_mask = 0x07 << 23,
1890 STENCILFAIL_BF_shift = 23,
1891 /* STENCIL_KEEP = 0x00, */
1892 /* STENCIL_ZERO = 0x01, */
1893 /* STENCIL_REPLACE = 0x02, */
1894 /* STENCIL_INCR_CLAMP = 0x03, */
1895 /* STENCIL_DECR_CLAMP = 0x04, */
1896 /* STENCIL_INVERT = 0x05, */
1897 /* STENCIL_INCR_WRAP = 0x06, */
1898 /* STENCIL_DECR_WRAP = 0x07, */
1899 STENCILZPASS_BF_mask = 0x07 << 26,
1900 STENCILZPASS_BF_shift = 26,
1901 /* STENCIL_KEEP = 0x00, */
1902 /* STENCIL_ZERO = 0x01, */
1903 /* STENCIL_REPLACE = 0x02, */
1904 /* STENCIL_INCR_CLAMP = 0x03, */
1905 /* STENCIL_DECR_CLAMP = 0x04, */
1906 /* STENCIL_INVERT = 0x05, */
1907 /* STENCIL_INCR_WRAP = 0x06, */
1908 /* STENCIL_DECR_WRAP = 0x07, */
1909 STENCILZFAIL_BF_mask = 0x07 << 29,
1910 STENCILZFAIL_BF_shift = 29,
1911 /* STENCIL_KEEP = 0x00, */
1912 /* STENCIL_ZERO = 0x01, */
1913 /* STENCIL_REPLACE = 0x02, */
1914 /* STENCIL_INCR_CLAMP = 0x03, */
1915 /* STENCIL_DECR_CLAMP = 0x04, */
1916 /* STENCIL_INVERT = 0x05, */
1917 /* STENCIL_INCR_WRAP = 0x06, */
1918 /* STENCIL_DECR_WRAP = 0x07, */
1919 CB_BLEND_CONTROL = 0x00028804,
1920 /* COLOR_SRCBLEND_mask = 0x1f << 0, */
1921 /* COLOR_SRCBLEND_shift = 0, */
1924 BLEND_SRC_COLOR = 0x02,
1925 BLEND_ONE_MINUS_SRC_COLOR = 0x03,
1926 BLEND_SRC_ALPHA = 0x04,
1927 BLEND_ONE_MINUS_SRC_ALPHA = 0x05,
1928 BLEND_DST_ALPHA = 0x06,
1929 BLEND_ONE_MINUS_DST_ALPHA = 0x07,
1930 BLEND_DST_COLOR = 0x08,
1931 BLEND_ONE_MINUS_DST_COLOR = 0x09,
1932 BLEND_SRC_ALPHA_SATURATE = 0x0a,
1933 BLEND_BOTH_SRC_ALPHA = 0x0b,
1934 BLEND_BOTH_INV_SRC_ALPHA = 0x0c,
1935 BLEND_CONSTANT_COLOR = 0x0d,
1936 BLEND_ONE_MINUS_CONSTANT_COLOR = 0x0e,
1937 BLEND_SRC1_COLOR = 0x0f,
1938 BLEND_INV_SRC1_COLOR = 0x10,
1939 BLEND_SRC1_ALPHA = 0x11,
1940 BLEND_INV_SRC1_ALPHA = 0x12,
1941 BLEND_CONSTANT_ALPHA = 0x13,
1942 BLEND_ONE_MINUS_CONSTANT_ALPHA = 0x14,
1943 /* COLOR_COMB_FCN_mask = 0x07 << 5, */
1944 /* COLOR_COMB_FCN_shift = 5, */
1945 COMB_DST_PLUS_SRC = 0x00,
1946 COMB_SRC_MINUS_DST = 0x01,
1947 COMB_MIN_DST_SRC = 0x02,
1948 COMB_MAX_DST_SRC = 0x03,
1949 COMB_DST_MINUS_SRC = 0x04,
1950 /* COLOR_DESTBLEND_mask = 0x1f << 8, */
1951 /* COLOR_DESTBLEND_shift = 8, */
1952 /* BLEND_ZERO = 0x00, */
1953 /* BLEND_ONE = 0x01, */
1954 /* BLEND_SRC_COLOR = 0x02, */
1955 /* BLEND_ONE_MINUS_SRC_COLOR = 0x03, */
1956 /* BLEND_SRC_ALPHA = 0x04, */
1957 /* BLEND_ONE_MINUS_SRC_ALPHA = 0x05, */
1958 /* BLEND_DST_ALPHA = 0x06, */
1959 /* BLEND_ONE_MINUS_DST_ALPHA = 0x07, */
1960 /* BLEND_DST_COLOR = 0x08, */
1961 /* BLEND_ONE_MINUS_DST_COLOR = 0x09, */
1962 /* BLEND_SRC_ALPHA_SATURATE = 0x0a, */
1963 /* BLEND_BOTH_SRC_ALPHA = 0x0b, */
1964 /* BLEND_BOTH_INV_SRC_ALPHA = 0x0c, */
1965 /* BLEND_CONSTANT_COLOR = 0x0d, */
1966 /* BLEND_ONE_MINUS_CONSTANT_COLOR = 0x0e, */
1967 /* BLEND_SRC1_COLOR = 0x0f, */
1968 /* BLEND_INV_SRC1_COLOR = 0x10, */
1969 /* BLEND_SRC1_ALPHA = 0x11, */
1970 /* BLEND_INV_SRC1_ALPHA = 0x12, */
1971 /* BLEND_CONSTANT_ALPHA = 0x13, */
1972 /* BLEND_ONE_MINUS_CONSTANT_ALPHA = 0x14, */
1973 /* OPACITY_WEIGHT_bit = 1 << 13, */
1974 /* ALPHA_SRCBLEND_mask = 0x1f << 16, */
1975 /* ALPHA_SRCBLEND_shift = 16, */
1976 /* BLEND_ZERO = 0x00, */
1977 /* BLEND_ONE = 0x01, */
1978 /* BLEND_SRC_COLOR = 0x02, */
1979 /* BLEND_ONE_MINUS_SRC_COLOR = 0x03, */
1980 /* BLEND_SRC_ALPHA = 0x04, */
1981 /* BLEND_ONE_MINUS_SRC_ALPHA = 0x05, */
1982 /* BLEND_DST_ALPHA = 0x06, */
1983 /* BLEND_ONE_MINUS_DST_ALPHA = 0x07, */
1984 /* BLEND_DST_COLOR = 0x08, */
1985 /* BLEND_ONE_MINUS_DST_COLOR = 0x09, */
1986 /* BLEND_SRC_ALPHA_SATURATE = 0x0a, */
1987 /* BLEND_BOTH_SRC_ALPHA = 0x0b, */
1988 /* BLEND_BOTH_INV_SRC_ALPHA = 0x0c, */
1989 /* BLEND_CONSTANT_COLOR = 0x0d, */
1990 /* BLEND_ONE_MINUS_CONSTANT_COLOR = 0x0e, */
1991 /* BLEND_SRC1_COLOR = 0x0f, */
1992 /* BLEND_INV_SRC1_COLOR = 0x10, */
1993 /* BLEND_SRC1_ALPHA = 0x11, */
1994 /* BLEND_INV_SRC1_ALPHA = 0x12, */
1995 /* BLEND_CONSTANT_ALPHA = 0x13, */
1996 /* BLEND_ONE_MINUS_CONSTANT_ALPHA = 0x14, */
1997 /* ALPHA_COMB_FCN_mask = 0x07 << 21, */
1998 /* ALPHA_COMB_FCN_shift = 21, */
1999 /* COMB_DST_PLUS_SRC = 0x00, */
2000 /* COMB_SRC_MINUS_DST = 0x01, */
2001 /* COMB_MIN_DST_SRC = 0x02, */
2002 /* COMB_MAX_DST_SRC = 0x03, */
2003 /* COMB_DST_MINUS_SRC = 0x04, */
2004 /* ALPHA_DESTBLEND_mask = 0x1f << 24, */
2005 /* ALPHA_DESTBLEND_shift = 24, */
2006 /* BLEND_ZERO = 0x00, */
2007 /* BLEND_ONE = 0x01, */
2008 /* BLEND_SRC_COLOR = 0x02, */
2009 /* BLEND_ONE_MINUS_SRC_COLOR = 0x03, */
2010 /* BLEND_SRC_ALPHA = 0x04, */
2011 /* BLEND_ONE_MINUS_SRC_ALPHA = 0x05, */
2012 /* BLEND_DST_ALPHA = 0x06, */
2013 /* BLEND_ONE_MINUS_DST_ALPHA = 0x07, */
2014 /* BLEND_DST_COLOR = 0x08, */
2015 /* BLEND_ONE_MINUS_DST_COLOR = 0x09, */
2016 /* BLEND_SRC_ALPHA_SATURATE = 0x0a, */
2017 /* BLEND_BOTH_SRC_ALPHA = 0x0b, */
2018 /* BLEND_BOTH_INV_SRC_ALPHA = 0x0c, */
2019 /* BLEND_CONSTANT_COLOR = 0x0d, */
2020 /* BLEND_ONE_MINUS_CONSTANT_COLOR = 0x0e, */
2021 /* BLEND_SRC1_COLOR = 0x0f, */
2022 /* BLEND_INV_SRC1_COLOR = 0x10, */
2023 /* BLEND_SRC1_ALPHA = 0x11, */
2024 /* BLEND_INV_SRC1_ALPHA = 0x12, */
2025 /* BLEND_CONSTANT_ALPHA = 0x13, */
2026 /* BLEND_ONE_MINUS_CONSTANT_ALPHA = 0x14, */
2027 /* SEPARATE_ALPHA_BLEND_bit = 1 << 29, */
2028 CB_COLOR_CONTROL = 0x00028808,
2029 FOG_ENABLE_bit = 1 << 0,
2030 MULTIWRITE_ENABLE_bit = 1 << 1,
2031 DITHER_ENABLE_bit = 1 << 2,
2032 DEGAMMA_ENABLE_bit = 1 << 3,
2033 SPECIAL_OP_mask = 0x07 << 4,
2034 SPECIAL_OP_shift = 4,
2035 SPECIAL_NORMAL = 0x00,
2036 SPECIAL_DISABLE = 0x01,
2037 SPECIAL_FAST_CLEAR = 0x02,
2038 SPECIAL_FORCE_CLEAR = 0x03,
2039 SPECIAL_EXPAND_COLOR = 0x04,
2040 SPECIAL_EXPAND_TEXTURE = 0x05,
2041 SPECIAL_EXPAND_SAMPLES = 0x06,
2042 SPECIAL_RESOLVE_BOX = 0x07,
2043 PER_MRT_BLEND_bit = 1 << 7,
2044 TARGET_BLEND_ENABLE_mask = 0xff << 8,
2045 TARGET_BLEND_ENABLE_shift = 8,
2046 ROP3_mask = 0xff << 16,
2048 DB_SHADER_CONTROL = 0x0002880c,
2049 Z_EXPORT_ENABLE_bit = 1 << 0,
2050 STENCIL_REF_EXPORT_ENABLE_bit = 1 << 1,
2051 Z_ORDER_mask = 0x03 << 4,
2054 EARLY_Z_THEN_LATE_Z = 0x01,
2056 EARLY_Z_THEN_RE_Z = 0x03,
2057 KILL_ENABLE_bit = 1 << 6,
2058 COVERAGE_TO_MASK_ENABLE_bit = 1 << 7,
2059 MASK_EXPORT_ENABLE_bit = 1 << 8,
2060 DUAL_EXPORT_ENABLE_bit = 1 << 9,
2061 EXEC_ON_HIER_FAIL_bit = 1 << 10,
2062 EXEC_ON_NOOP_bit = 1 << 11,
2063 PA_CL_CLIP_CNTL = 0x00028810,
2064 UCP_ENA_0_bit = 1 << 0,
2065 UCP_ENA_1_bit = 1 << 1,
2066 UCP_ENA_2_bit = 1 << 2,
2067 UCP_ENA_3_bit = 1 << 3,
2068 UCP_ENA_4_bit = 1 << 4,
2069 UCP_ENA_5_bit = 1 << 5,
2070 PS_UCP_Y_SCALE_NEG_bit = 1 << 13,
2071 PS_UCP_MODE_mask = 0x03 << 14,
2072 PS_UCP_MODE_shift = 14,
2073 CLIP_DISABLE_bit = 1 << 16,
2074 UCP_CULL_ONLY_ENA_bit = 1 << 17,
2075 BOUNDARY_EDGE_FLAG_ENA_bit = 1 << 18,
2076 DX_CLIP_SPACE_DEF_bit = 1 << 19,
2077 DIS_CLIP_ERR_DETECT_bit = 1 << 20,
2078 VTX_KILL_OR_bit = 1 << 21,
2079 DX_LINEAR_ATTR_CLIP_ENA_bit = 1 << 24,
2080 VTE_VPORT_PROVOKE_DISABLE_bit = 1 << 25,
2081 ZCLIP_NEAR_DISABLE_bit = 1 << 26,
2082 ZCLIP_FAR_DISABLE_bit = 1 << 27,
2083 PA_SU_SC_MODE_CNTL = 0x00028814,
2084 CULL_FRONT_bit = 1 << 0,
2085 CULL_BACK_bit = 1 << 1,
2087 POLY_MODE_mask = 0x03 << 3,
2088 POLY_MODE_shift = 3,
2089 X_DISABLE_POLY_MODE = 0x00,
2091 POLYMODE_FRONT_PTYPE_mask = 0x07 << 5,
2092 POLYMODE_FRONT_PTYPE_shift = 5,
2093 X_DRAW_POINTS = 0x00,
2094 X_DRAW_LINES = 0x01,
2095 X_DRAW_TRIANGLES = 0x02,
2096 POLYMODE_BACK_PTYPE_mask = 0x07 << 8,
2097 POLYMODE_BACK_PTYPE_shift = 8,
2098 /* X_DRAW_POINTS = 0x00, */
2099 /* X_DRAW_LINES = 0x01, */
2100 /* X_DRAW_TRIANGLES = 0x02, */
2101 POLY_OFFSET_FRONT_ENABLE_bit = 1 << 11,
2102 POLY_OFFSET_BACK_ENABLE_bit = 1 << 12,
2103 POLY_OFFSET_PARA_ENABLE_bit = 1 << 13,
2104 VTX_WINDOW_OFFSET_ENABLE_bit = 1 << 16,
2105 PROVOKING_VTX_LAST_bit = 1 << 19,
2106 PERSP_CORR_DIS_bit = 1 << 20,
2107 MULTI_PRIM_IB_ENA_bit = 1 << 21,
2108 PA_CL_VTE_CNTL = 0x00028818,
2109 VPORT_X_SCALE_ENA_bit = 1 << 0,
2110 VPORT_X_OFFSET_ENA_bit = 1 << 1,
2111 VPORT_Y_SCALE_ENA_bit = 1 << 2,
2112 VPORT_Y_OFFSET_ENA_bit = 1 << 3,
2113 VPORT_Z_SCALE_ENA_bit = 1 << 4,
2114 VPORT_Z_OFFSET_ENA_bit = 1 << 5,
2115 VTX_XY_FMT_bit = 1 << 8,
2116 VTX_Z_FMT_bit = 1 << 9,
2117 VTX_W0_FMT_bit = 1 << 10,
2118 PERFCOUNTER_REF_bit = 1 << 11,
2119 PA_CL_VS_OUT_CNTL = 0x0002881c,
2120 CLIP_DIST_ENA_0_bit = 1 << 0,
2121 CLIP_DIST_ENA_1_bit = 1 << 1,
2122 CLIP_DIST_ENA_2_bit = 1 << 2,
2123 CLIP_DIST_ENA_3_bit = 1 << 3,
2124 CLIP_DIST_ENA_4_bit = 1 << 4,
2125 CLIP_DIST_ENA_5_bit = 1 << 5,
2126 CLIP_DIST_ENA_6_bit = 1 << 6,
2127 CLIP_DIST_ENA_7_bit = 1 << 7,
2128 CULL_DIST_ENA_0_bit = 1 << 8,
2129 CULL_DIST_ENA_1_bit = 1 << 9,
2130 CULL_DIST_ENA_2_bit = 1 << 10,
2131 CULL_DIST_ENA_3_bit = 1 << 11,
2132 CULL_DIST_ENA_4_bit = 1 << 12,
2133 CULL_DIST_ENA_5_bit = 1 << 13,
2134 CULL_DIST_ENA_6_bit = 1 << 14,
2135 CULL_DIST_ENA_7_bit = 1 << 15,
2136 USE_VTX_POINT_SIZE_bit = 1 << 16,
2137 USE_VTX_EDGE_FLAG_bit = 1 << 17,
2138 USE_VTX_RENDER_TARGET_INDX_bit = 1 << 18,
2139 USE_VTX_VIEWPORT_INDX_bit = 1 << 19,
2140 USE_VTX_KILL_FLAG_bit = 1 << 20,
2141 VS_OUT_MISC_VEC_ENA_bit = 1 << 21,
2142 VS_OUT_CCDIST0_VEC_ENA_bit = 1 << 22,
2143 VS_OUT_CCDIST1_VEC_ENA_bit = 1 << 23,
2144 PA_CL_NANINF_CNTL = 0x00028820,
2145 VTE_XY_INF_DISCARD_bit = 1 << 0,
2146 VTE_Z_INF_DISCARD_bit = 1 << 1,
2147 VTE_W_INF_DISCARD_bit = 1 << 2,
2148 VTE_0XNANINF_IS_0_bit = 1 << 3,
2149 VTE_XY_NAN_RETAIN_bit = 1 << 4,
2150 VTE_Z_NAN_RETAIN_bit = 1 << 5,
2151 VTE_W_NAN_RETAIN_bit = 1 << 6,
2152 VTE_W_RECIP_NAN_IS_0_bit = 1 << 7,
2153 VS_XY_NAN_TO_INF_bit = 1 << 8,
2154 VS_XY_INF_RETAIN_bit = 1 << 9,
2155 VS_Z_NAN_TO_INF_bit = 1 << 10,
2156 VS_Z_INF_RETAIN_bit = 1 << 11,
2157 VS_W_NAN_TO_INF_bit = 1 << 12,
2158 VS_W_INF_RETAIN_bit = 1 << 13,
2159 VS_CLIP_DIST_INF_DISCARD_bit = 1 << 14,
2160 VTE_NO_OUTPUT_NEG_0_bit = 1 << 20,
2161 SQ_PGM_START_PS = 0x00028840,
2162 SQ_PGM_RESOURCES_PS = 0x00028850,
2163 NUM_GPRS_mask = 0xff << 0,
2165 STACK_SIZE_mask = 0xff << 8,
2166 STACK_SIZE_shift = 8,
2167 SQ_PGM_RESOURCES_PS__DX10_CLAMP_bit = 1 << 21,
2168 FETCH_CACHE_LINES_mask = 0x07 << 24,
2169 FETCH_CACHE_LINES_shift = 24,
2170 UNCACHED_FIRST_INST_bit = 1 << 28,
2171 CLAMP_CONSTS_bit = 1 << 31,
2172 SQ_PGM_EXPORTS_PS = 0x00028854,
2173 EXPORT_MODE_mask = 0x1f << 0,
2174 EXPORT_MODE_shift = 0,
2175 SQ_PGM_START_VS = 0x00028858,
2176 SQ_PGM_RESOURCES_VS = 0x00028868,
2177 /* NUM_GPRS_mask = 0xff << 0, */
2178 /* NUM_GPRS_shift = 0, */
2179 /* STACK_SIZE_mask = 0xff << 8, */
2180 /* STACK_SIZE_shift = 8, */
2181 SQ_PGM_RESOURCES_VS__DX10_CLAMP_bit = 1 << 21,
2182 /* FETCH_CACHE_LINES_mask = 0x07 << 24, */
2183 /* FETCH_CACHE_LINES_shift = 24, */
2184 /* UNCACHED_FIRST_INST_bit = 1 << 28, */
2185 SQ_PGM_START_GS = 0x0002886c,
2186 SQ_PGM_RESOURCES_GS = 0x0002887c,
2187 /* NUM_GPRS_mask = 0xff << 0, */
2188 /* NUM_GPRS_shift = 0, */
2189 /* STACK_SIZE_mask = 0xff << 8, */
2190 /* STACK_SIZE_shift = 8, */
2191 SQ_PGM_RESOURCES_GS__DX10_CLAMP_bit = 1 << 21,
2192 /* FETCH_CACHE_LINES_mask = 0x07 << 24, */
2193 /* FETCH_CACHE_LINES_shift = 24, */
2194 /* UNCACHED_FIRST_INST_bit = 1 << 28, */
2195 SQ_PGM_START_ES = 0x00028880,
2196 SQ_PGM_RESOURCES_ES = 0x00028890,
2197 /* NUM_GPRS_mask = 0xff << 0, */
2198 /* NUM_GPRS_shift = 0, */
2199 /* STACK_SIZE_mask = 0xff << 8, */
2200 /* STACK_SIZE_shift = 8, */
2201 SQ_PGM_RESOURCES_ES__DX10_CLAMP_bit = 1 << 21,
2202 /* FETCH_CACHE_LINES_mask = 0x07 << 24, */
2203 /* FETCH_CACHE_LINES_shift = 24, */
2204 /* UNCACHED_FIRST_INST_bit = 1 << 28, */
2205 SQ_PGM_START_FS = 0x00028894,
2206 SQ_PGM_RESOURCES_FS = 0x000288a4,
2207 /* NUM_GPRS_mask = 0xff << 0, */
2208 /* NUM_GPRS_shift = 0, */
2209 /* STACK_SIZE_mask = 0xff << 8, */
2210 /* STACK_SIZE_shift = 8, */
2211 SQ_PGM_RESOURCES_FS__DX10_CLAMP_bit = 1 << 21,
2212 SQ_ESGS_RING_ITEMSIZE = 0x000288a8,
2213 ITEMSIZE_mask = 0x7fff << 0,
2215 SQ_GSVS_RING_ITEMSIZE = 0x000288ac,
2216 /* ITEMSIZE_mask = 0x7fff << 0, */
2217 /* ITEMSIZE_shift = 0, */
2218 SQ_ESTMP_RING_ITEMSIZE = 0x000288b0,
2219 /* ITEMSIZE_mask = 0x7fff << 0, */
2220 /* ITEMSIZE_shift = 0, */
2221 SQ_GSTMP_RING_ITEMSIZE = 0x000288b4,
2222 /* ITEMSIZE_mask = 0x7fff << 0, */
2223 /* ITEMSIZE_shift = 0, */
2224 SQ_VSTMP_RING_ITEMSIZE = 0x000288b8,
2225 /* ITEMSIZE_mask = 0x7fff << 0, */
2226 /* ITEMSIZE_shift = 0, */
2227 SQ_PSTMP_RING_ITEMSIZE = 0x000288bc,
2228 /* ITEMSIZE_mask = 0x7fff << 0, */
2229 /* ITEMSIZE_shift = 0, */
2230 SQ_FBUF_RING_ITEMSIZE = 0x000288c0,
2231 /* ITEMSIZE_mask = 0x7fff << 0, */
2232 /* ITEMSIZE_shift = 0, */
2233 SQ_REDUC_RING_ITEMSIZE = 0x000288c4,
2234 /* ITEMSIZE_mask = 0x7fff << 0, */
2235 /* ITEMSIZE_shift = 0, */
2236 SQ_GS_VERT_ITEMSIZE = 0x000288c8,
2237 /* ITEMSIZE_mask = 0x7fff << 0, */
2238 /* ITEMSIZE_shift = 0, */
2239 SQ_PGM_CF_OFFSET_PS = 0x000288cc,
2240 PGM_CF_OFFSET_mask = 0xfffff << 0,
2241 PGM_CF_OFFSET_shift = 0,
2242 SQ_PGM_CF_OFFSET_VS = 0x000288d0,
2243 /* PGM_CF_OFFSET_mask = 0xfffff << 0, */
2244 /* PGM_CF_OFFSET_shift = 0, */
2245 SQ_PGM_CF_OFFSET_GS = 0x000288d4,
2246 /* PGM_CF_OFFSET_mask = 0xfffff << 0, */
2247 /* PGM_CF_OFFSET_shift = 0, */
2248 SQ_PGM_CF_OFFSET_ES = 0x000288d8,
2249 /* PGM_CF_OFFSET_mask = 0xfffff << 0, */
2250 /* PGM_CF_OFFSET_shift = 0, */
2251 SQ_PGM_CF_OFFSET_FS = 0x000288dc,
2252 /* PGM_CF_OFFSET_mask = 0xfffff << 0, */
2253 /* PGM_CF_OFFSET_shift = 0, */
2254 SQ_VTX_SEMANTIC_CLEAR = 0x000288e0,
2255 SQ_ALU_CONST_CACHE_PS_0 = 0x00028940,
2256 SQ_ALU_CONST_CACHE_PS_0_num = 16,
2257 SQ_ALU_CONST_CACHE_VS_0 = 0x00028980,
2258 SQ_ALU_CONST_CACHE_VS_0_num = 16,
2259 SQ_ALU_CONST_CACHE_GS_0 = 0x000289c0,
2260 SQ_ALU_CONST_CACHE_GS_0_num = 16,
2261 PA_SU_POINT_SIZE = 0x00028a00,
2262 PA_SU_POINT_SIZE__HEIGHT_mask = 0xffff << 0,
2263 PA_SU_POINT_SIZE__HEIGHT_shift = 0,
2264 PA_SU_POINT_SIZE__WIDTH_mask = 0xffff << 16,
2265 PA_SU_POINT_SIZE__WIDTH_shift = 16,
2266 PA_SU_POINT_MINMAX = 0x00028a04,
2267 MIN_SIZE_mask = 0xffff << 0,
2269 MAX_SIZE_mask = 0xffff << 16,
2270 MAX_SIZE_shift = 16,
2271 PA_SU_LINE_CNTL = 0x00028a08,
2272 PA_SU_LINE_CNTL__WIDTH_mask = 0xffff << 0,
2273 PA_SU_LINE_CNTL__WIDTH_shift = 0,
2274 PA_SC_LINE_STIPPLE = 0x00028a0c,
2275 LINE_PATTERN_mask = 0xffff << 0,
2276 LINE_PATTERN_shift = 0,
2277 REPEAT_COUNT_mask = 0xff << 16,
2278 REPEAT_COUNT_shift = 16,
2279 PATTERN_BIT_ORDER_bit = 1 << 28,
2280 AUTO_RESET_CNTL_mask = 0x03 << 29,
2281 AUTO_RESET_CNTL_shift = 29,
2282 VGT_OUTPUT_PATH_CNTL = 0x00028a10,
2283 PATH_SELECT_mask = 0x03 << 0,
2284 PATH_SELECT_shift = 0,
2285 VGT_OUTPATH_VTX_REUSE = 0x00,
2286 VGT_OUTPATH_TESS_EN = 0x01,
2287 VGT_OUTPATH_PASSTHRU = 0x02,
2288 VGT_OUTPATH_GS_BLOCK = 0x03,
2289 VGT_HOS_CNTL = 0x00028a14,
2290 TESS_MODE_mask = 0x03 << 0,
2291 TESS_MODE_shift = 0,
2292 VGT_HOS_MAX_TESS_LEVEL = 0x00028a18,
2293 VGT_HOS_MIN_TESS_LEVEL = 0x00028a1c,
2294 VGT_HOS_REUSE_DEPTH = 0x00028a20,
2295 REUSE_DEPTH_mask = 0xff << 0,
2296 REUSE_DEPTH_shift = 0,
2297 VGT_GROUP_PRIM_TYPE = 0x00028a24,
2298 VGT_GROUP_PRIM_TYPE__PRIM_TYPE_mask = 0x1f << 0,
2299 VGT_GROUP_PRIM_TYPE__PRIM_TYPE_shift = 0,
2300 VGT_GRP_3D_POINT = 0x00,
2301 VGT_GRP_3D_LINE = 0x01,
2302 VGT_GRP_3D_TRI = 0x02,
2303 VGT_GRP_3D_RECT = 0x03,
2304 VGT_GRP_3D_QUAD = 0x04,
2305 VGT_GRP_2D_COPY_RECT_V0 = 0x05,
2306 VGT_GRP_2D_COPY_RECT_V1 = 0x06,
2307 VGT_GRP_2D_COPY_RECT_V2 = 0x07,
2308 VGT_GRP_2D_COPY_RECT_V3 = 0x08,
2309 VGT_GRP_2D_FILL_RECT = 0x09,
2310 VGT_GRP_2D_LINE = 0x0a,
2311 VGT_GRP_2D_TRI = 0x0b,
2312 VGT_GRP_PRIM_INDEX_LINE = 0x0c,
2313 VGT_GRP_PRIM_INDEX_TRI = 0x0d,
2314 VGT_GRP_PRIM_INDEX_QUAD = 0x0e,
2315 VGT_GRP_3D_LINE_ADJ = 0x0f,
2316 VGT_GRP_3D_TRI_ADJ = 0x10,
2317 RETAIN_ORDER_bit = 1 << 14,
2318 RETAIN_QUADS_bit = 1 << 15,
2319 PRIM_ORDER_mask = 0x07 << 16,
2320 PRIM_ORDER_shift = 16,
2321 VGT_GRP_LIST = 0x00,
2322 VGT_GRP_STRIP = 0x01,
2324 VGT_GRP_LOOP = 0x03,
2325 VGT_GRP_POLYGON = 0x04,
2326 VGT_GROUP_FIRST_DECR = 0x00028a28,
2327 FIRST_DECR_mask = 0x0f << 0,
2328 FIRST_DECR_shift = 0,
2329 VGT_GROUP_DECR = 0x00028a2c,
2330 DECR_mask = 0x0f << 0,
2332 VGT_GROUP_VECT_0_CNTL = 0x00028a30,
2333 COMP_X_EN_bit = 1 << 0,
2334 COMP_Y_EN_bit = 1 << 1,
2335 COMP_Z_EN_bit = 1 << 2,
2336 COMP_W_EN_bit = 1 << 3,
2337 VGT_GROUP_VECT_0_CNTL__STRIDE_mask = 0xff << 8,
2338 VGT_GROUP_VECT_0_CNTL__STRIDE_shift = 8,
2339 SHIFT_mask = 0xff << 16,
2341 VGT_GROUP_VECT_1_CNTL = 0x00028a34,
2342 /* COMP_X_EN_bit = 1 << 0, */
2343 /* COMP_Y_EN_bit = 1 << 1, */
2344 /* COMP_Z_EN_bit = 1 << 2, */
2345 /* COMP_W_EN_bit = 1 << 3, */
2346 VGT_GROUP_VECT_1_CNTL__STRIDE_mask = 0xff << 8,
2347 VGT_GROUP_VECT_1_CNTL__STRIDE_shift = 8,
2348 /* SHIFT_mask = 0xff << 16, */
2349 /* SHIFT_shift = 16, */
2350 VGT_GROUP_VECT_0_FMT_CNTL = 0x00028a38,
2351 X_CONV_mask = 0x0f << 0,
2353 VGT_GRP_INDEX_16 = 0x00,
2354 VGT_GRP_INDEX_32 = 0x01,
2355 VGT_GRP_UINT_16 = 0x02,
2356 VGT_GRP_UINT_32 = 0x03,
2357 VGT_GRP_SINT_16 = 0x04,
2358 VGT_GRP_SINT_32 = 0x05,
2359 VGT_GRP_FLOAT_32 = 0x06,
2360 VGT_GRP_AUTO_PRIM = 0x07,
2361 VGT_GRP_FIX_1_23_TO_FLOAT = 0x08,
2362 X_OFFSET_mask = 0x0f << 4,
2364 Y_CONV_mask = 0x0f << 8,
2366 /* VGT_GRP_INDEX_16 = 0x00, */
2367 /* VGT_GRP_INDEX_32 = 0x01, */
2368 /* VGT_GRP_UINT_16 = 0x02, */
2369 /* VGT_GRP_UINT_32 = 0x03, */
2370 /* VGT_GRP_SINT_16 = 0x04, */
2371 /* VGT_GRP_SINT_32 = 0x05, */
2372 /* VGT_GRP_FLOAT_32 = 0x06, */
2373 /* VGT_GRP_AUTO_PRIM = 0x07, */
2374 /* VGT_GRP_FIX_1_23_TO_FLOAT = 0x08, */
2375 Y_OFFSET_mask = 0x0f << 12,
2376 Y_OFFSET_shift = 12,
2377 Z_CONV_mask = 0x0f << 16,
2379 /* VGT_GRP_INDEX_16 = 0x00, */
2380 /* VGT_GRP_INDEX_32 = 0x01, */
2381 /* VGT_GRP_UINT_16 = 0x02, */
2382 /* VGT_GRP_UINT_32 = 0x03, */
2383 /* VGT_GRP_SINT_16 = 0x04, */
2384 /* VGT_GRP_SINT_32 = 0x05, */
2385 /* VGT_GRP_FLOAT_32 = 0x06, */
2386 /* VGT_GRP_AUTO_PRIM = 0x07, */
2387 /* VGT_GRP_FIX_1_23_TO_FLOAT = 0x08, */
2388 Z_OFFSET_mask = 0x0f << 20,
2389 Z_OFFSET_shift = 20,
2390 W_CONV_mask = 0x0f << 24,
2392 /* VGT_GRP_INDEX_16 = 0x00, */
2393 /* VGT_GRP_INDEX_32 = 0x01, */
2394 /* VGT_GRP_UINT_16 = 0x02, */
2395 /* VGT_GRP_UINT_32 = 0x03, */
2396 /* VGT_GRP_SINT_16 = 0x04, */
2397 /* VGT_GRP_SINT_32 = 0x05, */
2398 /* VGT_GRP_FLOAT_32 = 0x06, */
2399 /* VGT_GRP_AUTO_PRIM = 0x07, */
2400 /* VGT_GRP_FIX_1_23_TO_FLOAT = 0x08, */
2401 W_OFFSET_mask = 0x0f << 28,
2402 W_OFFSET_shift = 28,
2403 VGT_GROUP_VECT_1_FMT_CNTL = 0x00028a3c,
2404 /* X_CONV_mask = 0x0f << 0, */
2405 /* X_CONV_shift = 0, */
2406 /* VGT_GRP_INDEX_16 = 0x00, */
2407 /* VGT_GRP_INDEX_32 = 0x01, */
2408 /* VGT_GRP_UINT_16 = 0x02, */
2409 /* VGT_GRP_UINT_32 = 0x03, */
2410 /* VGT_GRP_SINT_16 = 0x04, */
2411 /* VGT_GRP_SINT_32 = 0x05, */
2412 /* VGT_GRP_FLOAT_32 = 0x06, */
2413 /* VGT_GRP_AUTO_PRIM = 0x07, */
2414 /* VGT_GRP_FIX_1_23_TO_FLOAT = 0x08, */
2415 /* X_OFFSET_mask = 0x0f << 4, */
2416 /* X_OFFSET_shift = 4, */
2417 /* Y_CONV_mask = 0x0f << 8, */
2418 /* Y_CONV_shift = 8, */
2419 /* VGT_GRP_INDEX_16 = 0x00, */
2420 /* VGT_GRP_INDEX_32 = 0x01, */
2421 /* VGT_GRP_UINT_16 = 0x02, */
2422 /* VGT_GRP_UINT_32 = 0x03, */
2423 /* VGT_GRP_SINT_16 = 0x04, */
2424 /* VGT_GRP_SINT_32 = 0x05, */
2425 /* VGT_GRP_FLOAT_32 = 0x06, */
2426 /* VGT_GRP_AUTO_PRIM = 0x07, */
2427 /* VGT_GRP_FIX_1_23_TO_FLOAT = 0x08, */
2428 /* Y_OFFSET_mask = 0x0f << 12, */
2429 /* Y_OFFSET_shift = 12, */
2430 /* Z_CONV_mask = 0x0f << 16, */
2431 /* Z_CONV_shift = 16, */
2432 /* VGT_GRP_INDEX_16 = 0x00, */
2433 /* VGT_GRP_INDEX_32 = 0x01, */
2434 /* VGT_GRP_UINT_16 = 0x02, */
2435 /* VGT_GRP_UINT_32 = 0x03, */
2436 /* VGT_GRP_SINT_16 = 0x04, */
2437 /* VGT_GRP_SINT_32 = 0x05, */
2438 /* VGT_GRP_FLOAT_32 = 0x06, */
2439 /* VGT_GRP_AUTO_PRIM = 0x07, */
2440 /* VGT_GRP_FIX_1_23_TO_FLOAT = 0x08, */
2441 /* Z_OFFSET_mask = 0x0f << 20, */
2442 /* Z_OFFSET_shift = 20, */
2443 /* W_CONV_mask = 0x0f << 24, */
2444 /* W_CONV_shift = 24, */
2445 /* VGT_GRP_INDEX_16 = 0x00, */
2446 /* VGT_GRP_INDEX_32 = 0x01, */
2447 /* VGT_GRP_UINT_16 = 0x02, */
2448 /* VGT_GRP_UINT_32 = 0x03, */
2449 /* VGT_GRP_SINT_16 = 0x04, */
2450 /* VGT_GRP_SINT_32 = 0x05, */
2451 /* VGT_GRP_FLOAT_32 = 0x06, */
2452 /* VGT_GRP_AUTO_PRIM = 0x07, */
2453 /* VGT_GRP_FIX_1_23_TO_FLOAT = 0x08, */
2454 /* W_OFFSET_mask = 0x0f << 28, */
2455 /* W_OFFSET_shift = 28, */
2456 VGT_GS_MODE = 0x00028a40,
2457 MODE_mask = 0x03 << 0,
2460 GS_SCENARIO_A = 0x01,
2461 GS_SCENARIO_B = 0x02,
2462 GS_SCENARIO_G = 0x03,
2463 ES_PASSTHRU_bit = 1 << 2,
2464 CUT_MODE_mask = 0x03 << 3,
2470 PA_SC_MPASS_PS_CNTL = 0x00028a48,
2471 MPASS_PIX_VEC_PER_PASS_mask = 0xfffff << 0,
2472 MPASS_PIX_VEC_PER_PASS_shift = 0,
2473 MPASS_PS_ENA_bit = 1 << 31,
2474 PA_SC_MODE_CNTL = 0x00028a4c,
2475 MSAA_ENABLE_bit = 1 << 0,
2476 CLIPRECT_ENABLE_bit = 1 << 1,
2477 LINE_STIPPLE_ENABLE_bit = 1 << 2,
2478 MULTI_CHIP_PRIM_DISCARD_ENAB_bit = 1 << 3,
2479 WALK_ORDER_ENABLE_bit = 1 << 4,
2480 HALVE_DETAIL_SAMPLE_PERF_bit = 1 << 5,
2481 WALK_SIZE_bit = 1 << 6,
2482 WALK_ALIGNMENT_bit = 1 << 7,
2483 WALK_ALIGN8_PRIM_FITS_ST_bit = 1 << 8,
2484 TILE_COVER_NO_SCISSOR_bit = 1 << 9,
2485 KILL_PIX_POST_HI_Z_bit = 1 << 10,
2486 KILL_PIX_POST_DETAIL_MASK_bit = 1 << 11,
2487 MULTI_CHIP_SUPERTILE_ENABLE_bit = 1 << 12,
2488 TILE_COVER_DISABLE_bit = 1 << 13,
2489 FORCE_EOV_CNTDWN_ENABLE_bit = 1 << 14,
2490 FORCE_EOV_TILE_ENABLE_bit = 1 << 15,
2491 FORCE_EOV_REZ_ENABLE_bit = 1 << 16,
2492 PS_ITER_SAMPLE_bit = 1 << 17,
2493 VGT_ENHANCE = 0x00028a50,
2494 VGT_ENHANCE__MI_TIMESTAMP_RES_mask = 0x03 << 0,
2495 VGT_ENHANCE__MI_TIMESTAMP_RES_shift = 0,
2496 X_0_992_CLOCKS_LATENCY_RANGE_IN_STEPS_OF_32 = 0x00,
2497 X_0_496_CLOCKS_LATENCY_RANGE_IN_STEPS_OF_16 = 0x01,
2498 X_0_248_CLOCKS_LATENCY_RANGE_IN_STEPS_OF_8 = 0x02,
2499 X_0_124_CLOCKS_LATENCY_RANGE_IN_STEPS_OF_4 = 0x03,
2500 MISC_mask = 0x3fffffff << 2,
2502 VGT_GS_OUT_PRIM_TYPE = 0x00028a6c,
2503 OUTPRIM_TYPE_mask = 0x3f << 0,
2504 OUTPRIM_TYPE_shift = 0,
2508 VGT_DMA_SIZE = 0x00028a74,
2509 VGT_DMA_INDEX_TYPE = 0x00028a7c,
2510 /* INDEX_TYPE_mask = 0x03 << 0, */
2511 /* INDEX_TYPE_shift = 0, */
2512 VGT_INDEX_16 = 0x00,
2513 VGT_INDEX_32 = 0x01,
2514 SWAP_MODE_mask = 0x03 << 2,
2515 SWAP_MODE_shift = 2,
2516 VGT_DMA_SWAP_NONE = 0x00,
2517 VGT_DMA_SWAP_16_BIT = 0x01,
2518 VGT_DMA_SWAP_32_BIT = 0x02,
2519 VGT_DMA_SWAP_WORD = 0x03,
2520 VGT_PRIMITIVEID_EN = 0x00028a84,
2521 PRIMITIVEID_EN_bit = 1 << 0,
2522 VGT_DMA_NUM_INSTANCES = 0x00028a88,
2523 VGT_EVENT_INITIATOR = 0x00028a90,
2524 EVENT_TYPE_mask = 0x3f << 0,
2525 EVENT_TYPE_shift = 0,
2526 CACHE_FLUSH_TS = 0x04,
2527 CONTEXT_DONE = 0x05,
2529 VIZQUERY_START = 0x07,
2530 VIZQUERY_END = 0x08,
2532 MPASS_PS_CP_REFETCH = 0x0a,
2533 MPASS_PS_RST_START = 0x0b,
2534 MPASS_PS_INCR_START = 0x0c,
2537 VS_PARTIAL_FLUSH = 0x0f,
2538 PS_PARTIAL_FLUSH = 0x10,
2539 CACHE_FLUSH_AND_INV_TS_EVENT = 0x14,
2541 CACHE_FLUSH_AND_INV_EVENT = 0x16,
2542 PERFCOUNTER_START = 0x17,
2543 PERFCOUNTER_STOP = 0x18,
2544 PIPELINESTAT_START = 0x19,
2545 PIPELINESTAT_STOP = 0x1a,
2546 PERFCOUNTER_SAMPLE = 0x1b,
2547 FLUSH_ES_OUTPUT = 0x1c,
2548 FLUSH_GS_OUTPUT = 0x1d,
2549 SAMPLE_PIPELINESTAT = 0x1e,
2550 SO_VGTSTREAMOUT_FLUSH = 0x1f,
2551 SAMPLE_STREAMOUTSTATS = 0x20,
2552 RESET_VTX_CNT = 0x21,
2553 BLOCK_CONTEXT_DONE = 0x22,
2554 CR_CONTEXT_DONE = 0x23,
2557 SQ_NON_EVENT = 0x26,
2558 SC_SEND_DB_VPZ = 0x27,
2559 BOTTOM_OF_PIPE_TS = 0x28,
2560 DB_CACHE_FLUSH_AND_INV = 0x2a,
2561 ADDRESS_HI_mask = 0xff << 19,
2562 ADDRESS_HI_shift = 19,
2563 EXTENDED_EVENT_bit = 1 << 27,
2564 VGT_MULTI_PRIM_IB_RESET_EN = 0x00028a94,
2565 RESET_EN_bit = 1 << 0,
2566 VGT_INSTANCE_STEP_RATE_0 = 0x00028aa0,
2567 VGT_INSTANCE_STEP_RATE_1 = 0x00028aa4,
2568 VGT_STRMOUT_EN = 0x00028ab0,
2569 STREAMOUT_bit = 1 << 0,
2570 VGT_REUSE_OFF = 0x00028ab4,
2571 REUSE_OFF_bit = 1 << 0,
2572 VGT_VTX_CNT_EN = 0x00028ab8,
2573 VTX_CNT_EN_bit = 1 << 0,
2574 VGT_STRMOUT_BUFFER_SIZE_0 = 0x00028ad0,
2575 VGT_STRMOUT_VTX_STRIDE_0 = 0x00028ad4,
2576 VGT_STRMOUT_VTX_STRIDE_0__STRIDE_mask = 0x3ff << 0,
2577 VGT_STRMOUT_VTX_STRIDE_0__STRIDE_shift = 0,
2578 VGT_STRMOUT_BUFFER_BASE_0 = 0x00028ad8,
2579 VGT_STRMOUT_BUFFER_OFFSET_0 = 0x00028adc,
2580 VGT_STRMOUT_BUFFER_SIZE_1 = 0x00028ae0,
2581 VGT_STRMOUT_VTX_STRIDE_1 = 0x00028ae4,
2582 VGT_STRMOUT_VTX_STRIDE_1__STRIDE_mask = 0x3ff << 0,
2583 VGT_STRMOUT_VTX_STRIDE_1__STRIDE_shift = 0,
2584 VGT_STRMOUT_BUFFER_BASE_1 = 0x00028ae8,
2585 VGT_STRMOUT_BUFFER_OFFSET_1 = 0x00028aec,
2586 VGT_STRMOUT_BUFFER_SIZE_2 = 0x00028af0,
2587 VGT_STRMOUT_VTX_STRIDE_2 = 0x00028af4,
2588 VGT_STRMOUT_VTX_STRIDE_2__STRIDE_mask = 0x3ff << 0,
2589 VGT_STRMOUT_VTX_STRIDE_2__STRIDE_shift = 0,
2590 VGT_STRMOUT_BUFFER_BASE_2 = 0x00028af8,
2591 VGT_STRMOUT_BUFFER_OFFSET_2 = 0x00028afc,
2592 VGT_STRMOUT_BUFFER_SIZE_3 = 0x00028b00,
2593 VGT_STRMOUT_VTX_STRIDE_3 = 0x00028b04,
2594 VGT_STRMOUT_VTX_STRIDE_3__STRIDE_mask = 0x3ff << 0,
2595 VGT_STRMOUT_VTX_STRIDE_3__STRIDE_shift = 0,
2596 VGT_STRMOUT_BUFFER_BASE_3 = 0x00028b08,
2597 VGT_STRMOUT_BUFFER_OFFSET_3 = 0x00028b0c,
2598 VGT_STRMOUT_BASE_OFFSET_0 = 0x00028b10,
2599 VGT_STRMOUT_BASE_OFFSET_1 = 0x00028b14,
2600 VGT_STRMOUT_BASE_OFFSET_2 = 0x00028b18,
2601 VGT_STRMOUT_BASE_OFFSET_3 = 0x00028b1c,
2602 VGT_STRMOUT_BUFFER_EN = 0x00028b20,
2603 BUFFER_0_EN_bit = 1 << 0,
2604 BUFFER_1_EN_bit = 1 << 1,
2605 BUFFER_2_EN_bit = 1 << 2,
2606 BUFFER_3_EN_bit = 1 << 3,
2607 VGT_STRMOUT_DRAW_OPAQUE_OFFSET = 0x00028b28,
2608 VGT_STRMOUT_DRAW_OPAQUE_BUFFER_FILLED_SIZE = 0x00028b2c,
2609 VGT_STRMOUT_DRAW_OPAQUE_VERTEX_STRIDE = 0x00028b30,
2610 VGT_STRMOUT_BASE_OFFSET_HI_0 = 0x00028b44,
2611 VGT_STRMOUT_BASE_OFFSET_HI_0__BASE_OFFSET_mask = 0x3f << 0,
2612 VGT_STRMOUT_BASE_OFFSET_HI_0__BASE_OFFSET_shift = 0,
2613 VGT_STRMOUT_BASE_OFFSET_HI_1 = 0x00028b48,
2614 VGT_STRMOUT_BASE_OFFSET_HI_1__BASE_OFFSET_mask = 0x3f << 0,
2615 VGT_STRMOUT_BASE_OFFSET_HI_1__BASE_OFFSET_shift = 0,
2616 VGT_STRMOUT_BASE_OFFSET_HI_2 = 0x00028b4c,
2617 VGT_STRMOUT_BASE_OFFSET_HI_2__BASE_OFFSET_mask = 0x3f << 0,
2618 VGT_STRMOUT_BASE_OFFSET_HI_2__BASE_OFFSET_shift = 0,
2619 VGT_STRMOUT_BASE_OFFSET_HI_3 = 0x00028b50,
2620 VGT_STRMOUT_BASE_OFFSET_HI_3__BASE_OFFSET_mask = 0x3f << 0,
2621 VGT_STRMOUT_BASE_OFFSET_HI_3__BASE_OFFSET_shift = 0,
2622 PA_SC_LINE_CNTL = 0x00028c00,
2623 BRES_CNTL_mask = 0xff << 0,
2624 BRES_CNTL_shift = 0,
2625 USE_BRES_CNTL_bit = 1 << 8,
2626 EXPAND_LINE_WIDTH_bit = 1 << 9,
2627 LAST_PIXEL_bit = 1 << 10,
2628 PA_SC_AA_CONFIG = 0x00028c04,
2629 MSAA_NUM_SAMPLES_mask = 0x03 << 0,
2630 MSAA_NUM_SAMPLES_shift = 0,
2631 AA_MASK_CENTROID_DTMN_bit = 1 << 4,
2632 MAX_SAMPLE_DIST_mask = 0x0f << 13,
2633 MAX_SAMPLE_DIST_shift = 13,
2634 PA_SU_VTX_CNTL = 0x00028c08,
2635 PIX_CENTER_bit = 1 << 0,
2636 PA_SU_VTX_CNTL__ROUND_MODE_mask = 0x03 << 1,
2637 PA_SU_VTX_CNTL__ROUND_MODE_shift = 1,
2640 X_ROUND_TO_EVEN = 0x02,
2641 X_ROUND_TO_ODD = 0x03,
2642 QUANT_MODE_mask = 0x07 << 3,
2643 QUANT_MODE_shift = 3,
2650 PA_CL_GB_VERT_CLIP_ADJ = 0x00028c0c,
2651 PA_CL_GB_VERT_DISC_ADJ = 0x00028c10,
2652 PA_CL_GB_HORZ_CLIP_ADJ = 0x00028c14,
2653 PA_CL_GB_HORZ_DISC_ADJ = 0x00028c18,
2654 PA_SC_AA_SAMPLE_LOCS_MCTX = 0x00028c1c,
2655 /* S0_X_mask = 0x0f << 0, */
2656 /* S0_X_shift = 0, */
2657 /* S0_Y_mask = 0x0f << 4, */
2658 /* S0_Y_shift = 4, */
2659 /* S1_X_mask = 0x0f << 8, */
2660 /* S1_X_shift = 8, */
2661 /* S1_Y_mask = 0x0f << 12, */
2662 /* S1_Y_shift = 12, */
2663 /* S2_X_mask = 0x0f << 16, */
2664 /* S2_X_shift = 16, */
2665 /* S2_Y_mask = 0x0f << 20, */
2666 /* S2_Y_shift = 20, */
2667 /* S3_X_mask = 0x0f << 24, */
2668 /* S3_X_shift = 24, */
2669 /* S3_Y_mask = 0x0f << 28, */
2670 /* S3_Y_shift = 28, */
2671 PA_SC_AA_SAMPLE_LOCS_8S_WD1_MCTX = 0x00028c20,
2672 /* S4_X_mask = 0x0f << 0, */
2673 /* S4_X_shift = 0, */
2674 /* S4_Y_mask = 0x0f << 4, */
2675 /* S4_Y_shift = 4, */
2676 /* S5_X_mask = 0x0f << 8, */
2677 /* S5_X_shift = 8, */
2678 /* S5_Y_mask = 0x0f << 12, */
2679 /* S5_Y_shift = 12, */
2680 /* S6_X_mask = 0x0f << 16, */
2681 /* S6_X_shift = 16, */
2682 /* S6_Y_mask = 0x0f << 20, */
2683 /* S6_Y_shift = 20, */
2684 /* S7_X_mask = 0x0f << 24, */
2685 /* S7_X_shift = 24, */
2686 /* S7_Y_mask = 0x0f << 28, */
2687 /* S7_Y_shift = 28, */
2688 CB_CLRCMP_CONTROL = 0x00028c30,
2689 CLRCMP_FCN_SRC_mask = 0x07 << 0,
2690 CLRCMP_FCN_SRC_shift = 0,
2691 CLRCMP_DRAW_ALWAYS = 0x00,
2692 CLRCMP_DRAW_NEVER = 0x01,
2693 CLRCMP_DRAW_ON_NEQ = 0x04,
2694 CLRCMP_DRAW_ON_EQ = 0x05,
2695 CLRCMP_FCN_DST_mask = 0x07 << 8,
2696 CLRCMP_FCN_DST_shift = 8,
2697 /* CLRCMP_DRAW_ALWAYS = 0x00, */
2698 /* CLRCMP_DRAW_NEVER = 0x01, */
2699 /* CLRCMP_DRAW_ON_NEQ = 0x04, */
2700 /* CLRCMP_DRAW_ON_EQ = 0x05, */
2701 CLRCMP_FCN_SEL_mask = 0x03 << 24,
2702 CLRCMP_FCN_SEL_shift = 24,
2703 CLRCMP_SEL_DST = 0x00,
2704 CLRCMP_SEL_SRC = 0x01,
2705 CLRCMP_SEL_AND = 0x02,
2706 CB_CLRCMP_SRC = 0x00028c34,
2707 CB_CLRCMP_DST = 0x00028c38,
2708 CB_CLRCMP_MSK = 0x00028c3c,
2709 PA_SC_AA_MASK = 0x00028c48,
2710 VGT_VERTEX_REUSE_BLOCK_CNTL = 0x00028c58,
2711 VTX_REUSE_DEPTH_mask = 0xff << 0,
2712 VTX_REUSE_DEPTH_shift = 0,
2713 VGT_OUT_DEALLOC_CNTL = 0x00028c5c,
2714 DEALLOC_DIST_mask = 0x7f << 0,
2715 DEALLOC_DIST_shift = 0,
2716 DB_RENDER_CONTROL = 0x00028d0c,
2717 DEPTH_CLEAR_ENABLE_bit = 1 << 0,
2718 STENCIL_CLEAR_ENABLE_bit = 1 << 1,
2719 DEPTH_COPY_bit = 1 << 2,
2720 STENCIL_COPY_bit = 1 << 3,
2721 RESUMMARIZE_ENABLE_bit = 1 << 4,
2722 STENCIL_COMPRESS_DISABLE_bit = 1 << 5,
2723 DEPTH_COMPRESS_DISABLE_bit = 1 << 6,
2724 COPY_CENTROID_bit = 1 << 7,
2725 COPY_SAMPLE_mask = 0x07 << 8,
2726 COPY_SAMPLE_shift = 8,
2727 ZPASS_INCREMENT_DISABLE_bit = 1 << 11,
2728 DB_RENDER_OVERRIDE = 0x00028d10,
2729 FORCE_HIZ_ENABLE_mask = 0x03 << 0,
2730 FORCE_HIZ_ENABLE_shift = 0,
2732 FORCE_ENABLE = 0x01,
2733 FORCE_DISABLE = 0x02,
2734 FORCE_RESERVED = 0x03,
2735 FORCE_HIS_ENABLE0_mask = 0x03 << 2,
2736 FORCE_HIS_ENABLE0_shift = 2,
2737 /* FORCE_OFF = 0x00, */
2738 /* FORCE_ENABLE = 0x01, */
2739 /* FORCE_DISABLE = 0x02, */
2740 /* FORCE_RESERVED = 0x03, */
2741 FORCE_HIS_ENABLE1_mask = 0x03 << 4,
2742 FORCE_HIS_ENABLE1_shift = 4,
2743 /* FORCE_OFF = 0x00, */
2744 /* FORCE_ENABLE = 0x01, */
2745 /* FORCE_DISABLE = 0x02, */
2746 /* FORCE_RESERVED = 0x03, */
2747 FORCE_SHADER_Z_ORDER_bit = 1 << 6,
2748 FAST_Z_DISABLE_bit = 1 << 7,
2749 FAST_STENCIL_DISABLE_bit = 1 << 8,
2750 NOOP_CULL_DISABLE_bit = 1 << 9,
2751 FORCE_COLOR_KILL_bit = 1 << 10,
2752 FORCE_Z_READ_bit = 1 << 11,
2753 FORCE_STENCIL_READ_bit = 1 << 12,
2754 FORCE_FULL_Z_RANGE_mask = 0x03 << 13,
2755 FORCE_FULL_Z_RANGE_shift = 13,
2756 /* FORCE_OFF = 0x00, */
2757 /* FORCE_ENABLE = 0x01, */
2758 /* FORCE_DISABLE = 0x02, */
2759 /* FORCE_RESERVED = 0x03, */
2760 FORCE_QC_SMASK_CONFLICT_bit = 1 << 15,
2761 DISABLE_VIEWPORT_CLAMP_bit = 1 << 16,
2762 IGNORE_SC_ZRANGE_bit = 1 << 17,
2763 DB_HTILE_SURFACE = 0x00028d24,
2764 HTILE_WIDTH_bit = 1 << 0,
2765 HTILE_HEIGHT_bit = 1 << 1,
2766 LINEAR_bit = 1 << 2,
2767 FULL_CACHE_bit = 1 << 3,
2768 HTILE_USES_PRELOAD_WIN_bit = 1 << 4,
2769 PRELOAD_bit = 1 << 5,
2770 PREFETCH_WIDTH_mask = 0x3f << 6,
2771 PREFETCH_WIDTH_shift = 6,
2772 PREFETCH_HEIGHT_mask = 0x3f << 12,
2773 PREFETCH_HEIGHT_shift = 12,
2774 DB_SRESULTS_COMPARE_STATE1 = 0x00028d2c,
2775 COMPAREFUNC1_mask = 0x07 << 0,
2776 COMPAREFUNC1_shift = 0,
2777 /* REF_NEVER = 0x00, */
2778 /* REF_LESS = 0x01, */
2779 /* REF_EQUAL = 0x02, */
2780 /* REF_LEQUAL = 0x03, */
2781 /* REF_GREATER = 0x04, */
2782 /* REF_NOTEQUAL = 0x05, */
2783 /* REF_GEQUAL = 0x06, */
2784 /* REF_ALWAYS = 0x07, */
2785 COMPAREVALUE1_mask = 0xff << 4,
2786 COMPAREVALUE1_shift = 4,
2787 COMPAREMASK1_mask = 0xff << 12,
2788 COMPAREMASK1_shift = 12,
2789 ENABLE1_bit = 1 << 24,
2790 DB_PRELOAD_CONTROL = 0x00028d30,
2791 START_X_mask = 0xff << 0,
2793 START_Y_mask = 0xff << 8,
2795 MAX_X_mask = 0xff << 16,
2797 MAX_Y_mask = 0xff << 24,
2799 DB_PREFETCH_LIMIT = 0x00028d34,
2800 DEPTH_HEIGHT_TILE_MAX_mask = 0x3ff << 0,
2801 DEPTH_HEIGHT_TILE_MAX_shift = 0,
2802 PA_SU_POLY_OFFSET_DB_FMT_CNTL = 0x00028df8,
2803 POLY_OFFSET_NEG_NUM_DB_BITS_mask = 0xff << 0,
2804 POLY_OFFSET_NEG_NUM_DB_BITS_shift = 0,
2805 POLY_OFFSET_DB_IS_FLOAT_FMT_bit = 1 << 8,
2806 PA_SU_POLY_OFFSET_CLAMP = 0x00028dfc,
2807 PA_SU_POLY_OFFSET_FRONT_SCALE = 0x00028e00,
2808 PA_SU_POLY_OFFSET_FRONT_OFFSET = 0x00028e04,
2809 PA_SU_POLY_OFFSET_BACK_SCALE = 0x00028e08,
2810 PA_SU_POLY_OFFSET_BACK_OFFSET = 0x00028e0c,
2811 PA_CL_POINT_X_RAD = 0x00028e10,
2812 PA_CL_POINT_Y_RAD = 0x00028e14,
2813 PA_CL_POINT_SIZE = 0x00028e18,
2814 PA_CL_POINT_CULL_RAD = 0x00028e1c,
2815 PA_CL_UCP_0_X = 0x00028e20,
2816 PA_CL_UCP_0_X_num = 6,
2817 PA_CL_UCP_0_X_offset = 16,
2818 PA_CL_UCP_0_Y = 0x00028e24,
2819 PA_CL_UCP_0_Y_num = 6,
2820 PA_CL_UCP_0_Y_offset = 16,
2821 PA_CL_UCP_0_Z = 0x00028e28,
2822 PA_CL_UCP_0_Z_num = 6,
2823 PA_CL_UCP_0_Z_offset = 16,
2824 SQ_ALU_CONSTANT0_0 = 0x00030000,
2825 SQ_ALU_CONSTANT1_0 = 0x00030004,
2826 SQ_ALU_CONSTANT2_0 = 0x00030008,
2827 SQ_ALU_CONSTANT3_0 = 0x0003000c,
2828 SQ_VTX_CONSTANT_WORD0_0 = 0x00038000,
2829 SQ_TEX_RESOURCE_WORD0_0 = 0x00038000,
2830 DIM_mask = 0x07 << 0,
2832 SQ_TEX_DIM_1D = 0x00,
2833 SQ_TEX_DIM_2D = 0x01,
2834 SQ_TEX_DIM_3D = 0x02,
2835 SQ_TEX_DIM_CUBEMAP = 0x03,
2836 SQ_TEX_DIM_1D_ARRAY = 0x04,
2837 SQ_TEX_DIM_2D_ARRAY = 0x05,
2838 SQ_TEX_DIM_2D_MSAA = 0x06,
2839 SQ_TEX_DIM_2D_ARRAY_MSAA = 0x07,
2840 SQ_TEX_RESOURCE_WORD0_0__TILE_MODE_mask = 0x0f << 3,
2841 SQ_TEX_RESOURCE_WORD0_0__TILE_MODE_shift = 3,
2842 TILE_TYPE_bit = 1 << 7,
2843 PITCH_mask = 0x7ff << 8,
2845 TEX_WIDTH_mask = 0x1fff << 19,
2846 TEX_WIDTH_shift = 19,
2847 SQ_VTX_CONSTANT_WORD1_0 = 0x00038004,
2848 SQ_TEX_RESOURCE_WORD1_0 = 0x00038004,
2849 TEX_HEIGHT_mask = 0x1fff << 0,
2850 TEX_HEIGHT_shift = 0,
2851 TEX_DEPTH_mask = 0x1fff << 13,
2852 TEX_DEPTH_shift = 13,
2853 SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask = 0x3f << 26,
2854 SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift = 26,
2855 SQ_VTX_CONSTANT_WORD2_0 = 0x00038008,
2856 BASE_ADDRESS_HI_mask = 0xff << 0,
2857 BASE_ADDRESS_HI_shift = 0,
2858 SQ_VTX_CONSTANT_WORD2_0__STRIDE_mask = 0x7ff << 8,
2859 SQ_VTX_CONSTANT_WORD2_0__STRIDE_shift = 8,
2860 SQ_VTX_CONSTANT_WORD2_0__CLAMP_X_bit = 1 << 19,
2861 SQ_VTX_CONSTANT_WORD2_0__DATA_FORMAT_mask = 0x3f << 20,
2862 SQ_VTX_CONSTANT_WORD2_0__DATA_FORMAT_shift = 20,
2863 SQ_VTX_CONSTANT_WORD2_0__NUM_FORMAT_ALL_mask = 0x03 << 26,
2864 SQ_VTX_CONSTANT_WORD2_0__NUM_FORMAT_ALL_shift = 26,
2865 /* SQ_NUM_FORMAT_NORM = 0x00, */
2866 /* SQ_NUM_FORMAT_INT = 0x01, */
2867 /* SQ_NUM_FORMAT_SCALED = 0x02, */
2868 SQ_VTX_CONSTANT_WORD2_0__FORMAT_COMP_ALL_bit = 1 << 28,
2869 SQ_VTX_CONSTANT_WORD2_0__SRF_MODE_ALL_bit = 1 << 29,
2870 SQ_VTX_CONSTANT_WORD2_0__ENDIAN_SWAP_mask = 0x03 << 30,
2871 SQ_VTX_CONSTANT_WORD2_0__ENDIAN_SWAP_shift = 30,
2872 /* SQ_ENDIAN_NONE = 0x00, */
2873 /* SQ_ENDIAN_8IN16 = 0x01, */
2874 /* SQ_ENDIAN_8IN32 = 0x02, */
2875 SQ_TEX_RESOURCE_WORD2_0 = 0x00038008,
2876 SQ_VTX_CONSTANT_WORD3_0 = 0x0003800c,
2877 MEM_REQUEST_SIZE_mask = 0x03 << 0,
2878 MEM_REQUEST_SIZE_shift = 0,
2879 SQ_TEX_RESOURCE_WORD3_0 = 0x0003800c,
2880 SQ_TEX_RESOURCE_WORD4_0 = 0x00038010,
2881 FORMAT_COMP_X_mask = 0x03 << 0,
2882 FORMAT_COMP_X_shift = 0,
2883 SQ_FORMAT_COMP_UNSIGNED = 0x00,
2884 SQ_FORMAT_COMP_SIGNED = 0x01,
2885 SQ_FORMAT_COMP_UNSIGNED_BIASED = 0x02,
2886 FORMAT_COMP_Y_mask = 0x03 << 2,
2887 FORMAT_COMP_Y_shift = 2,
2888 /* SQ_FORMAT_COMP_UNSIGNED = 0x00, */
2889 /* SQ_FORMAT_COMP_SIGNED = 0x01, */
2890 /* SQ_FORMAT_COMP_UNSIGNED_BIASED = 0x02, */
2891 FORMAT_COMP_Z_mask = 0x03 << 4,
2892 FORMAT_COMP_Z_shift = 4,
2893 /* SQ_FORMAT_COMP_UNSIGNED = 0x00, */
2894 /* SQ_FORMAT_COMP_SIGNED = 0x01, */
2895 /* SQ_FORMAT_COMP_UNSIGNED_BIASED = 0x02, */
2896 FORMAT_COMP_W_mask = 0x03 << 6,
2897 FORMAT_COMP_W_shift = 6,
2898 /* SQ_FORMAT_COMP_UNSIGNED = 0x00, */
2899 /* SQ_FORMAT_COMP_SIGNED = 0x01, */
2900 /* SQ_FORMAT_COMP_UNSIGNED_BIASED = 0x02, */
2901 SQ_TEX_RESOURCE_WORD4_0__NUM_FORMAT_ALL_mask = 0x03 << 8,
2902 SQ_TEX_RESOURCE_WORD4_0__NUM_FORMAT_ALL_shift = 8,
2903 /* SQ_NUM_FORMAT_NORM = 0x00, */
2904 /* SQ_NUM_FORMAT_INT = 0x01, */
2905 /* SQ_NUM_FORMAT_SCALED = 0x02, */
2906 SQ_TEX_RESOURCE_WORD4_0__SRF_MODE_ALL_bit = 1 << 10,
2907 SQ_TEX_RESOURCE_WORD4_0__FORCE_DEGAMMA_bit = 1 << 11,
2908 SQ_TEX_RESOURCE_WORD4_0__ENDIAN_SWAP_mask = 0x03 << 12,
2909 SQ_TEX_RESOURCE_WORD4_0__ENDIAN_SWAP_shift = 12,
2910 /* SQ_ENDIAN_NONE = 0x00, */
2911 /* SQ_ENDIAN_8IN16 = 0x01, */
2912 /* SQ_ENDIAN_8IN32 = 0x02, */
2913 REQUEST_SIZE_mask = 0x03 << 14,
2914 REQUEST_SIZE_shift = 14,
2915 SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask = 0x07 << 16,
2916 SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift = 16,
2917 /* SQ_SEL_X = 0x00, */
2918 /* SQ_SEL_Y = 0x01, */
2919 /* SQ_SEL_Z = 0x02, */
2920 /* SQ_SEL_W = 0x03, */
2921 /* SQ_SEL_0 = 0x04, */
2922 /* SQ_SEL_1 = 0x05, */
2923 SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask = 0x07 << 19,
2924 SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift = 19,
2925 /* SQ_SEL_X = 0x00, */
2926 /* SQ_SEL_Y = 0x01, */
2927 /* SQ_SEL_Z = 0x02, */
2928 /* SQ_SEL_W = 0x03, */
2929 /* SQ_SEL_0 = 0x04, */
2930 /* SQ_SEL_1 = 0x05, */
2931 SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask = 0x07 << 22,
2932 SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift = 22,
2933 /* SQ_SEL_X = 0x00, */
2934 /* SQ_SEL_Y = 0x01, */
2935 /* SQ_SEL_Z = 0x02, */
2936 /* SQ_SEL_W = 0x03, */
2937 /* SQ_SEL_0 = 0x04, */
2938 /* SQ_SEL_1 = 0x05, */
2939 SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask = 0x07 << 25,
2940 SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift = 25,
2941 /* SQ_SEL_X = 0x00, */
2942 /* SQ_SEL_Y = 0x01, */
2943 /* SQ_SEL_Z = 0x02, */
2944 /* SQ_SEL_W = 0x03, */
2945 /* SQ_SEL_0 = 0x04, */
2946 /* SQ_SEL_1 = 0x05, */
2947 BASE_LEVEL_mask = 0x0f << 28,
2948 BASE_LEVEL_shift = 28,
2949 SQ_TEX_RESOURCE_WORD5_0 = 0x00038014,
2950 LAST_LEVEL_mask = 0x0f << 0,
2951 LAST_LEVEL_shift = 0,
2952 BASE_ARRAY_mask = 0x1fff << 4,
2953 BASE_ARRAY_shift = 4,
2954 LAST_ARRAY_mask = 0x1fff << 17,
2955 LAST_ARRAY_shift = 17,
2956 SQ_TEX_RESOURCE_WORD6_0 = 0x00038018,
2957 MPEG_CLAMP_mask = 0x03 << 0,
2958 MPEG_CLAMP_shift = 0,
2959 SQ_TEX_MPEG_CLAMP_OFF = 0x00,
2960 SQ_TEX_MPEG_9 = 0x01,
2961 SQ_TEX_MPEG_10 = 0x02,
2962 PERF_MODULATION_mask = 0x07 << 5,
2963 PERF_MODULATION_shift = 5,
2964 INTERLACED_bit = 1 << 8,
2965 SQ_TEX_RESOURCE_WORD6_0__TYPE_mask = 0x03 << 30,
2966 SQ_TEX_RESOURCE_WORD6_0__TYPE_shift = 30,
2967 SQ_TEX_VTX_INVALID_TEXTURE = 0x00,
2968 SQ_TEX_VTX_INVALID_BUFFER = 0x01,
2969 SQ_TEX_VTX_VALID_TEXTURE = 0x02,
2970 SQ_TEX_VTX_VALID_BUFFER = 0x03,
2971 SQ_VTX_CONSTANT_WORD6_0 = 0x00038018,
2972 SQ_VTX_CONSTANT_WORD6_0__TYPE_mask = 0x03 << 30,
2973 SQ_VTX_CONSTANT_WORD6_0__TYPE_shift = 30,
2974 /* SQ_TEX_VTX_INVALID_TEXTURE = 0x00, */
2975 /* SQ_TEX_VTX_INVALID_BUFFER = 0x01, */
2976 /* SQ_TEX_VTX_VALID_TEXTURE = 0x02, */
2977 /* SQ_TEX_VTX_VALID_BUFFER = 0x03, */
2978 SQ_TEX_SAMPLER_WORD0_0 = 0x0003c000,
2979 SQ_TEX_SAMPLER_WORD0_0__CLAMP_X_mask = 0x07 << 0,
2980 SQ_TEX_SAMPLER_WORD0_0__CLAMP_X_shift = 0,
2982 SQ_TEX_MIRROR = 0x01,
2983 SQ_TEX_CLAMP_LAST_TEXEL = 0x02,
2984 SQ_TEX_MIRROR_ONCE_LAST_TEXEL = 0x03,
2985 SQ_TEX_CLAMP_HALF_BORDER = 0x04,
2986 SQ_TEX_MIRROR_ONCE_HALF_BORDER = 0x05,
2987 SQ_TEX_CLAMP_BORDER = 0x06,
2988 SQ_TEX_MIRROR_ONCE_BORDER = 0x07,
2989 CLAMP_Y_mask = 0x07 << 3,
2991 /* SQ_TEX_WRAP = 0x00, */
2992 /* SQ_TEX_MIRROR = 0x01, */
2993 /* SQ_TEX_CLAMP_LAST_TEXEL = 0x02, */
2994 /* SQ_TEX_MIRROR_ONCE_LAST_TEXEL = 0x03, */
2995 /* SQ_TEX_CLAMP_HALF_BORDER = 0x04, */
2996 /* SQ_TEX_MIRROR_ONCE_HALF_BORDER = 0x05, */
2997 /* SQ_TEX_CLAMP_BORDER = 0x06, */
2998 /* SQ_TEX_MIRROR_ONCE_BORDER = 0x07, */
2999 CLAMP_Z_mask = 0x07 << 6,
3001 /* SQ_TEX_WRAP = 0x00, */
3002 /* SQ_TEX_MIRROR = 0x01, */
3003 /* SQ_TEX_CLAMP_LAST_TEXEL = 0x02, */
3004 /* SQ_TEX_MIRROR_ONCE_LAST_TEXEL = 0x03, */
3005 /* SQ_TEX_CLAMP_HALF_BORDER = 0x04, */
3006 /* SQ_TEX_MIRROR_ONCE_HALF_BORDER = 0x05, */
3007 /* SQ_TEX_CLAMP_BORDER = 0x06, */
3008 /* SQ_TEX_MIRROR_ONCE_BORDER = 0x07, */
3009 XY_MAG_FILTER_mask = 0x07 << 9,
3010 XY_MAG_FILTER_shift = 9,
3011 SQ_TEX_XY_FILTER_POINT = 0x00,
3012 SQ_TEX_XY_FILTER_BILINEAR = 0x01,
3013 SQ_TEX_XY_FILTER_BICUBIC = 0x02,
3014 XY_MIN_FILTER_mask = 0x07 << 12,
3015 XY_MIN_FILTER_shift = 12,
3016 /* SQ_TEX_XY_FILTER_POINT = 0x00, */
3017 /* SQ_TEX_XY_FILTER_BILINEAR = 0x01, */
3018 /* SQ_TEX_XY_FILTER_BICUBIC = 0x02, */
3019 Z_FILTER_mask = 0x03 << 15,
3020 Z_FILTER_shift = 15,
3021 SQ_TEX_Z_FILTER_NONE = 0x00,
3022 SQ_TEX_Z_FILTER_POINT = 0x01,
3023 SQ_TEX_Z_FILTER_LINEAR = 0x02,
3024 MIP_FILTER_mask = 0x03 << 17,
3025 MIP_FILTER_shift = 17,
3026 /* SQ_TEX_Z_FILTER_NONE = 0x00, */
3027 /* SQ_TEX_Z_FILTER_POINT = 0x01, */
3028 /* SQ_TEX_Z_FILTER_LINEAR = 0x02, */
3029 BORDER_COLOR_TYPE_mask = 0x03 << 22,
3030 BORDER_COLOR_TYPE_shift = 22,
3031 SQ_TEX_BORDER_COLOR_TRANS_BLACK = 0x00,
3032 SQ_TEX_BORDER_COLOR_OPAQUE_BLACK = 0x01,
3033 SQ_TEX_BORDER_COLOR_OPAQUE_WHITE = 0x02,
3034 SQ_TEX_BORDER_COLOR_REGISTER = 0x03,
3035 POINT_SAMPLING_CLAMP_bit = 1 << 24,
3036 TEX_ARRAY_OVERRIDE_bit = 1 << 25,
3037 DEPTH_COMPARE_FUNCTION_mask = 0x07 << 26,
3038 DEPTH_COMPARE_FUNCTION_shift = 26,
3039 SQ_TEX_DEPTH_COMPARE_NEVER = 0x00,
3040 SQ_TEX_DEPTH_COMPARE_LESS = 0x01,
3041 SQ_TEX_DEPTH_COMPARE_EQUAL = 0x02,
3042 SQ_TEX_DEPTH_COMPARE_LESSEQUAL = 0x03,
3043 SQ_TEX_DEPTH_COMPARE_GREATER = 0x04,
3044 SQ_TEX_DEPTH_COMPARE_NOTEQUAL = 0x05,
3045 SQ_TEX_DEPTH_COMPARE_GREATEREQUAL = 0x06,
3046 SQ_TEX_DEPTH_COMPARE_ALWAYS = 0x07,
3047 CHROMA_KEY_mask = 0x03 << 29,
3048 CHROMA_KEY_shift = 29,
3049 SQ_TEX_CHROMA_KEY_DISABLED = 0x00,
3050 SQ_TEX_CHROMA_KEY_KILL = 0x01,
3051 SQ_TEX_CHROMA_KEY_BLEND = 0x02,
3052 LOD_USES_MINOR_AXIS_bit = 1 << 31,
3053 SQ_TEX_SAMPLER_WORD1_0 = 0x0003c004,
3054 MIN_LOD_mask = 0x3ff << 0,
3056 MAX_LOD_mask = 0x3ff << 10,
3058 SQ_TEX_SAMPLER_WORD1_0__LOD_BIAS_mask = 0xfff << 20,
3059 SQ_TEX_SAMPLER_WORD1_0__LOD_BIAS_shift = 20,
3060 SQ_TEX_SAMPLER_WORD2_0 = 0x0003c008,
3061 LOD_BIAS_SEC_mask = 0xfff << 0,
3062 LOD_BIAS_SEC_shift = 0,
3063 MC_COORD_TRUNCATE_bit = 1 << 12,
3064 SQ_TEX_SAMPLER_WORD2_0__FORCE_DEGAMMA_bit = 1 << 13,
3065 HIGH_PRECISION_FILTER_bit = 1 << 14,
3066 PERF_MIP_mask = 0x07 << 15,
3067 PERF_MIP_shift = 15,
3068 PERF_Z_mask = 0x03 << 18,
3070 FETCH_4_bit = 1 << 26,
3071 SAMPLE_IS_PCF_bit = 1 << 27,
3072 SQ_TEX_SAMPLER_WORD2_0__TYPE_bit = 1 << 31,
3073 SQ_VTX_BASE_VTX_LOC = 0x0003cff0,
3074 SQ_VTX_START_INST_LOC = 0x0003cff4,
3075 SQ_LOOP_CONST_DX10_0 = 0x0003e200,
3076 SQ_LOOP_CONST_0 = 0x0003e200,
3077 SQ_LOOP_CONST_0__COUNT_mask = 0xfff << 0,
3078 SQ_LOOP_CONST_0__COUNT_shift = 0,
3079 INIT_mask = 0xfff << 12,
3081 INC_mask = 0xff << 24,
3083 SQ_BOOL_CONST_0 = 0x0003e380,
3084 SQ_BOOL_CONST_0_num = 3,
3088 #endif /* _AUTOREGS */