1/*
2 * Copyright 2013 Advanced Micro Devices, Inc.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
10 *
11 * The above copyright notice and this permission notice shall be included in
12 * all copies or substantial portions of the Software.
13 *
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17 * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
18 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
19 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
20 * OTHER DEALINGS IN THE SOFTWARE.
21 *
22 */
23
24static const u32 si_SECT_CONTEXT_def_1[] =
25{
26    0x00000000, // DB_RENDER_CONTROL
27    0x00000000, // DB_COUNT_CONTROL
28    0x00000000, // DB_DEPTH_VIEW
29    0x00000000, // DB_RENDER_OVERRIDE
30    0x00000000, // DB_RENDER_OVERRIDE2
31    0x00000000, // DB_HTILE_DATA_BASE
32    0, // HOLE
33    0, // HOLE
34    0x00000000, // DB_DEPTH_BOUNDS_MIN
35    0x00000000, // DB_DEPTH_BOUNDS_MAX
36    0x00000000, // DB_STENCIL_CLEAR
37    0x00000000, // DB_DEPTH_CLEAR
38    0x00000000, // PA_SC_SCREEN_SCISSOR_TL
39    0x40004000, // PA_SC_SCREEN_SCISSOR_BR
40    0, // HOLE
41    0x00000000, // DB_DEPTH_INFO
42    0x00000000, // DB_Z_INFO
43    0x00000000, // DB_STENCIL_INFO
44    0x00000000, // DB_Z_READ_BASE
45    0x00000000, // DB_STENCIL_READ_BASE
46    0x00000000, // DB_Z_WRITE_BASE
47    0x00000000, // DB_STENCIL_WRITE_BASE
48    0x00000000, // DB_DEPTH_SIZE
49    0x00000000, // DB_DEPTH_SLICE
50    0, // HOLE
51    0, // HOLE
52    0, // HOLE
53    0, // HOLE
54    0, // HOLE
55    0, // HOLE
56    0, // HOLE
57    0, // HOLE
58    0x00000000, // TA_BC_BASE_ADDR
59    0, // HOLE
60    0, // HOLE
61    0, // HOLE
62    0, // HOLE
63    0, // HOLE
64    0, // HOLE
65    0, // HOLE
66    0, // HOLE
67    0, // HOLE
68    0, // HOLE
69    0, // HOLE
70    0, // HOLE
71    0, // HOLE
72    0, // HOLE
73    0, // HOLE
74    0, // HOLE
75    0, // HOLE
76    0, // HOLE
77    0, // HOLE
78    0, // HOLE
79    0, // HOLE
80    0, // HOLE
81    0, // HOLE
82    0, // HOLE
83    0, // HOLE
84    0, // HOLE
85    0, // HOLE
86    0, // HOLE
87    0, // HOLE
88    0, // HOLE
89    0, // HOLE
90    0, // HOLE
91    0, // HOLE
92    0, // HOLE
93    0, // HOLE
94    0, // HOLE
95    0, // HOLE
96    0, // HOLE
97    0, // HOLE
98    0, // HOLE
99    0, // HOLE
100    0, // HOLE
101    0, // HOLE
102    0, // HOLE
103    0, // HOLE
104    0, // HOLE
105    0, // HOLE
106    0, // HOLE
107    0, // HOLE
108    0, // HOLE
109    0, // HOLE
110    0, // HOLE
111    0, // HOLE
112    0, // HOLE
113    0, // HOLE
114    0, // HOLE
115    0, // HOLE
116    0, // HOLE
117    0, // HOLE
118    0, // HOLE
119    0, // HOLE
120    0, // HOLE
121    0, // HOLE
122    0, // HOLE
123    0, // HOLE
124    0, // HOLE
125    0, // HOLE
126    0, // HOLE
127    0, // HOLE
128    0, // HOLE
129    0, // HOLE
130    0, // HOLE
131    0, // HOLE
132    0, // HOLE
133    0, // HOLE
134    0, // HOLE
135    0, // HOLE
136    0, // HOLE
137    0, // HOLE
138    0, // HOLE
139    0, // HOLE
140    0, // HOLE
141    0, // HOLE
142    0, // HOLE
143    0, // HOLE
144    0, // HOLE
145    0, // HOLE
146    0, // HOLE
147    0, // HOLE
148    0, // HOLE
149    0, // HOLE
150    0, // HOLE
151    0, // HOLE
152    0x00000000, // COHER_DEST_BASE_2
153    0x00000000, // COHER_DEST_BASE_3
154    0x00000000, // PA_SC_WINDOW_OFFSET
155    0x80000000, // PA_SC_WINDOW_SCISSOR_TL
156    0x40004000, // PA_SC_WINDOW_SCISSOR_BR
157    0x0000ffff, // PA_SC_CLIPRECT_RULE
158    0x00000000, // PA_SC_CLIPRECT_0_TL
159    0x40004000, // PA_SC_CLIPRECT_0_BR
160    0x00000000, // PA_SC_CLIPRECT_1_TL
161    0x40004000, // PA_SC_CLIPRECT_1_BR
162    0x00000000, // PA_SC_CLIPRECT_2_TL
163    0x40004000, // PA_SC_CLIPRECT_2_BR
164    0x00000000, // PA_SC_CLIPRECT_3_TL
165    0x40004000, // PA_SC_CLIPRECT_3_BR
166    0xaa99aaaa, // PA_SC_EDGERULE
167    0x00000000, // PA_SU_HARDWARE_SCREEN_OFFSET
168    0xffffffff, // CB_TARGET_MASK
169    0xffffffff, // CB_SHADER_MASK
170    0x80000000, // PA_SC_GENERIC_SCISSOR_TL
171    0x40004000, // PA_SC_GENERIC_SCISSOR_BR
172    0x00000000, // COHER_DEST_BASE_0
173    0x00000000, // COHER_DEST_BASE_1
174    0x80000000, // PA_SC_VPORT_SCISSOR_0_TL
175    0x40004000, // PA_SC_VPORT_SCISSOR_0_BR
176    0x80000000, // PA_SC_VPORT_SCISSOR_1_TL
177    0x40004000, // PA_SC_VPORT_SCISSOR_1_BR
178    0x80000000, // PA_SC_VPORT_SCISSOR_2_TL
179    0x40004000, // PA_SC_VPORT_SCISSOR_2_BR
180    0x80000000, // PA_SC_VPORT_SCISSOR_3_TL
181    0x40004000, // PA_SC_VPORT_SCISSOR_3_BR
182    0x80000000, // PA_SC_VPORT_SCISSOR_4_TL
183    0x40004000, // PA_SC_VPORT_SCISSOR_4_BR
184    0x80000000, // PA_SC_VPORT_SCISSOR_5_TL
185    0x40004000, // PA_SC_VPORT_SCISSOR_5_BR
186    0x80000000, // PA_SC_VPORT_SCISSOR_6_TL
187    0x40004000, // PA_SC_VPORT_SCISSOR_6_BR
188    0x80000000, // PA_SC_VPORT_SCISSOR_7_TL
189    0x40004000, // PA_SC_VPORT_SCISSOR_7_BR
190    0x80000000, // PA_SC_VPORT_SCISSOR_8_TL
191    0x40004000, // PA_SC_VPORT_SCISSOR_8_BR
192    0x80000000, // PA_SC_VPORT_SCISSOR_9_TL
193    0x40004000, // PA_SC_VPORT_SCISSOR_9_BR
194    0x80000000, // PA_SC_VPORT_SCISSOR_10_TL
195    0x40004000, // PA_SC_VPORT_SCISSOR_10_BR
196    0x80000000, // PA_SC_VPORT_SCISSOR_11_TL
197    0x40004000, // PA_SC_VPORT_SCISSOR_11_BR
198    0x80000000, // PA_SC_VPORT_SCISSOR_12_TL
199    0x40004000, // PA_SC_VPORT_SCISSOR_12_BR
200    0x80000000, // PA_SC_VPORT_SCISSOR_13_TL
201    0x40004000, // PA_SC_VPORT_SCISSOR_13_BR
202    0x80000000, // PA_SC_VPORT_SCISSOR_14_TL
203    0x40004000, // PA_SC_VPORT_SCISSOR_14_BR
204    0x80000000, // PA_SC_VPORT_SCISSOR_15_TL
205    0x40004000, // PA_SC_VPORT_SCISSOR_15_BR
206    0x00000000, // PA_SC_VPORT_ZMIN_0
207    0x3f800000, // PA_SC_VPORT_ZMAX_0
208    0x00000000, // PA_SC_VPORT_ZMIN_1
209    0x3f800000, // PA_SC_VPORT_ZMAX_1
210    0x00000000, // PA_SC_VPORT_ZMIN_2
211    0x3f800000, // PA_SC_VPORT_ZMAX_2
212    0x00000000, // PA_SC_VPORT_ZMIN_3
213    0x3f800000, // PA_SC_VPORT_ZMAX_3
214    0x00000000, // PA_SC_VPORT_ZMIN_4
215    0x3f800000, // PA_SC_VPORT_ZMAX_4
216    0x00000000, // PA_SC_VPORT_ZMIN_5
217    0x3f800000, // PA_SC_VPORT_ZMAX_5
218    0x00000000, // PA_SC_VPORT_ZMIN_6
219    0x3f800000, // PA_SC_VPORT_ZMAX_6
220    0x00000000, // PA_SC_VPORT_ZMIN_7
221    0x3f800000, // PA_SC_VPORT_ZMAX_7
222    0x00000000, // PA_SC_VPORT_ZMIN_8
223    0x3f800000, // PA_SC_VPORT_ZMAX_8
224    0x00000000, // PA_SC_VPORT_ZMIN_9
225    0x3f800000, // PA_SC_VPORT_ZMAX_9
226    0x00000000, // PA_SC_VPORT_ZMIN_10
227    0x3f800000, // PA_SC_VPORT_ZMAX_10
228    0x00000000, // PA_SC_VPORT_ZMIN_11
229    0x3f800000, // PA_SC_VPORT_ZMAX_11
230    0x00000000, // PA_SC_VPORT_ZMIN_12
231    0x3f800000, // PA_SC_VPORT_ZMAX_12
232    0x00000000, // PA_SC_VPORT_ZMIN_13
233    0x3f800000, // PA_SC_VPORT_ZMAX_13
234    0x00000000, // PA_SC_VPORT_ZMIN_14
235    0x3f800000, // PA_SC_VPORT_ZMAX_14
236    0x00000000, // PA_SC_VPORT_ZMIN_15
237    0x3f800000, // PA_SC_VPORT_ZMAX_15
238};
239static const u32 si_SECT_CONTEXT_def_2[] =
240{
241    0x00000000, // CP_PERFMON_CNTX_CNTL
242    0x00000000, // CP_RINGID
243    0x00000000, // CP_VMID
244    0, // HOLE
245    0, // HOLE
246    0, // HOLE
247    0, // HOLE
248    0, // HOLE
249    0, // HOLE
250    0, // HOLE
251    0, // HOLE
252    0, // HOLE
253    0, // HOLE
254    0, // HOLE
255    0, // HOLE
256    0, // HOLE
257    0, // HOLE
258    0, // HOLE
259    0, // HOLE
260    0, // HOLE
261    0, // HOLE
262    0, // HOLE
263    0, // HOLE
264    0, // HOLE
265    0, // HOLE
266    0, // HOLE
267    0, // HOLE
268    0, // HOLE
269    0, // HOLE
270    0, // HOLE
271    0, // HOLE
272    0, // HOLE
273    0, // HOLE
274    0, // HOLE
275    0, // HOLE
276    0, // HOLE
277    0, // HOLE
278    0, // HOLE
279    0, // HOLE
280    0, // HOLE
281    0xffffffff, // VGT_MAX_VTX_INDX
282    0x00000000, // VGT_MIN_VTX_INDX
283    0x00000000, // VGT_INDX_OFFSET
284    0x00000000, // VGT_MULTI_PRIM_IB_RESET_INDX
285    0, // HOLE
286    0x00000000, // CB_BLEND_RED
287    0x00000000, // CB_BLEND_GREEN
288    0x00000000, // CB_BLEND_BLUE
289    0x00000000, // CB_BLEND_ALPHA
290    0, // HOLE
291    0, // HOLE
292    0x00000000, // DB_STENCIL_CONTROL
293    0x00000000, // DB_STENCILREFMASK
294    0x00000000, // DB_STENCILREFMASK_BF
295    0, // HOLE
296    0x00000000, // PA_CL_VPORT_XSCALE
297    0x00000000, // PA_CL_VPORT_XOFFSET
298    0x00000000, // PA_CL_VPORT_YSCALE
299    0x00000000, // PA_CL_VPORT_YOFFSET
300    0x00000000, // PA_CL_VPORT_ZSCALE
301    0x00000000, // PA_CL_VPORT_ZOFFSET
302    0x00000000, // PA_CL_VPORT_XSCALE_1
303    0x00000000, // PA_CL_VPORT_XOFFSET_1
304    0x00000000, // PA_CL_VPORT_YSCALE_1
305    0x00000000, // PA_CL_VPORT_YOFFSET_1
306    0x00000000, // PA_CL_VPORT_ZSCALE_1
307    0x00000000, // PA_CL_VPORT_ZOFFSET_1
308    0x00000000, // PA_CL_VPORT_XSCALE_2
309    0x00000000, // PA_CL_VPORT_XOFFSET_2
310    0x00000000, // PA_CL_VPORT_YSCALE_2
311    0x00000000, // PA_CL_VPORT_YOFFSET_2
312    0x00000000, // PA_CL_VPORT_ZSCALE_2
313    0x00000000, // PA_CL_VPORT_ZOFFSET_2
314    0x00000000, // PA_CL_VPORT_XSCALE_3
315    0x00000000, // PA_CL_VPORT_XOFFSET_3
316    0x00000000, // PA_CL_VPORT_YSCALE_3
317    0x00000000, // PA_CL_VPORT_YOFFSET_3
318    0x00000000, // PA_CL_VPORT_ZSCALE_3
319    0x00000000, // PA_CL_VPORT_ZOFFSET_3
320    0x00000000, // PA_CL_VPORT_XSCALE_4
321    0x00000000, // PA_CL_VPORT_XOFFSET_4
322    0x00000000, // PA_CL_VPORT_YSCALE_4
323    0x00000000, // PA_CL_VPORT_YOFFSET_4
324    0x00000000, // PA_CL_VPORT_ZSCALE_4
325    0x00000000, // PA_CL_VPORT_ZOFFSET_4
326    0x00000000, // PA_CL_VPORT_XSCALE_5
327    0x00000000, // PA_CL_VPORT_XOFFSET_5
328    0x00000000, // PA_CL_VPORT_YSCALE_5
329    0x00000000, // PA_CL_VPORT_YOFFSET_5
330    0x00000000, // PA_CL_VPORT_ZSCALE_5
331    0x00000000, // PA_CL_VPORT_ZOFFSET_5
332    0x00000000, // PA_CL_VPORT_XSCALE_6
333    0x00000000, // PA_CL_VPORT_XOFFSET_6
334    0x00000000, // PA_CL_VPORT_YSCALE_6
335    0x00000000, // PA_CL_VPORT_YOFFSET_6
336    0x00000000, // PA_CL_VPORT_ZSCALE_6
337    0x00000000, // PA_CL_VPORT_ZOFFSET_6
338    0x00000000, // PA_CL_VPORT_XSCALE_7
339    0x00000000, // PA_CL_VPORT_XOFFSET_7
340    0x00000000, // PA_CL_VPORT_YSCALE_7
341    0x00000000, // PA_CL_VPORT_YOFFSET_7
342    0x00000000, // PA_CL_VPORT_ZSCALE_7
343    0x00000000, // PA_CL_VPORT_ZOFFSET_7
344    0x00000000, // PA_CL_VPORT_XSCALE_8
345    0x00000000, // PA_CL_VPORT_XOFFSET_8
346    0x00000000, // PA_CL_VPORT_YSCALE_8
347    0x00000000, // PA_CL_VPORT_YOFFSET_8
348    0x00000000, // PA_CL_VPORT_ZSCALE_8
349    0x00000000, // PA_CL_VPORT_ZOFFSET_8
350    0x00000000, // PA_CL_VPORT_XSCALE_9
351    0x00000000, // PA_CL_VPORT_XOFFSET_9
352    0x00000000, // PA_CL_VPORT_YSCALE_9
353    0x00000000, // PA_CL_VPORT_YOFFSET_9
354    0x00000000, // PA_CL_VPORT_ZSCALE_9
355    0x00000000, // PA_CL_VPORT_ZOFFSET_9
356    0x00000000, // PA_CL_VPORT_XSCALE_10
357    0x00000000, // PA_CL_VPORT_XOFFSET_10
358    0x00000000, // PA_CL_VPORT_YSCALE_10
359    0x00000000, // PA_CL_VPORT_YOFFSET_10
360    0x00000000, // PA_CL_VPORT_ZSCALE_10
361    0x00000000, // PA_CL_VPORT_ZOFFSET_10
362    0x00000000, // PA_CL_VPORT_XSCALE_11
363    0x00000000, // PA_CL_VPORT_XOFFSET_11
364    0x00000000, // PA_CL_VPORT_YSCALE_11
365    0x00000000, // PA_CL_VPORT_YOFFSET_11
366    0x00000000, // PA_CL_VPORT_ZSCALE_11
367    0x00000000, // PA_CL_VPORT_ZOFFSET_11
368    0x00000000, // PA_CL_VPORT_XSCALE_12
369    0x00000000, // PA_CL_VPORT_XOFFSET_12
370    0x00000000, // PA_CL_VPORT_YSCALE_12
371    0x00000000, // PA_CL_VPORT_YOFFSET_12
372    0x00000000, // PA_CL_VPORT_ZSCALE_12
373    0x00000000, // PA_CL_VPORT_ZOFFSET_12
374    0x00000000, // PA_CL_VPORT_XSCALE_13
375    0x00000000, // PA_CL_VPORT_XOFFSET_13
376    0x00000000, // PA_CL_VPORT_YSCALE_13
377    0x00000000, // PA_CL_VPORT_YOFFSET_13
378    0x00000000, // PA_CL_VPORT_ZSCALE_13
379    0x00000000, // PA_CL_VPORT_ZOFFSET_13
380    0x00000000, // PA_CL_VPORT_XSCALE_14
381    0x00000000, // PA_CL_VPORT_XOFFSET_14
382    0x00000000, // PA_CL_VPORT_YSCALE_14
383    0x00000000, // PA_CL_VPORT_YOFFSET_14
384    0x00000000, // PA_CL_VPORT_ZSCALE_14
385    0x00000000, // PA_CL_VPORT_ZOFFSET_14
386    0x00000000, // PA_CL_VPORT_XSCALE_15
387    0x00000000, // PA_CL_VPORT_XOFFSET_15
388    0x00000000, // PA_CL_VPORT_YSCALE_15
389    0x00000000, // PA_CL_VPORT_YOFFSET_15
390    0x00000000, // PA_CL_VPORT_ZSCALE_15
391    0x00000000, // PA_CL_VPORT_ZOFFSET_15
392    0x00000000, // PA_CL_UCP_0_X
393    0x00000000, // PA_CL_UCP_0_Y
394    0x00000000, // PA_CL_UCP_0_Z
395    0x00000000, // PA_CL_UCP_0_W
396    0x00000000, // PA_CL_UCP_1_X
397    0x00000000, // PA_CL_UCP_1_Y
398    0x00000000, // PA_CL_UCP_1_Z
399    0x00000000, // PA_CL_UCP_1_W
400    0x00000000, // PA_CL_UCP_2_X
401    0x00000000, // PA_CL_UCP_2_Y
402    0x00000000, // PA_CL_UCP_2_Z
403    0x00000000, // PA_CL_UCP_2_W
404    0x00000000, // PA_CL_UCP_3_X
405    0x00000000, // PA_CL_UCP_3_Y
406    0x00000000, // PA_CL_UCP_3_Z
407    0x00000000, // PA_CL_UCP_3_W
408    0x00000000, // PA_CL_UCP_4_X
409    0x00000000, // PA_CL_UCP_4_Y
410    0x00000000, // PA_CL_UCP_4_Z
411    0x00000000, // PA_CL_UCP_4_W
412    0x00000000, // PA_CL_UCP_5_X
413    0x00000000, // PA_CL_UCP_5_Y
414    0x00000000, // PA_CL_UCP_5_Z
415    0x00000000, // PA_CL_UCP_5_W
416    0, // HOLE
417    0, // HOLE
418    0, // HOLE
419    0, // HOLE
420    0, // HOLE
421    0, // HOLE
422    0, // HOLE
423    0, // HOLE
424    0, // HOLE
425    0, // HOLE
426    0x00000000, // SPI_PS_INPUT_CNTL_0
427    0x00000000, // SPI_PS_INPUT_CNTL_1
428    0x00000000, // SPI_PS_INPUT_CNTL_2
429    0x00000000, // SPI_PS_INPUT_CNTL_3
430    0x00000000, // SPI_PS_INPUT_CNTL_4
431    0x00000000, // SPI_PS_INPUT_CNTL_5
432    0x00000000, // SPI_PS_INPUT_CNTL_6
433    0x00000000, // SPI_PS_INPUT_CNTL_7
434    0x00000000, // SPI_PS_INPUT_CNTL_8
435    0x00000000, // SPI_PS_INPUT_CNTL_9
436    0x00000000, // SPI_PS_INPUT_CNTL_10
437    0x00000000, // SPI_PS_INPUT_CNTL_11
438    0x00000000, // SPI_PS_INPUT_CNTL_12
439    0x00000000, // SPI_PS_INPUT_CNTL_13
440    0x00000000, // SPI_PS_INPUT_CNTL_14
441    0x00000000, // SPI_PS_INPUT_CNTL_15
442    0x00000000, // SPI_PS_INPUT_CNTL_16
443    0x00000000, // SPI_PS_INPUT_CNTL_17
444    0x00000000, // SPI_PS_INPUT_CNTL_18
445    0x00000000, // SPI_PS_INPUT_CNTL_19
446    0x00000000, // SPI_PS_INPUT_CNTL_20
447    0x00000000, // SPI_PS_INPUT_CNTL_21
448    0x00000000, // SPI_PS_INPUT_CNTL_22
449    0x00000000, // SPI_PS_INPUT_CNTL_23
450    0x00000000, // SPI_PS_INPUT_CNTL_24
451    0x00000000, // SPI_PS_INPUT_CNTL_25
452    0x00000000, // SPI_PS_INPUT_CNTL_26
453    0x00000000, // SPI_PS_INPUT_CNTL_27
454    0x00000000, // SPI_PS_INPUT_CNTL_28
455    0x00000000, // SPI_PS_INPUT_CNTL_29
456    0x00000000, // SPI_PS_INPUT_CNTL_30
457    0x00000000, // SPI_PS_INPUT_CNTL_31
458    0x00000000, // SPI_VS_OUT_CONFIG
459    0, // HOLE
460    0x00000000, // SPI_PS_INPUT_ENA
461    0x00000000, // SPI_PS_INPUT_ADDR
462    0x00000000, // SPI_INTERP_CONTROL_0
463    0x00000002, // SPI_PS_IN_CONTROL
464    0, // HOLE
465    0x00000000, // SPI_BARYC_CNTL
466    0, // HOLE
467    0x00000000, // SPI_TMPRING_SIZE
468    0, // HOLE
469    0, // HOLE
470    0, // HOLE
471    0, // HOLE
472    0, // HOLE
473    0, // HOLE
474    0x00000000, // SPI_WAVE_MGMT_1
475    0x00000000, // SPI_WAVE_MGMT_2
476    0x00000000, // SPI_SHADER_POS_FORMAT
477    0x00000000, // SPI_SHADER_Z_FORMAT
478    0x00000000, // SPI_SHADER_COL_FORMAT
479    0, // HOLE
480    0, // HOLE
481    0, // HOLE
482    0, // HOLE
483    0, // HOLE
484    0, // HOLE
485    0, // HOLE
486    0, // HOLE
487    0, // HOLE
488    0, // HOLE
489    0, // HOLE
490    0, // HOLE
491    0, // HOLE
492    0, // HOLE
493    0, // HOLE
494    0, // HOLE
495    0, // HOLE
496    0, // HOLE
497    0, // HOLE
498    0, // HOLE
499    0, // HOLE
500    0, // HOLE
501    0, // HOLE
502    0, // HOLE
503    0, // HOLE
504    0, // HOLE
505    0x00000000, // CB_BLEND0_CONTROL
506    0x00000000, // CB_BLEND1_CONTROL
507    0x00000000, // CB_BLEND2_CONTROL
508    0x00000000, // CB_BLEND3_CONTROL
509    0x00000000, // CB_BLEND4_CONTROL
510    0x00000000, // CB_BLEND5_CONTROL
511    0x00000000, // CB_BLEND6_CONTROL
512    0x00000000, // CB_BLEND7_CONTROL
513};
514static const u32 si_SECT_CONTEXT_def_3[] =
515{
516    0x00000000, // PA_CL_POINT_X_RAD
517    0x00000000, // PA_CL_POINT_Y_RAD
518    0x00000000, // PA_CL_POINT_SIZE
519    0x00000000, // PA_CL_POINT_CULL_RAD
520    0x00000000, // VGT_DMA_BASE_HI
521    0x00000000, // VGT_DMA_BASE
522};
523static const u32 si_SECT_CONTEXT_def_4[] =
524{
525    0x00000000, // DB_DEPTH_CONTROL
526    0x00000000, // DB_EQAA
527    0x00000000, // CB_COLOR_CONTROL
528    0x00000000, // DB_SHADER_CONTROL
529    0x00090000, // PA_CL_CLIP_CNTL
530    0x00000004, // PA_SU_SC_MODE_CNTL
531    0x00000000, // PA_CL_VTE_CNTL
532    0x00000000, // PA_CL_VS_OUT_CNTL
533    0x00000000, // PA_CL_NANINF_CNTL
534    0x00000000, // PA_SU_LINE_STIPPLE_CNTL
535    0x00000000, // PA_SU_LINE_STIPPLE_SCALE
536    0x00000000, // PA_SU_PRIM_FILTER_CNTL
537    0, // HOLE
538    0, // HOLE
539    0, // HOLE
540    0, // HOLE
541    0, // HOLE
542    0, // HOLE
543    0, // HOLE
544    0, // HOLE
545    0, // HOLE
546    0, // HOLE
547    0, // HOLE
548    0, // HOLE
549    0, // HOLE
550    0, // HOLE
551    0, // HOLE
552    0, // HOLE
553    0, // HOLE
554    0, // HOLE
555    0, // HOLE
556    0, // HOLE
557    0, // HOLE
558    0, // HOLE
559    0, // HOLE
560    0, // HOLE
561    0, // HOLE
562    0, // HOLE
563    0, // HOLE
564    0, // HOLE
565    0, // HOLE
566    0, // HOLE
567    0, // HOLE
568    0, // HOLE
569    0, // HOLE
570    0, // HOLE
571    0, // HOLE
572    0, // HOLE
573    0, // HOLE
574    0, // HOLE
575    0, // HOLE
576    0, // HOLE
577    0, // HOLE
578    0, // HOLE
579    0, // HOLE
580    0, // HOLE
581    0, // HOLE
582    0, // HOLE
583    0, // HOLE
584    0, // HOLE
585    0, // HOLE
586    0, // HOLE
587    0, // HOLE
588    0, // HOLE
589    0, // HOLE
590    0, // HOLE
591    0, // HOLE
592    0, // HOLE
593    0, // HOLE
594    0, // HOLE
595    0, // HOLE
596    0, // HOLE
597    0, // HOLE
598    0, // HOLE
599    0, // HOLE
600    0, // HOLE
601    0, // HOLE
602    0, // HOLE
603    0, // HOLE
604    0, // HOLE
605    0, // HOLE
606    0, // HOLE
607    0, // HOLE
608    0, // HOLE
609    0, // HOLE
610    0, // HOLE
611    0, // HOLE
612    0, // HOLE
613    0, // HOLE
614    0, // HOLE
615    0, // HOLE
616    0, // HOLE
617    0, // HOLE
618    0, // HOLE
619    0, // HOLE
620    0, // HOLE
621    0, // HOLE
622    0, // HOLE
623    0, // HOLE
624    0, // HOLE
625    0, // HOLE
626    0, // HOLE
627    0, // HOLE
628    0, // HOLE
629    0, // HOLE
630    0, // HOLE
631    0, // HOLE
632    0, // HOLE
633    0, // HOLE
634    0, // HOLE
635    0, // HOLE
636    0, // HOLE
637    0, // HOLE
638    0, // HOLE
639    0, // HOLE
640    0, // HOLE
641    0, // HOLE
642    0, // HOLE
643    0, // HOLE
644    0, // HOLE
645    0, // HOLE
646    0, // HOLE
647    0, // HOLE
648    0, // HOLE
649    0, // HOLE
650    0, // HOLE
651    0, // HOLE
652    0, // HOLE
653    0x00000000, // PA_SU_POINT_SIZE
654    0x00000000, // PA_SU_POINT_MINMAX
655    0x00000000, // PA_SU_LINE_CNTL
656    0x00000000, // PA_SC_LINE_STIPPLE
657    0x00000000, // VGT_OUTPUT_PATH_CNTL
658    0x00000000, // VGT_HOS_CNTL
659    0x00000000, // VGT_HOS_MAX_TESS_LEVEL
660    0x00000000, // VGT_HOS_MIN_TESS_LEVEL
661    0x00000000, // VGT_HOS_REUSE_DEPTH
662    0x00000000, // VGT_GROUP_PRIM_TYPE
663    0x00000000, // VGT_GROUP_FIRST_DECR
664    0x00000000, // VGT_GROUP_DECR
665    0x00000000, // VGT_GROUP_VECT_0_CNTL
666    0x00000000, // VGT_GROUP_VECT_1_CNTL
667    0x00000000, // VGT_GROUP_VECT_0_FMT_CNTL
668    0x00000000, // VGT_GROUP_VECT_1_FMT_CNTL
669    0x00000000, // VGT_GS_MODE
670    0, // HOLE
671    0x00000000, // PA_SC_MODE_CNTL_0
672    0x00000000, // PA_SC_MODE_CNTL_1
673    0x00000000, // VGT_ENHANCE
674    0x00000100, // VGT_GS_PER_ES
675    0x00000080, // VGT_ES_PER_GS
676    0x00000002, // VGT_GS_PER_VS
677    0x00000000, // VGT_GSVS_RING_OFFSET_1
678    0x00000000, // VGT_GSVS_RING_OFFSET_2
679    0x00000000, // VGT_GSVS_RING_OFFSET_3
680    0x00000000, // VGT_GS_OUT_PRIM_TYPE
681    0x00000000, // IA_ENHANCE
682};
683static const u32 si_SECT_CONTEXT_def_5[] =
684{
685    0x00000000, // VGT_PRIMITIVEID_EN
686};
687static const u32 si_SECT_CONTEXT_def_6[] =
688{
689    0x00000000, // VGT_PRIMITIVEID_RESET
690};
691static const u32 si_SECT_CONTEXT_def_7[] =
692{
693    0x00000000, // VGT_MULTI_PRIM_IB_RESET_EN
694    0, // HOLE
695    0, // HOLE
696    0x00000000, // VGT_INSTANCE_STEP_RATE_0
697    0x00000000, // VGT_INSTANCE_STEP_RATE_1
698    0x000000ff, // IA_MULTI_VGT_PARAM
699    0x00000000, // VGT_ESGS_RING_ITEMSIZE
700    0x00000000, // VGT_GSVS_RING_ITEMSIZE
701    0x00000000, // VGT_REUSE_OFF
702    0x00000000, // VGT_VTX_CNT_EN
703    0x00000000, // DB_HTILE_SURFACE
704    0x00000000, // DB_SRESULTS_COMPARE_STATE0
705    0x00000000, // DB_SRESULTS_COMPARE_STATE1
706    0x00000000, // DB_PRELOAD_CONTROL
707    0, // HOLE
708    0x00000000, // VGT_STRMOUT_BUFFER_SIZE_0
709    0x00000000, // VGT_STRMOUT_VTX_STRIDE_0
710    0, // HOLE
711    0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_0
712    0x00000000, // VGT_STRMOUT_BUFFER_SIZE_1
713    0x00000000, // VGT_STRMOUT_VTX_STRIDE_1
714    0, // HOLE
715    0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_1
716    0x00000000, // VGT_STRMOUT_BUFFER_SIZE_2
717    0x00000000, // VGT_STRMOUT_VTX_STRIDE_2
718    0, // HOLE
719    0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_2
720    0x00000000, // VGT_STRMOUT_BUFFER_SIZE_3
721    0x00000000, // VGT_STRMOUT_VTX_STRIDE_3
722    0, // HOLE
723    0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_3
724    0, // HOLE
725    0, // HOLE
726    0, // HOLE
727    0, // HOLE
728    0, // HOLE
729    0, // HOLE
730    0x00000000, // VGT_STRMOUT_DRAW_OPAQUE_OFFSET
731    0x00000000, // VGT_STRMOUT_DRAW_OPAQUE_BUFFER_FILLED_SIZE
732    0x00000000, // VGT_STRMOUT_DRAW_OPAQUE_VERTEX_STRIDE
733    0, // HOLE
734    0x00000000, // VGT_GS_MAX_VERT_OUT
735    0, // HOLE
736    0, // HOLE
737    0, // HOLE
738    0, // HOLE
739    0, // HOLE
740    0, // HOLE
741    0x00000000, // VGT_SHADER_STAGES_EN
742    0x00000000, // VGT_LS_HS_CONFIG
743    0x00000000, // VGT_GS_VERT_ITEMSIZE
744    0x00000000, // VGT_GS_VERT_ITEMSIZE_1
745    0x00000000, // VGT_GS_VERT_ITEMSIZE_2
746    0x00000000, // VGT_GS_VERT_ITEMSIZE_3
747    0x00000000, // VGT_TF_PARAM
748    0x00000000, // DB_ALPHA_TO_MASK
749    0, // HOLE
750    0x00000000, // PA_SU_POLY_OFFSET_DB_FMT_CNTL
751    0x00000000, // PA_SU_POLY_OFFSET_CLAMP
752    0x00000000, // PA_SU_POLY_OFFSET_FRONT_SCALE
753    0x00000000, // PA_SU_POLY_OFFSET_FRONT_OFFSET
754    0x00000000, // PA_SU_POLY_OFFSET_BACK_SCALE
755    0x00000000, // PA_SU_POLY_OFFSET_BACK_OFFSET
756    0x00000000, // VGT_GS_INSTANCE_CNT
757    0x00000000, // VGT_STRMOUT_CONFIG
758    0x00000000, // VGT_STRMOUT_BUFFER_CONFIG
759    0, // HOLE
760    0, // HOLE
761    0, // HOLE
762    0, // HOLE
763    0, // HOLE
764    0, // HOLE
765    0, // HOLE
766    0, // HOLE
767    0, // HOLE
768    0, // HOLE
769    0, // HOLE
770    0, // HOLE
771    0, // HOLE
772    0, // HOLE
773    0x00000000, // PA_SC_CENTROID_PRIORITY_0
774    0x00000000, // PA_SC_CENTROID_PRIORITY_1
775    0x00001000, // PA_SC_LINE_CNTL
776    0x00000000, // PA_SC_AA_CONFIG
777    0x00000005, // PA_SU_VTX_CNTL
778    0x3f800000, // PA_CL_GB_VERT_CLIP_ADJ
779    0x3f800000, // PA_CL_GB_VERT_DISC_ADJ
780    0x3f800000, // PA_CL_GB_HORZ_CLIP_ADJ
781    0x3f800000, // PA_CL_GB_HORZ_DISC_ADJ
782    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_0
783    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_1
784    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_2
785    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_3
786    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_0
787    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_1
788    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_2
789    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_3
790    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_0
791    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_1
792    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_2
793    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_3
794    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_0
795    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_1
796    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_2
797    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_3
798    0xffffffff, // PA_SC_AA_MASK_X0Y0_X1Y0
799    0xffffffff, // PA_SC_AA_MASK_X0Y1_X1Y1
800    0, // HOLE
801    0, // HOLE
802    0, // HOLE
803    0, // HOLE
804    0, // HOLE
805    0, // HOLE
806    0x0000000e, // VGT_VERTEX_REUSE_BLOCK_CNTL
807    0x00000010, // VGT_OUT_DEALLOC_CNTL
808    0x00000000, // CB_COLOR0_BASE
809    0x00000000, // CB_COLOR0_PITCH
810    0x00000000, // CB_COLOR0_SLICE
811    0x00000000, // CB_COLOR0_VIEW
812    0x00000000, // CB_COLOR0_INFO
813    0x00000000, // CB_COLOR0_ATTRIB
814    0, // HOLE
815    0x00000000, // CB_COLOR0_CMASK
816    0x00000000, // CB_COLOR0_CMASK_SLICE
817    0x00000000, // CB_COLOR0_FMASK
818    0x00000000, // CB_COLOR0_FMASK_SLICE
819    0x00000000, // CB_COLOR0_CLEAR_WORD0
820    0x00000000, // CB_COLOR0_CLEAR_WORD1
821    0, // HOLE
822    0, // HOLE
823    0x00000000, // CB_COLOR1_BASE
824    0x00000000, // CB_COLOR1_PITCH
825    0x00000000, // CB_COLOR1_SLICE
826    0x00000000, // CB_COLOR1_VIEW
827    0x00000000, // CB_COLOR1_INFO
828    0x00000000, // CB_COLOR1_ATTRIB
829    0, // HOLE
830    0x00000000, // CB_COLOR1_CMASK
831    0x00000000, // CB_COLOR1_CMASK_SLICE
832    0x00000000, // CB_COLOR1_FMASK
833    0x00000000, // CB_COLOR1_FMASK_SLICE
834    0x00000000, // CB_COLOR1_CLEAR_WORD0
835    0x00000000, // CB_COLOR1_CLEAR_WORD1
836    0, // HOLE
837    0, // HOLE
838    0x00000000, // CB_COLOR2_BASE
839    0x00000000, // CB_COLOR2_PITCH
840    0x00000000, // CB_COLOR2_SLICE
841    0x00000000, // CB_COLOR2_VIEW
842    0x00000000, // CB_COLOR2_INFO
843    0x00000000, // CB_COLOR2_ATTRIB
844    0, // HOLE
845    0x00000000, // CB_COLOR2_CMASK
846    0x00000000, // CB_COLOR2_CMASK_SLICE
847    0x00000000, // CB_COLOR2_FMASK
848    0x00000000, // CB_COLOR2_FMASK_SLICE
849    0x00000000, // CB_COLOR2_CLEAR_WORD0
850    0x00000000, // CB_COLOR2_CLEAR_WORD1
851    0, // HOLE
852    0, // HOLE
853    0x00000000, // CB_COLOR3_BASE
854    0x00000000, // CB_COLOR3_PITCH
855    0x00000000, // CB_COLOR3_SLICE
856    0x00000000, // CB_COLOR3_VIEW
857    0x00000000, // CB_COLOR3_INFO
858    0x00000000, // CB_COLOR3_ATTRIB
859    0, // HOLE
860    0x00000000, // CB_COLOR3_CMASK
861    0x00000000, // CB_COLOR3_CMASK_SLICE
862    0x00000000, // CB_COLOR3_FMASK
863    0x00000000, // CB_COLOR3_FMASK_SLICE
864    0x00000000, // CB_COLOR3_CLEAR_WORD0
865    0x00000000, // CB_COLOR3_CLEAR_WORD1
866    0, // HOLE
867    0, // HOLE
868    0x00000000, // CB_COLOR4_BASE
869    0x00000000, // CB_COLOR4_PITCH
870    0x00000000, // CB_COLOR4_SLICE
871    0x00000000, // CB_COLOR4_VIEW
872    0x00000000, // CB_COLOR4_INFO
873    0x00000000, // CB_COLOR4_ATTRIB
874    0, // HOLE
875    0x00000000, // CB_COLOR4_CMASK
876    0x00000000, // CB_COLOR4_CMASK_SLICE
877    0x00000000, // CB_COLOR4_FMASK
878    0x00000000, // CB_COLOR4_FMASK_SLICE
879    0x00000000, // CB_COLOR4_CLEAR_WORD0
880    0x00000000, // CB_COLOR4_CLEAR_WORD1
881    0, // HOLE
882    0, // HOLE
883    0x00000000, // CB_COLOR5_BASE
884    0x00000000, // CB_COLOR5_PITCH
885    0x00000000, // CB_COLOR5_SLICE
886    0x00000000, // CB_COLOR5_VIEW
887    0x00000000, // CB_COLOR5_INFO
888    0x00000000, // CB_COLOR5_ATTRIB
889    0, // HOLE
890    0x00000000, // CB_COLOR5_CMASK
891    0x00000000, // CB_COLOR5_CMASK_SLICE
892    0x00000000, // CB_COLOR5_FMASK
893    0x00000000, // CB_COLOR5_FMASK_SLICE
894    0x00000000, // CB_COLOR5_CLEAR_WORD0
895    0x00000000, // CB_COLOR5_CLEAR_WORD1
896    0, // HOLE
897    0, // HOLE
898    0x00000000, // CB_COLOR6_BASE
899    0x00000000, // CB_COLOR6_PITCH
900    0x00000000, // CB_COLOR6_SLICE
901    0x00000000, // CB_COLOR6_VIEW
902    0x00000000, // CB_COLOR6_INFO
903    0x00000000, // CB_COLOR6_ATTRIB
904    0, // HOLE
905    0x00000000, // CB_COLOR6_CMASK
906    0x00000000, // CB_COLOR6_CMASK_SLICE
907    0x00000000, // CB_COLOR6_FMASK
908    0x00000000, // CB_COLOR6_FMASK_SLICE
909    0x00000000, // CB_COLOR6_CLEAR_WORD0
910    0x00000000, // CB_COLOR6_CLEAR_WORD1
911    0, // HOLE
912    0, // HOLE
913    0x00000000, // CB_COLOR7_BASE
914    0x00000000, // CB_COLOR7_PITCH
915    0x00000000, // CB_COLOR7_SLICE
916    0x00000000, // CB_COLOR7_VIEW
917    0x00000000, // CB_COLOR7_INFO
918    0x00000000, // CB_COLOR7_ATTRIB
919    0, // HOLE
920    0x00000000, // CB_COLOR7_CMASK
921    0x00000000, // CB_COLOR7_CMASK_SLICE
922    0x00000000, // CB_COLOR7_FMASK
923    0x00000000, // CB_COLOR7_FMASK_SLICE
924    0x00000000, // CB_COLOR7_CLEAR_WORD0
925    0x00000000, // CB_COLOR7_CLEAR_WORD1
926};
927static const struct cs_extent_def si_SECT_CONTEXT_defs[] =
928{
929    {si_SECT_CONTEXT_def_1, 0x0000a000, 212 },
930    {si_SECT_CONTEXT_def_2, 0x0000a0d8, 272 },
931    {si_SECT_CONTEXT_def_3, 0x0000a1f5, 6 },
932    {si_SECT_CONTEXT_def_4, 0x0000a200, 157 },
933    {si_SECT_CONTEXT_def_5, 0x0000a2a1, 1 },
934    {si_SECT_CONTEXT_def_6, 0x0000a2a3, 1 },
935    {si_SECT_CONTEXT_def_7, 0x0000a2a5, 233 },
936    { NULL, 0, 0 }
937};
938static const struct cs_section_def si_cs_data[] = {
939    { si_SECT_CONTEXT_defs, SECT_CONTEXT },
940    { NULL, SECT_NONE }
941};
942