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    0x00000000, // DB_RENDER_CONTROL
26    0x00000000, // DB_COUNT_CONTROL
27    0x00000000, // DB_DEPTH_VIEW
28    0x00000000, // DB_RENDER_OVERRIDE
29    0x00000000, // DB_RENDER_OVERRIDE2
30    0x00000000, // DB_HTILE_DATA_BASE
31    0, // HOLE
32    0, // HOLE
33    0x00000000, // DB_DEPTH_BOUNDS_MIN
34    0x00000000, // DB_DEPTH_BOUNDS_MAX
35    0x00000000, // DB_STENCIL_CLEAR
36    0x00000000, // DB_DEPTH_CLEAR
37    0x00000000, // PA_SC_SCREEN_SCISSOR_TL
38    0x40004000, // PA_SC_SCREEN_SCISSOR_BR
39    0, // HOLE
40    0x00000000, // DB_DEPTH_INFO
41    0x00000000, // DB_Z_INFO
42    0x00000000, // DB_STENCIL_INFO
43    0x00000000, // DB_Z_READ_BASE
44    0x00000000, // DB_STENCIL_READ_BASE
45    0x00000000, // DB_Z_WRITE_BASE
46    0x00000000, // DB_STENCIL_WRITE_BASE
47    0x00000000, // DB_DEPTH_SIZE
48    0x00000000, // DB_DEPTH_SLICE
49    0, // HOLE
50    0, // HOLE
51    0, // HOLE
52    0, // HOLE
53    0, // HOLE
54    0, // HOLE
55    0, // HOLE
56    0, // HOLE
57    0x00000000, // TA_BC_BASE_ADDR
58    0, // HOLE
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    0x00000000, // COHER_DEST_BASE_2
152    0x00000000, // COHER_DEST_BASE_3
153    0x00000000, // PA_SC_WINDOW_OFFSET
154    0x80000000, // PA_SC_WINDOW_SCISSOR_TL
155    0x40004000, // PA_SC_WINDOW_SCISSOR_BR
156    0x0000ffff, // PA_SC_CLIPRECT_RULE
157    0x00000000, // PA_SC_CLIPRECT_0_TL
158    0x40004000, // PA_SC_CLIPRECT_0_BR
159    0x00000000, // PA_SC_CLIPRECT_1_TL
160    0x40004000, // PA_SC_CLIPRECT_1_BR
161    0x00000000, // PA_SC_CLIPRECT_2_TL
162    0x40004000, // PA_SC_CLIPRECT_2_BR
163    0x00000000, // PA_SC_CLIPRECT_3_TL
164    0x40004000, // PA_SC_CLIPRECT_3_BR
165    0xaa99aaaa, // PA_SC_EDGERULE
166    0x00000000, // PA_SU_HARDWARE_SCREEN_OFFSET
167    0xffffffff, // CB_TARGET_MASK
168    0xffffffff, // CB_SHADER_MASK
169    0x80000000, // PA_SC_GENERIC_SCISSOR_TL
170    0x40004000, // PA_SC_GENERIC_SCISSOR_BR
171    0x00000000, // COHER_DEST_BASE_0
172    0x00000000, // COHER_DEST_BASE_1
173    0x80000000, // PA_SC_VPORT_SCISSOR_0_TL
174    0x40004000, // PA_SC_VPORT_SCISSOR_0_BR
175    0x80000000, // PA_SC_VPORT_SCISSOR_1_TL
176    0x40004000, // PA_SC_VPORT_SCISSOR_1_BR
177    0x80000000, // PA_SC_VPORT_SCISSOR_2_TL
178    0x40004000, // PA_SC_VPORT_SCISSOR_2_BR
179    0x80000000, // PA_SC_VPORT_SCISSOR_3_TL
180    0x40004000, // PA_SC_VPORT_SCISSOR_3_BR
181    0x80000000, // PA_SC_VPORT_SCISSOR_4_TL
182    0x40004000, // PA_SC_VPORT_SCISSOR_4_BR
183    0x80000000, // PA_SC_VPORT_SCISSOR_5_TL
184    0x40004000, // PA_SC_VPORT_SCISSOR_5_BR
185    0x80000000, // PA_SC_VPORT_SCISSOR_6_TL
186    0x40004000, // PA_SC_VPORT_SCISSOR_6_BR
187    0x80000000, // PA_SC_VPORT_SCISSOR_7_TL
188    0x40004000, // PA_SC_VPORT_SCISSOR_7_BR
189    0x80000000, // PA_SC_VPORT_SCISSOR_8_TL
190    0x40004000, // PA_SC_VPORT_SCISSOR_8_BR
191    0x80000000, // PA_SC_VPORT_SCISSOR_9_TL
192    0x40004000, // PA_SC_VPORT_SCISSOR_9_BR
193    0x80000000, // PA_SC_VPORT_SCISSOR_10_TL
194    0x40004000, // PA_SC_VPORT_SCISSOR_10_BR
195    0x80000000, // PA_SC_VPORT_SCISSOR_11_TL
196    0x40004000, // PA_SC_VPORT_SCISSOR_11_BR
197    0x80000000, // PA_SC_VPORT_SCISSOR_12_TL
198    0x40004000, // PA_SC_VPORT_SCISSOR_12_BR
199    0x80000000, // PA_SC_VPORT_SCISSOR_13_TL
200    0x40004000, // PA_SC_VPORT_SCISSOR_13_BR
201    0x80000000, // PA_SC_VPORT_SCISSOR_14_TL
202    0x40004000, // PA_SC_VPORT_SCISSOR_14_BR
203    0x80000000, // PA_SC_VPORT_SCISSOR_15_TL
204    0x40004000, // PA_SC_VPORT_SCISSOR_15_BR
205    0x00000000, // PA_SC_VPORT_ZMIN_0
206    0x3f800000, // PA_SC_VPORT_ZMAX_0
207    0x00000000, // PA_SC_VPORT_ZMIN_1
208    0x3f800000, // PA_SC_VPORT_ZMAX_1
209    0x00000000, // PA_SC_VPORT_ZMIN_2
210    0x3f800000, // PA_SC_VPORT_ZMAX_2
211    0x00000000, // PA_SC_VPORT_ZMIN_3
212    0x3f800000, // PA_SC_VPORT_ZMAX_3
213    0x00000000, // PA_SC_VPORT_ZMIN_4
214    0x3f800000, // PA_SC_VPORT_ZMAX_4
215    0x00000000, // PA_SC_VPORT_ZMIN_5
216    0x3f800000, // PA_SC_VPORT_ZMAX_5
217    0x00000000, // PA_SC_VPORT_ZMIN_6
218    0x3f800000, // PA_SC_VPORT_ZMAX_6
219    0x00000000, // PA_SC_VPORT_ZMIN_7
220    0x3f800000, // PA_SC_VPORT_ZMAX_7
221    0x00000000, // PA_SC_VPORT_ZMIN_8
222    0x3f800000, // PA_SC_VPORT_ZMAX_8
223    0x00000000, // PA_SC_VPORT_ZMIN_9
224    0x3f800000, // PA_SC_VPORT_ZMAX_9
225    0x00000000, // PA_SC_VPORT_ZMIN_10
226    0x3f800000, // PA_SC_VPORT_ZMAX_10
227    0x00000000, // PA_SC_VPORT_ZMIN_11
228    0x3f800000, // PA_SC_VPORT_ZMAX_11
229    0x00000000, // PA_SC_VPORT_ZMIN_12
230    0x3f800000, // PA_SC_VPORT_ZMAX_12
231    0x00000000, // PA_SC_VPORT_ZMIN_13
232    0x3f800000, // PA_SC_VPORT_ZMAX_13
233    0x00000000, // PA_SC_VPORT_ZMIN_14
234    0x3f800000, // PA_SC_VPORT_ZMAX_14
235    0x00000000, // PA_SC_VPORT_ZMIN_15
236    0x3f800000, // PA_SC_VPORT_ZMAX_15
237};
238static const u32 si_SECT_CONTEXT_def_2[] = {
239    0x00000000, // CP_PERFMON_CNTX_CNTL
240    0x00000000, // CP_RINGID
241    0x00000000, // CP_VMID
242    0, // HOLE
243    0, // HOLE
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    0xffffffff, // VGT_MAX_VTX_INDX
280    0x00000000, // VGT_MIN_VTX_INDX
281    0x00000000, // VGT_INDX_OFFSET
282    0x00000000, // VGT_MULTI_PRIM_IB_RESET_INDX
283    0, // HOLE
284    0x00000000, // CB_BLEND_RED
285    0x00000000, // CB_BLEND_GREEN
286    0x00000000, // CB_BLEND_BLUE
287    0x00000000, // CB_BLEND_ALPHA
288    0, // HOLE
289    0, // HOLE
290    0x00000000, // DB_STENCIL_CONTROL
291    0x00000000, // DB_STENCILREFMASK
292    0x00000000, // DB_STENCILREFMASK_BF
293    0, // HOLE
294    0x00000000, // PA_CL_VPORT_XSCALE
295    0x00000000, // PA_CL_VPORT_XOFFSET
296    0x00000000, // PA_CL_VPORT_YSCALE
297    0x00000000, // PA_CL_VPORT_YOFFSET
298    0x00000000, // PA_CL_VPORT_ZSCALE
299    0x00000000, // PA_CL_VPORT_ZOFFSET
300    0x00000000, // PA_CL_VPORT_XSCALE_1
301    0x00000000, // PA_CL_VPORT_XOFFSET_1
302    0x00000000, // PA_CL_VPORT_YSCALE_1
303    0x00000000, // PA_CL_VPORT_YOFFSET_1
304    0x00000000, // PA_CL_VPORT_ZSCALE_1
305    0x00000000, // PA_CL_VPORT_ZOFFSET_1
306    0x00000000, // PA_CL_VPORT_XSCALE_2
307    0x00000000, // PA_CL_VPORT_XOFFSET_2
308    0x00000000, // PA_CL_VPORT_YSCALE_2
309    0x00000000, // PA_CL_VPORT_YOFFSET_2
310    0x00000000, // PA_CL_VPORT_ZSCALE_2
311    0x00000000, // PA_CL_VPORT_ZOFFSET_2
312    0x00000000, // PA_CL_VPORT_XSCALE_3
313    0x00000000, // PA_CL_VPORT_XOFFSET_3
314    0x00000000, // PA_CL_VPORT_YSCALE_3
315    0x00000000, // PA_CL_VPORT_YOFFSET_3
316    0x00000000, // PA_CL_VPORT_ZSCALE_3
317    0x00000000, // PA_CL_VPORT_ZOFFSET_3
318    0x00000000, // PA_CL_VPORT_XSCALE_4
319    0x00000000, // PA_CL_VPORT_XOFFSET_4
320    0x00000000, // PA_CL_VPORT_YSCALE_4
321    0x00000000, // PA_CL_VPORT_YOFFSET_4
322    0x00000000, // PA_CL_VPORT_ZSCALE_4
323    0x00000000, // PA_CL_VPORT_ZOFFSET_4
324    0x00000000, // PA_CL_VPORT_XSCALE_5
325    0x00000000, // PA_CL_VPORT_XOFFSET_5
326    0x00000000, // PA_CL_VPORT_YSCALE_5
327    0x00000000, // PA_CL_VPORT_YOFFSET_5
328    0x00000000, // PA_CL_VPORT_ZSCALE_5
329    0x00000000, // PA_CL_VPORT_ZOFFSET_5
330    0x00000000, // PA_CL_VPORT_XSCALE_6
331    0x00000000, // PA_CL_VPORT_XOFFSET_6
332    0x00000000, // PA_CL_VPORT_YSCALE_6
333    0x00000000, // PA_CL_VPORT_YOFFSET_6
334    0x00000000, // PA_CL_VPORT_ZSCALE_6
335    0x00000000, // PA_CL_VPORT_ZOFFSET_6
336    0x00000000, // PA_CL_VPORT_XSCALE_7
337    0x00000000, // PA_CL_VPORT_XOFFSET_7
338    0x00000000, // PA_CL_VPORT_YSCALE_7
339    0x00000000, // PA_CL_VPORT_YOFFSET_7
340    0x00000000, // PA_CL_VPORT_ZSCALE_7
341    0x00000000, // PA_CL_VPORT_ZOFFSET_7
342    0x00000000, // PA_CL_VPORT_XSCALE_8
343    0x00000000, // PA_CL_VPORT_XOFFSET_8
344    0x00000000, // PA_CL_VPORT_YSCALE_8
345    0x00000000, // PA_CL_VPORT_YOFFSET_8
346    0x00000000, // PA_CL_VPORT_ZSCALE_8
347    0x00000000, // PA_CL_VPORT_ZOFFSET_8
348    0x00000000, // PA_CL_VPORT_XSCALE_9
349    0x00000000, // PA_CL_VPORT_XOFFSET_9
350    0x00000000, // PA_CL_VPORT_YSCALE_9
351    0x00000000, // PA_CL_VPORT_YOFFSET_9
352    0x00000000, // PA_CL_VPORT_ZSCALE_9
353    0x00000000, // PA_CL_VPORT_ZOFFSET_9
354    0x00000000, // PA_CL_VPORT_XSCALE_10
355    0x00000000, // PA_CL_VPORT_XOFFSET_10
356    0x00000000, // PA_CL_VPORT_YSCALE_10
357    0x00000000, // PA_CL_VPORT_YOFFSET_10
358    0x00000000, // PA_CL_VPORT_ZSCALE_10
359    0x00000000, // PA_CL_VPORT_ZOFFSET_10
360    0x00000000, // PA_CL_VPORT_XSCALE_11
361    0x00000000, // PA_CL_VPORT_XOFFSET_11
362    0x00000000, // PA_CL_VPORT_YSCALE_11
363    0x00000000, // PA_CL_VPORT_YOFFSET_11
364    0x00000000, // PA_CL_VPORT_ZSCALE_11
365    0x00000000, // PA_CL_VPORT_ZOFFSET_11
366    0x00000000, // PA_CL_VPORT_XSCALE_12
367    0x00000000, // PA_CL_VPORT_XOFFSET_12
368    0x00000000, // PA_CL_VPORT_YSCALE_12
369    0x00000000, // PA_CL_VPORT_YOFFSET_12
370    0x00000000, // PA_CL_VPORT_ZSCALE_12
371    0x00000000, // PA_CL_VPORT_ZOFFSET_12
372    0x00000000, // PA_CL_VPORT_XSCALE_13
373    0x00000000, // PA_CL_VPORT_XOFFSET_13
374    0x00000000, // PA_CL_VPORT_YSCALE_13
375    0x00000000, // PA_CL_VPORT_YOFFSET_13
376    0x00000000, // PA_CL_VPORT_ZSCALE_13
377    0x00000000, // PA_CL_VPORT_ZOFFSET_13
378    0x00000000, // PA_CL_VPORT_XSCALE_14
379    0x00000000, // PA_CL_VPORT_XOFFSET_14
380    0x00000000, // PA_CL_VPORT_YSCALE_14
381    0x00000000, // PA_CL_VPORT_YOFFSET_14
382    0x00000000, // PA_CL_VPORT_ZSCALE_14
383    0x00000000, // PA_CL_VPORT_ZOFFSET_14
384    0x00000000, // PA_CL_VPORT_XSCALE_15
385    0x00000000, // PA_CL_VPORT_XOFFSET_15
386    0x00000000, // PA_CL_VPORT_YSCALE_15
387    0x00000000, // PA_CL_VPORT_YOFFSET_15
388    0x00000000, // PA_CL_VPORT_ZSCALE_15
389    0x00000000, // PA_CL_VPORT_ZOFFSET_15
390    0x00000000, // PA_CL_UCP_0_X
391    0x00000000, // PA_CL_UCP_0_Y
392    0x00000000, // PA_CL_UCP_0_Z
393    0x00000000, // PA_CL_UCP_0_W
394    0x00000000, // PA_CL_UCP_1_X
395    0x00000000, // PA_CL_UCP_1_Y
396    0x00000000, // PA_CL_UCP_1_Z
397    0x00000000, // PA_CL_UCP_1_W
398    0x00000000, // PA_CL_UCP_2_X
399    0x00000000, // PA_CL_UCP_2_Y
400    0x00000000, // PA_CL_UCP_2_Z
401    0x00000000, // PA_CL_UCP_2_W
402    0x00000000, // PA_CL_UCP_3_X
403    0x00000000, // PA_CL_UCP_3_Y
404    0x00000000, // PA_CL_UCP_3_Z
405    0x00000000, // PA_CL_UCP_3_W
406    0x00000000, // PA_CL_UCP_4_X
407    0x00000000, // PA_CL_UCP_4_Y
408    0x00000000, // PA_CL_UCP_4_Z
409    0x00000000, // PA_CL_UCP_4_W
410    0x00000000, // PA_CL_UCP_5_X
411    0x00000000, // PA_CL_UCP_5_Y
412    0x00000000, // PA_CL_UCP_5_Z
413    0x00000000, // PA_CL_UCP_5_W
414    0, // HOLE
415    0, // HOLE
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    0x00000000, // SPI_PS_INPUT_CNTL_0
425    0x00000000, // SPI_PS_INPUT_CNTL_1
426    0x00000000, // SPI_PS_INPUT_CNTL_2
427    0x00000000, // SPI_PS_INPUT_CNTL_3
428    0x00000000, // SPI_PS_INPUT_CNTL_4
429    0x00000000, // SPI_PS_INPUT_CNTL_5
430    0x00000000, // SPI_PS_INPUT_CNTL_6
431    0x00000000, // SPI_PS_INPUT_CNTL_7
432    0x00000000, // SPI_PS_INPUT_CNTL_8
433    0x00000000, // SPI_PS_INPUT_CNTL_9
434    0x00000000, // SPI_PS_INPUT_CNTL_10
435    0x00000000, // SPI_PS_INPUT_CNTL_11
436    0x00000000, // SPI_PS_INPUT_CNTL_12
437    0x00000000, // SPI_PS_INPUT_CNTL_13
438    0x00000000, // SPI_PS_INPUT_CNTL_14
439    0x00000000, // SPI_PS_INPUT_CNTL_15
440    0x00000000, // SPI_PS_INPUT_CNTL_16
441    0x00000000, // SPI_PS_INPUT_CNTL_17
442    0x00000000, // SPI_PS_INPUT_CNTL_18
443    0x00000000, // SPI_PS_INPUT_CNTL_19
444    0x00000000, // SPI_PS_INPUT_CNTL_20
445    0x00000000, // SPI_PS_INPUT_CNTL_21
446    0x00000000, // SPI_PS_INPUT_CNTL_22
447    0x00000000, // SPI_PS_INPUT_CNTL_23
448    0x00000000, // SPI_PS_INPUT_CNTL_24
449    0x00000000, // SPI_PS_INPUT_CNTL_25
450    0x00000000, // SPI_PS_INPUT_CNTL_26
451    0x00000000, // SPI_PS_INPUT_CNTL_27
452    0x00000000, // SPI_PS_INPUT_CNTL_28
453    0x00000000, // SPI_PS_INPUT_CNTL_29
454    0x00000000, // SPI_PS_INPUT_CNTL_30
455    0x00000000, // SPI_PS_INPUT_CNTL_31
456    0x00000000, // SPI_VS_OUT_CONFIG
457    0, // HOLE
458    0x00000000, // SPI_PS_INPUT_ENA
459    0x00000000, // SPI_PS_INPUT_ADDR
460    0x00000000, // SPI_INTERP_CONTROL_0
461    0x00000002, // SPI_PS_IN_CONTROL
462    0, // HOLE
463    0x00000000, // SPI_BARYC_CNTL
464    0, // HOLE
465    0x00000000, // SPI_TMPRING_SIZE
466    0, // HOLE
467    0, // HOLE
468    0, // HOLE
469    0, // HOLE
470    0, // HOLE
471    0, // HOLE
472    0x00000000, // SPI_WAVE_MGMT_1
473    0x00000000, // SPI_WAVE_MGMT_2
474    0x00000000, // SPI_SHADER_POS_FORMAT
475    0x00000000, // SPI_SHADER_Z_FORMAT
476    0x00000000, // SPI_SHADER_COL_FORMAT
477    0, // HOLE
478    0, // HOLE
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    0x00000000, // CB_BLEND0_CONTROL
504    0x00000000, // CB_BLEND1_CONTROL
505    0x00000000, // CB_BLEND2_CONTROL
506    0x00000000, // CB_BLEND3_CONTROL
507    0x00000000, // CB_BLEND4_CONTROL
508    0x00000000, // CB_BLEND5_CONTROL
509    0x00000000, // CB_BLEND6_CONTROL
510    0x00000000, // CB_BLEND7_CONTROL
511};
512static const u32 si_SECT_CONTEXT_def_3[] = {
513    0x00000000, // PA_CL_POINT_X_RAD
514    0x00000000, // PA_CL_POINT_Y_RAD
515    0x00000000, // PA_CL_POINT_SIZE
516    0x00000000, // PA_CL_POINT_CULL_RAD
517    0x00000000, // VGT_DMA_BASE_HI
518    0x00000000, // VGT_DMA_BASE
519};
520static const u32 si_SECT_CONTEXT_def_4[] = {
521    0x00000000, // DB_DEPTH_CONTROL
522    0x00000000, // DB_EQAA
523    0x00000000, // CB_COLOR_CONTROL
524    0x00000000, // DB_SHADER_CONTROL
525    0x00090000, // PA_CL_CLIP_CNTL
526    0x00000004, // PA_SU_SC_MODE_CNTL
527    0x00000000, // PA_CL_VTE_CNTL
528    0x00000000, // PA_CL_VS_OUT_CNTL
529    0x00000000, // PA_CL_NANINF_CNTL
530    0x00000000, // PA_SU_LINE_STIPPLE_CNTL
531    0x00000000, // PA_SU_LINE_STIPPLE_SCALE
532    0x00000000, // PA_SU_PRIM_FILTER_CNTL
533    0, // HOLE
534    0, // HOLE
535    0, // HOLE
536    0, // HOLE
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    0x00000000, // PA_SU_POINT_SIZE
650    0x00000000, // PA_SU_POINT_MINMAX
651    0x00000000, // PA_SU_LINE_CNTL
652    0x00000000, // PA_SC_LINE_STIPPLE
653    0x00000000, // VGT_OUTPUT_PATH_CNTL
654    0x00000000, // VGT_HOS_CNTL
655    0x00000000, // VGT_HOS_MAX_TESS_LEVEL
656    0x00000000, // VGT_HOS_MIN_TESS_LEVEL
657    0x00000000, // VGT_HOS_REUSE_DEPTH
658    0x00000000, // VGT_GROUP_PRIM_TYPE
659    0x00000000, // VGT_GROUP_FIRST_DECR
660    0x00000000, // VGT_GROUP_DECR
661    0x00000000, // VGT_GROUP_VECT_0_CNTL
662    0x00000000, // VGT_GROUP_VECT_1_CNTL
663    0x00000000, // VGT_GROUP_VECT_0_FMT_CNTL
664    0x00000000, // VGT_GROUP_VECT_1_FMT_CNTL
665    0x00000000, // VGT_GS_MODE
666    0, // HOLE
667    0x00000000, // PA_SC_MODE_CNTL_0
668    0x00000000, // PA_SC_MODE_CNTL_1
669    0x00000000, // VGT_ENHANCE
670    0x00000100, // VGT_GS_PER_ES
671    0x00000080, // VGT_ES_PER_GS
672    0x00000002, // VGT_GS_PER_VS
673    0x00000000, // VGT_GSVS_RING_OFFSET_1
674    0x00000000, // VGT_GSVS_RING_OFFSET_2
675    0x00000000, // VGT_GSVS_RING_OFFSET_3
676    0x00000000, // VGT_GS_OUT_PRIM_TYPE
677    0x00000000, // IA_ENHANCE
678};
679static const u32 si_SECT_CONTEXT_def_5[] = {
680    0x00000000, // VGT_PRIMITIVEID_EN
681};
682static const u32 si_SECT_CONTEXT_def_6[] = {
683    0x00000000, // VGT_PRIMITIVEID_RESET
684};
685static const u32 si_SECT_CONTEXT_def_7[] = {
686    0x00000000, // VGT_MULTI_PRIM_IB_RESET_EN
687    0, // HOLE
688    0, // HOLE
689    0x00000000, // VGT_INSTANCE_STEP_RATE_0
690    0x00000000, // VGT_INSTANCE_STEP_RATE_1
691    0x000000ff, // IA_MULTI_VGT_PARAM
692    0x00000000, // VGT_ESGS_RING_ITEMSIZE
693    0x00000000, // VGT_GSVS_RING_ITEMSIZE
694    0x00000000, // VGT_REUSE_OFF
695    0x00000000, // VGT_VTX_CNT_EN
696    0x00000000, // DB_HTILE_SURFACE
697    0x00000000, // DB_SRESULTS_COMPARE_STATE0
698    0x00000000, // DB_SRESULTS_COMPARE_STATE1
699    0x00000000, // DB_PRELOAD_CONTROL
700    0, // HOLE
701    0x00000000, // VGT_STRMOUT_BUFFER_SIZE_0
702    0x00000000, // VGT_STRMOUT_VTX_STRIDE_0
703    0, // HOLE
704    0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_0
705    0x00000000, // VGT_STRMOUT_BUFFER_SIZE_1
706    0x00000000, // VGT_STRMOUT_VTX_STRIDE_1
707    0, // HOLE
708    0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_1
709    0x00000000, // VGT_STRMOUT_BUFFER_SIZE_2
710    0x00000000, // VGT_STRMOUT_VTX_STRIDE_2
711    0, // HOLE
712    0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_2
713    0x00000000, // VGT_STRMOUT_BUFFER_SIZE_3
714    0x00000000, // VGT_STRMOUT_VTX_STRIDE_3
715    0, // HOLE
716    0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_3
717    0, // HOLE
718    0, // HOLE
719    0, // HOLE
720    0, // HOLE
721    0, // HOLE
722    0, // HOLE
723    0x00000000, // VGT_STRMOUT_DRAW_OPAQUE_OFFSET
724    0x00000000, // VGT_STRMOUT_DRAW_OPAQUE_BUFFER_FILLED_SIZE
725    0x00000000, // VGT_STRMOUT_DRAW_OPAQUE_VERTEX_STRIDE
726    0, // HOLE
727    0x00000000, // VGT_GS_MAX_VERT_OUT
728    0, // HOLE
729    0, // HOLE
730    0, // HOLE
731    0, // HOLE
732    0, // HOLE
733    0, // HOLE
734    0x00000000, // VGT_SHADER_STAGES_EN
735    0x00000000, // VGT_LS_HS_CONFIG
736    0x00000000, // VGT_GS_VERT_ITEMSIZE
737    0x00000000, // VGT_GS_VERT_ITEMSIZE_1
738    0x00000000, // VGT_GS_VERT_ITEMSIZE_2
739    0x00000000, // VGT_GS_VERT_ITEMSIZE_3
740    0x00000000, // VGT_TF_PARAM
741    0x00000000, // DB_ALPHA_TO_MASK
742    0, // HOLE
743    0x00000000, // PA_SU_POLY_OFFSET_DB_FMT_CNTL
744    0x00000000, // PA_SU_POLY_OFFSET_CLAMP
745    0x00000000, // PA_SU_POLY_OFFSET_FRONT_SCALE
746    0x00000000, // PA_SU_POLY_OFFSET_FRONT_OFFSET
747    0x00000000, // PA_SU_POLY_OFFSET_BACK_SCALE
748    0x00000000, // PA_SU_POLY_OFFSET_BACK_OFFSET
749    0x00000000, // VGT_GS_INSTANCE_CNT
750    0x00000000, // VGT_STRMOUT_CONFIG
751    0x00000000, // VGT_STRMOUT_BUFFER_CONFIG
752    0, // HOLE
753    0, // HOLE
754    0, // HOLE
755    0, // HOLE
756    0, // HOLE
757    0, // HOLE
758    0, // HOLE
759    0, // HOLE
760    0, // HOLE
761    0, // HOLE
762    0, // HOLE
763    0, // HOLE
764    0, // HOLE
765    0, // HOLE
766    0x00000000, // PA_SC_CENTROID_PRIORITY_0
767    0x00000000, // PA_SC_CENTROID_PRIORITY_1
768    0x00001000, // PA_SC_LINE_CNTL
769    0x00000000, // PA_SC_AA_CONFIG
770    0x00000005, // PA_SU_VTX_CNTL
771    0x3f800000, // PA_CL_GB_VERT_CLIP_ADJ
772    0x3f800000, // PA_CL_GB_VERT_DISC_ADJ
773    0x3f800000, // PA_CL_GB_HORZ_CLIP_ADJ
774    0x3f800000, // PA_CL_GB_HORZ_DISC_ADJ
775    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_0
776    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_1
777    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_2
778    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_3
779    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_0
780    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_1
781    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_2
782    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_3
783    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_0
784    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_1
785    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_2
786    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_3
787    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_0
788    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_1
789    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_2
790    0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_3
791    0xffffffff, // PA_SC_AA_MASK_X0Y0_X1Y0
792    0xffffffff, // PA_SC_AA_MASK_X0Y1_X1Y1
793    0, // HOLE
794    0, // HOLE
795    0, // HOLE
796    0, // HOLE
797    0, // HOLE
798    0, // HOLE
799    0x0000000e, // VGT_VERTEX_REUSE_BLOCK_CNTL
800    0x00000010, // VGT_OUT_DEALLOC_CNTL
801    0x00000000, // CB_COLOR0_BASE
802    0x00000000, // CB_COLOR0_PITCH
803    0x00000000, // CB_COLOR0_SLICE
804    0x00000000, // CB_COLOR0_VIEW
805    0x00000000, // CB_COLOR0_INFO
806    0x00000000, // CB_COLOR0_ATTRIB
807    0, // HOLE
808    0x00000000, // CB_COLOR0_CMASK
809    0x00000000, // CB_COLOR0_CMASK_SLICE
810    0x00000000, // CB_COLOR0_FMASK
811    0x00000000, // CB_COLOR0_FMASK_SLICE
812    0x00000000, // CB_COLOR0_CLEAR_WORD0
813    0x00000000, // CB_COLOR0_CLEAR_WORD1
814    0, // HOLE
815    0, // HOLE
816    0x00000000, // CB_COLOR1_BASE
817    0x00000000, // CB_COLOR1_PITCH
818    0x00000000, // CB_COLOR1_SLICE
819    0x00000000, // CB_COLOR1_VIEW
820    0x00000000, // CB_COLOR1_INFO
821    0x00000000, // CB_COLOR1_ATTRIB
822    0, // HOLE
823    0x00000000, // CB_COLOR1_CMASK
824    0x00000000, // CB_COLOR1_CMASK_SLICE
825    0x00000000, // CB_COLOR1_FMASK
826    0x00000000, // CB_COLOR1_FMASK_SLICE
827    0x00000000, // CB_COLOR1_CLEAR_WORD0
828    0x00000000, // CB_COLOR1_CLEAR_WORD1
829    0, // HOLE
830    0, // HOLE
831    0x00000000, // CB_COLOR2_BASE
832    0x00000000, // CB_COLOR2_PITCH
833    0x00000000, // CB_COLOR2_SLICE
834    0x00000000, // CB_COLOR2_VIEW
835    0x00000000, // CB_COLOR2_INFO
836    0x00000000, // CB_COLOR2_ATTRIB
837    0, // HOLE
838    0x00000000, // CB_COLOR2_CMASK
839    0x00000000, // CB_COLOR2_CMASK_SLICE
840    0x00000000, // CB_COLOR2_FMASK
841    0x00000000, // CB_COLOR2_FMASK_SLICE
842    0x00000000, // CB_COLOR2_CLEAR_WORD0
843    0x00000000, // CB_COLOR2_CLEAR_WORD1
844    0, // HOLE
845    0, // HOLE
846    0x00000000, // CB_COLOR3_BASE
847    0x00000000, // CB_COLOR3_PITCH
848    0x00000000, // CB_COLOR3_SLICE
849    0x00000000, // CB_COLOR3_VIEW
850    0x00000000, // CB_COLOR3_INFO
851    0x00000000, // CB_COLOR3_ATTRIB
852    0, // HOLE
853    0x00000000, // CB_COLOR3_CMASK
854    0x00000000, // CB_COLOR3_CMASK_SLICE
855    0x00000000, // CB_COLOR3_FMASK
856    0x00000000, // CB_COLOR3_FMASK_SLICE
857    0x00000000, // CB_COLOR3_CLEAR_WORD0
858    0x00000000, // CB_COLOR3_CLEAR_WORD1
859    0, // HOLE
860    0, // HOLE
861    0x00000000, // CB_COLOR4_BASE
862    0x00000000, // CB_COLOR4_PITCH
863    0x00000000, // CB_COLOR4_SLICE
864    0x00000000, // CB_COLOR4_VIEW
865    0x00000000, // CB_COLOR4_INFO
866    0x00000000, // CB_COLOR4_ATTRIB
867    0, // HOLE
868    0x00000000, // CB_COLOR4_CMASK
869    0x00000000, // CB_COLOR4_CMASK_SLICE
870    0x00000000, // CB_COLOR4_FMASK
871    0x00000000, // CB_COLOR4_FMASK_SLICE
872    0x00000000, // CB_COLOR4_CLEAR_WORD0
873    0x00000000, // CB_COLOR4_CLEAR_WORD1
874    0, // HOLE
875    0, // HOLE
876    0x00000000, // CB_COLOR5_BASE
877    0x00000000, // CB_COLOR5_PITCH
878    0x00000000, // CB_COLOR5_SLICE
879    0x00000000, // CB_COLOR5_VIEW
880    0x00000000, // CB_COLOR5_INFO
881    0x00000000, // CB_COLOR5_ATTRIB
882    0, // HOLE
883    0x00000000, // CB_COLOR5_CMASK
884    0x00000000, // CB_COLOR5_CMASK_SLICE
885    0x00000000, // CB_COLOR5_FMASK
886    0x00000000, // CB_COLOR5_FMASK_SLICE
887    0x00000000, // CB_COLOR5_CLEAR_WORD0
888    0x00000000, // CB_COLOR5_CLEAR_WORD1
889    0, // HOLE
890    0, // HOLE
891    0x00000000, // CB_COLOR6_BASE
892    0x00000000, // CB_COLOR6_PITCH
893    0x00000000, // CB_COLOR6_SLICE
894    0x00000000, // CB_COLOR6_VIEW
895    0x00000000, // CB_COLOR6_INFO
896    0x00000000, // CB_COLOR6_ATTRIB
897    0, // HOLE
898    0x00000000, // CB_COLOR6_CMASK
899    0x00000000, // CB_COLOR6_CMASK_SLICE
900    0x00000000, // CB_COLOR6_FMASK
901    0x00000000, // CB_COLOR6_FMASK_SLICE
902    0x00000000, // CB_COLOR6_CLEAR_WORD0
903    0x00000000, // CB_COLOR6_CLEAR_WORD1
904    0, // HOLE
905    0, // HOLE
906    0x00000000, // CB_COLOR7_BASE
907    0x00000000, // CB_COLOR7_PITCH
908    0x00000000, // CB_COLOR7_SLICE
909    0x00000000, // CB_COLOR7_VIEW
910    0x00000000, // CB_COLOR7_INFO
911    0x00000000, // CB_COLOR7_ATTRIB
912    0, // HOLE
913    0x00000000, // CB_COLOR7_CMASK
914    0x00000000, // CB_COLOR7_CMASK_SLICE
915    0x00000000, // CB_COLOR7_FMASK
916    0x00000000, // CB_COLOR7_FMASK_SLICE
917    0x00000000, // CB_COLOR7_CLEAR_WORD0
918    0x00000000, // CB_COLOR7_CLEAR_WORD1
919};
920static const struct cs_extent_def si_SECT_CONTEXT_defs[] = {
921    {si_SECT_CONTEXT_def_1, 0x0000a000, 212 },
922    {si_SECT_CONTEXT_def_2, 0x0000a0d8, 272 },
923    {si_SECT_CONTEXT_def_3, 0x0000a1f5, 6 },
924    {si_SECT_CONTEXT_def_4, 0x0000a200, 157 },
925    {si_SECT_CONTEXT_def_5, 0x0000a2a1, 1 },
926    {si_SECT_CONTEXT_def_6, 0x0000a2a3, 1 },
927    {si_SECT_CONTEXT_def_7, 0x0000a2a5, 233 },
928    { NULL, 0, 0 }
929};
930static const struct cs_section_def si_cs_data[] = {
931    { si_SECT_CONTEXT_defs, SECT_CONTEXT },
932    { NULL, SECT_NONE }
933};
934