2 * Copyright 2017 Advanced Micro Devices, Inc.
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:
11 * The above copyright notice and this permission notice shall be included in
12 * all copies or substantial portions of the Software.
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.
24 static const unsigned int gfx9_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 0x00000000, // DB_HTILE_DATA_BASE_HI
32 0x00000000, // DB_DEPTH_SIZE
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 0x00000000, // DB_Z_INFO
40 0x00000000, // DB_STENCIL_INFO
41 0x00000000, // DB_Z_READ_BASE
42 0x00000000, // DB_Z_READ_BASE_HI
43 0x00000000, // DB_STENCIL_READ_BASE
44 0x00000000, // DB_STENCIL_READ_BASE_HI
45 0x00000000, // DB_Z_WRITE_BASE
46 0x00000000, // DB_Z_WRITE_BASE_HI
47 0x00000000, // DB_STENCIL_WRITE_BASE
48 0x00000000, // DB_STENCIL_WRITE_BASE_HI
49 0x00000000, // DB_DFSM_CONTROL
51 0x00000000, // DB_Z_INFO2
52 0x00000000, // DB_STENCIL_INFO2
57 0x00000000, // TA_BC_BASE_ADDR
58 0x00000000, // TA_BC_BASE_ADDR_HI
147 0x00000000, // COHER_DEST_BASE_HI_0
148 0x00000000, // COHER_DEST_BASE_HI_1
149 0x00000000, // COHER_DEST_BASE_HI_2
150 0x00000000, // COHER_DEST_BASE_HI_3
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
238 static const unsigned int gfx9_SECT_CONTEXT_def_2[] = {
239 0x00000000, // PA_SC_SCREEN_EXTENT_CONTROL
240 0x00000000, // PA_SC_TILE_STEERING_OVERRIDE
241 0x00000000, // CP_PERFMON_CNTX_CNTL
242 0x00000000, // CP_RINGID
243 0x00000000, // CP_VMID
257 0x00000000, // PA_SC_RIGHT_VERT_GRID
258 0x00000000, // PA_SC_LEFT_VERT_GRID
259 0x00000000, // PA_SC_HORIZ_GRID
284 0x00000000, // VGT_MULTI_PRIM_IB_RESET_INDX
286 0x00000000, // CB_BLEND_RED
287 0x00000000, // CB_BLEND_GREEN
288 0x00000000, // CB_BLEND_BLUE
289 0x00000000, // CB_BLEND_ALPHA
290 0x00000000, // CB_DCC_CONTROL
292 0x00000000, // DB_STENCIL_CONTROL
293 0x01000000, // DB_STENCILREFMASK
294 0x01000000, // DB_STENCILREFMASK_BF
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
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
460 0x00000000, // SPI_PS_INPUT_ENA
461 0x00000000, // SPI_PS_INPUT_ADDR
462 0x00000000, // SPI_INTERP_CONTROL_0
463 0x00000002, // SPI_PS_IN_CONTROL
465 0x00000000, // SPI_BARYC_CNTL
467 0x00000000, // SPI_TMPRING_SIZE
476 0x00000000, // SPI_SHADER_POS_FORMAT
477 0x00000000, // SPI_SHADER_Z_FORMAT
478 0x00000000, // SPI_SHADER_COL_FORMAT
494 0x00000000, // SX_PS_DOWNCONVERT
495 0x00000000, // SX_BLEND_OPT_EPSILON
496 0x00000000, // SX_BLEND_OPT_CONTROL
497 0x00000000, // SX_MRT0_BLEND_OPT
498 0x00000000, // SX_MRT1_BLEND_OPT
499 0x00000000, // SX_MRT2_BLEND_OPT
500 0x00000000, // SX_MRT3_BLEND_OPT
501 0x00000000, // SX_MRT4_BLEND_OPT
502 0x00000000, // SX_MRT5_BLEND_OPT
503 0x00000000, // SX_MRT6_BLEND_OPT
504 0x00000000, // SX_MRT7_BLEND_OPT
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 0x00000000, // CB_MRT0_EPITCH
514 0x00000000, // CB_MRT1_EPITCH
515 0x00000000, // CB_MRT2_EPITCH
516 0x00000000, // CB_MRT3_EPITCH
517 0x00000000, // CB_MRT4_EPITCH
518 0x00000000, // CB_MRT5_EPITCH
519 0x00000000, // CB_MRT6_EPITCH
520 0x00000000, // CB_MRT7_EPITCH
522 static const unsigned int gfx9_SECT_CONTEXT_def_3[] = {
523 0x00000000, // PA_CL_POINT_X_RAD
524 0x00000000, // PA_CL_POINT_Y_RAD
525 0x00000000, // PA_CL_POINT_SIZE
526 0x00000000, // PA_CL_POINT_CULL_RAD
528 static const unsigned int gfx9_SECT_CONTEXT_def_4[] = {
529 0x00000000, // DB_DEPTH_CONTROL
530 0x00000000, // DB_EQAA
531 0x00000000, // CB_COLOR_CONTROL
532 0x00000000, // DB_SHADER_CONTROL
533 0x00090000, // PA_CL_CLIP_CNTL
534 0x00000004, // PA_SU_SC_MODE_CNTL
535 0x00000000, // PA_CL_VTE_CNTL
536 0x00000000, // PA_CL_VS_OUT_CNTL
537 0x00000000, // PA_CL_NANINF_CNTL
538 0x00000000, // PA_SU_LINE_STIPPLE_CNTL
539 0x00000000, // PA_SU_LINE_STIPPLE_SCALE
540 0x00000000, // PA_SU_PRIM_FILTER_CNTL
541 0x00000000, // PA_SU_SMALL_PRIM_FILTER_CNTL
542 0x00000000, // PA_CL_OBJPRIM_ID_CNTL
543 0x00000000, // PA_CL_NGG_CNTL
544 0x00000000, // PA_SU_OVER_RASTERIZATION_CNTL
657 0x00000000, // PA_SU_POINT_SIZE
658 0x00000000, // PA_SU_POINT_MINMAX
659 0x00000000, // PA_SU_LINE_CNTL
660 0x00000000, // PA_SC_LINE_STIPPLE
661 0x00000000, // VGT_OUTPUT_PATH_CNTL
662 0x00000000, // VGT_HOS_CNTL
663 0x00000000, // VGT_HOS_MAX_TESS_LEVEL
664 0x00000000, // VGT_HOS_MIN_TESS_LEVEL
665 0x00000000, // VGT_HOS_REUSE_DEPTH
666 0x00000000, // VGT_GROUP_PRIM_TYPE
667 0x00000000, // VGT_GROUP_FIRST_DECR
668 0x00000000, // VGT_GROUP_DECR
669 0x00000000, // VGT_GROUP_VECT_0_CNTL
670 0x00000000, // VGT_GROUP_VECT_1_CNTL
671 0x00000000, // VGT_GROUP_VECT_0_FMT_CNTL
672 0x00000000, // VGT_GROUP_VECT_1_FMT_CNTL
673 0x00000000, // VGT_GS_MODE
674 0x00000000, // VGT_GS_ONCHIP_CNTL
675 0x00000000, // PA_SC_MODE_CNTL_0
676 0x00000000, // PA_SC_MODE_CNTL_1
677 0x00000000, // VGT_ENHANCE
678 0x00000100, // VGT_GS_PER_ES
679 0x00000080, // VGT_ES_PER_GS
680 0x00000002, // VGT_GS_PER_VS
681 0x00000000, // VGT_GSVS_RING_OFFSET_1
682 0x00000000, // VGT_GSVS_RING_OFFSET_2
683 0x00000000, // VGT_GSVS_RING_OFFSET_3
684 0x00000000, // VGT_GS_OUT_PRIM_TYPE
685 0x00000000, // IA_ENHANCE
687 static const unsigned int gfx9_SECT_CONTEXT_def_5[] = {
688 0x00000000, // WD_ENHANCE
689 0x00000000, // VGT_PRIMITIVEID_EN
691 static const unsigned int gfx9_SECT_CONTEXT_def_6[] = {
692 0x00000000, // VGT_PRIMITIVEID_RESET
694 static const unsigned int gfx9_SECT_CONTEXT_def_7[] = {
695 0x00000000, // VGT_GS_MAX_PRIMS_PER_SUBGROUP
696 0x00000000, // VGT_DRAW_PAYLOAD_CNTL
698 0x00000000, // VGT_INSTANCE_STEP_RATE_0
699 0x00000000, // VGT_INSTANCE_STEP_RATE_1
701 0x00000000, // VGT_ESGS_RING_ITEMSIZE
702 0x00000000, // VGT_GSVS_RING_ITEMSIZE
703 0x00000000, // VGT_REUSE_OFF
704 0x00000000, // VGT_VTX_CNT_EN
705 0x00000000, // DB_HTILE_SURFACE
706 0x00000000, // DB_SRESULTS_COMPARE_STATE0
707 0x00000000, // DB_SRESULTS_COMPARE_STATE1
708 0x00000000, // DB_PRELOAD_CONTROL
710 0x00000000, // VGT_STRMOUT_BUFFER_SIZE_0
711 0x00000000, // VGT_STRMOUT_VTX_STRIDE_0
713 0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_0
714 0x00000000, // VGT_STRMOUT_BUFFER_SIZE_1
715 0x00000000, // VGT_STRMOUT_VTX_STRIDE_1
717 0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_1
718 0x00000000, // VGT_STRMOUT_BUFFER_SIZE_2
719 0x00000000, // VGT_STRMOUT_VTX_STRIDE_2
721 0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_2
722 0x00000000, // VGT_STRMOUT_BUFFER_SIZE_3
723 0x00000000, // VGT_STRMOUT_VTX_STRIDE_3
725 0x00000000, // VGT_STRMOUT_BUFFER_OFFSET_3
732 0x00000000, // VGT_STRMOUT_DRAW_OPAQUE_OFFSET
733 0x00000000, // VGT_STRMOUT_DRAW_OPAQUE_BUFFER_FILLED_SIZE
734 0x00000000, // VGT_STRMOUT_DRAW_OPAQUE_VERTEX_STRIDE
736 0x00000000, // VGT_GS_MAX_VERT_OUT
742 0x00000000, // VGT_TESS_DISTRIBUTION
743 0x00000000, // VGT_SHADER_STAGES_EN
744 0x00000000, // VGT_LS_HS_CONFIG
745 0x00000000, // VGT_GS_VERT_ITEMSIZE
746 0x00000000, // VGT_GS_VERT_ITEMSIZE_1
747 0x00000000, // VGT_GS_VERT_ITEMSIZE_2
748 0x00000000, // VGT_GS_VERT_ITEMSIZE_3
749 0x00000000, // VGT_TF_PARAM
750 0x00000000, // DB_ALPHA_TO_MASK
751 0x00000000, // VGT_DISPATCH_DRAW_INDEX
752 0x00000000, // PA_SU_POLY_OFFSET_DB_FMT_CNTL
753 0x00000000, // PA_SU_POLY_OFFSET_CLAMP
754 0x00000000, // PA_SU_POLY_OFFSET_FRONT_SCALE
755 0x00000000, // PA_SU_POLY_OFFSET_FRONT_OFFSET
756 0x00000000, // PA_SU_POLY_OFFSET_BACK_SCALE
757 0x00000000, // PA_SU_POLY_OFFSET_BACK_OFFSET
758 0x00000000, // VGT_GS_INSTANCE_CNT
759 0x00000000, // VGT_STRMOUT_CONFIG
760 0x00000000, // VGT_STRMOUT_BUFFER_CONFIG
762 static const unsigned int gfx9_SECT_CONTEXT_def_8[] = {
763 0x00000000, // PA_SC_CENTROID_PRIORITY_0
764 0x00000000, // PA_SC_CENTROID_PRIORITY_1
765 0x00001000, // PA_SC_LINE_CNTL
766 0x00000000, // PA_SC_AA_CONFIG
767 0x00000005, // PA_SU_VTX_CNTL
768 0x3f800000, // PA_CL_GB_VERT_CLIP_ADJ
769 0x3f800000, // PA_CL_GB_VERT_DISC_ADJ
770 0x3f800000, // PA_CL_GB_HORZ_CLIP_ADJ
771 0x3f800000, // PA_CL_GB_HORZ_DISC_ADJ
772 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_0
773 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_1
774 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_2
775 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_3
776 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_0
777 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_1
778 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_2
779 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_3
780 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_0
781 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_1
782 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_2
783 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_3
784 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_0
785 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_1
786 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_2
787 0x00000000, // PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_3
788 0xffffffff, // PA_SC_AA_MASK_X0Y0_X1Y0
789 0xffffffff, // PA_SC_AA_MASK_X0Y1_X1Y1
790 0x00000000, // PA_SC_SHADER_CONTROL
791 0x00000003, // PA_SC_BINNER_CNTL_0
792 0x00000000, // PA_SC_BINNER_CNTL_1
793 0x00000000, // PA_SC_CONSERVATIVE_RASTERIZATION_CNTL
794 0x00000000, // PA_SC_NGG_MODE_CNTL
796 0x0000001e, // VGT_VERTEX_REUSE_BLOCK_CNTL
797 0x00000020, // VGT_OUT_DEALLOC_CNTL
798 0x00000000, // CB_COLOR0_BASE
799 0x00000000, // CB_COLOR0_BASE_EXT
800 0x00000000, // CB_COLOR0_ATTRIB2
801 0x00000000, // CB_COLOR0_VIEW
802 0x00000000, // CB_COLOR0_INFO
803 0x00000000, // CB_COLOR0_ATTRIB
804 0x00000000, // CB_COLOR0_DCC_CONTROL
805 0x00000000, // CB_COLOR0_CMASK
806 0x00000000, // CB_COLOR0_CMASK_BASE_EXT
807 0x00000000, // CB_COLOR0_FMASK
808 0x00000000, // CB_COLOR0_FMASK_BASE_EXT
809 0x00000000, // CB_COLOR0_CLEAR_WORD0
810 0x00000000, // CB_COLOR0_CLEAR_WORD1
811 0x00000000, // CB_COLOR0_DCC_BASE
812 0x00000000, // CB_COLOR0_DCC_BASE_EXT
813 0x00000000, // CB_COLOR1_BASE
814 0x00000000, // CB_COLOR1_BASE_EXT
815 0x00000000, // CB_COLOR1_ATTRIB2
816 0x00000000, // CB_COLOR1_VIEW
817 0x00000000, // CB_COLOR1_INFO
818 0x00000000, // CB_COLOR1_ATTRIB
819 0x00000000, // CB_COLOR1_DCC_CONTROL
820 0x00000000, // CB_COLOR1_CMASK
821 0x00000000, // CB_COLOR1_CMASK_BASE_EXT
822 0x00000000, // CB_COLOR1_FMASK
823 0x00000000, // CB_COLOR1_FMASK_BASE_EXT
824 0x00000000, // CB_COLOR1_CLEAR_WORD0
825 0x00000000, // CB_COLOR1_CLEAR_WORD1
826 0x00000000, // CB_COLOR1_DCC_BASE
827 0x00000000, // CB_COLOR1_DCC_BASE_EXT
828 0x00000000, // CB_COLOR2_BASE
829 0x00000000, // CB_COLOR2_BASE_EXT
830 0x00000000, // CB_COLOR2_ATTRIB2
831 0x00000000, // CB_COLOR2_VIEW
832 0x00000000, // CB_COLOR2_INFO
833 0x00000000, // CB_COLOR2_ATTRIB
834 0x00000000, // CB_COLOR2_DCC_CONTROL
835 0x00000000, // CB_COLOR2_CMASK
836 0x00000000, // CB_COLOR2_CMASK_BASE_EXT
837 0x00000000, // CB_COLOR2_FMASK
838 0x00000000, // CB_COLOR2_FMASK_BASE_EXT
839 0x00000000, // CB_COLOR2_CLEAR_WORD0
840 0x00000000, // CB_COLOR2_CLEAR_WORD1
841 0x00000000, // CB_COLOR2_DCC_BASE
842 0x00000000, // CB_COLOR2_DCC_BASE_EXT
843 0x00000000, // CB_COLOR3_BASE
844 0x00000000, // CB_COLOR3_BASE_EXT
845 0x00000000, // CB_COLOR3_ATTRIB2
846 0x00000000, // CB_COLOR3_VIEW
847 0x00000000, // CB_COLOR3_INFO
848 0x00000000, // CB_COLOR3_ATTRIB
849 0x00000000, // CB_COLOR3_DCC_CONTROL
850 0x00000000, // CB_COLOR3_CMASK
851 0x00000000, // CB_COLOR3_CMASK_BASE_EXT
852 0x00000000, // CB_COLOR3_FMASK
853 0x00000000, // CB_COLOR3_FMASK_BASE_EXT
854 0x00000000, // CB_COLOR3_CLEAR_WORD0
855 0x00000000, // CB_COLOR3_CLEAR_WORD1
856 0x00000000, // CB_COLOR3_DCC_BASE
857 0x00000000, // CB_COLOR3_DCC_BASE_EXT
858 0x00000000, // CB_COLOR4_BASE
859 0x00000000, // CB_COLOR4_BASE_EXT
860 0x00000000, // CB_COLOR4_ATTRIB2
861 0x00000000, // CB_COLOR4_VIEW
862 0x00000000, // CB_COLOR4_INFO
863 0x00000000, // CB_COLOR4_ATTRIB
864 0x00000000, // CB_COLOR4_DCC_CONTROL
865 0x00000000, // CB_COLOR4_CMASK
866 0x00000000, // CB_COLOR4_CMASK_BASE_EXT
867 0x00000000, // CB_COLOR4_FMASK
868 0x00000000, // CB_COLOR4_FMASK_BASE_EXT
869 0x00000000, // CB_COLOR4_CLEAR_WORD0
870 0x00000000, // CB_COLOR4_CLEAR_WORD1
871 0x00000000, // CB_COLOR4_DCC_BASE
872 0x00000000, // CB_COLOR4_DCC_BASE_EXT
873 0x00000000, // CB_COLOR5_BASE
874 0x00000000, // CB_COLOR5_BASE_EXT
875 0x00000000, // CB_COLOR5_ATTRIB2
876 0x00000000, // CB_COLOR5_VIEW
877 0x00000000, // CB_COLOR5_INFO
878 0x00000000, // CB_COLOR5_ATTRIB
879 0x00000000, // CB_COLOR5_DCC_CONTROL
880 0x00000000, // CB_COLOR5_CMASK
881 0x00000000, // CB_COLOR5_CMASK_BASE_EXT
882 0x00000000, // CB_COLOR5_FMASK
883 0x00000000, // CB_COLOR5_FMASK_BASE_EXT
884 0x00000000, // CB_COLOR5_CLEAR_WORD0
885 0x00000000, // CB_COLOR5_CLEAR_WORD1
886 0x00000000, // CB_COLOR5_DCC_BASE
887 0x00000000, // CB_COLOR5_DCC_BASE_EXT
888 0x00000000, // CB_COLOR6_BASE
889 0x00000000, // CB_COLOR6_BASE_EXT
890 0x00000000, // CB_COLOR6_ATTRIB2
891 0x00000000, // CB_COLOR6_VIEW
892 0x00000000, // CB_COLOR6_INFO
893 0x00000000, // CB_COLOR6_ATTRIB
894 0x00000000, // CB_COLOR6_DCC_CONTROL
895 0x00000000, // CB_COLOR6_CMASK
896 0x00000000, // CB_COLOR6_CMASK_BASE_EXT
897 0x00000000, // CB_COLOR6_FMASK
898 0x00000000, // CB_COLOR6_FMASK_BASE_EXT
899 0x00000000, // CB_COLOR6_CLEAR_WORD0
900 0x00000000, // CB_COLOR6_CLEAR_WORD1
901 0x00000000, // CB_COLOR6_DCC_BASE
902 0x00000000, // CB_COLOR6_DCC_BASE_EXT
903 0x00000000, // CB_COLOR7_BASE
904 0x00000000, // CB_COLOR7_BASE_EXT
905 0x00000000, // CB_COLOR7_ATTRIB2
906 0x00000000, // CB_COLOR7_VIEW
907 0x00000000, // CB_COLOR7_INFO
908 0x00000000, // CB_COLOR7_ATTRIB
909 0x00000000, // CB_COLOR7_DCC_CONTROL
910 0x00000000, // CB_COLOR7_CMASK
911 0x00000000, // CB_COLOR7_CMASK_BASE_EXT
912 0x00000000, // CB_COLOR7_FMASK
913 0x00000000, // CB_COLOR7_FMASK_BASE_EXT
914 0x00000000, // CB_COLOR7_CLEAR_WORD0
915 0x00000000, // CB_COLOR7_CLEAR_WORD1
916 0x00000000, // CB_COLOR7_DCC_BASE
917 0x00000000, // CB_COLOR7_DCC_BASE_EXT
919 static const struct cs_extent_def gfx9_SECT_CONTEXT_defs[] = {
920 {gfx9_SECT_CONTEXT_def_1, 0x0000a000, 212 },
921 {gfx9_SECT_CONTEXT_def_2, 0x0000a0d6, 282 },
922 {gfx9_SECT_CONTEXT_def_3, 0x0000a1f5, 4 },
923 {gfx9_SECT_CONTEXT_def_4, 0x0000a200, 157 },
924 {gfx9_SECT_CONTEXT_def_5, 0x0000a2a0, 2 },
925 {gfx9_SECT_CONTEXT_def_6, 0x0000a2a3, 1 },
926 {gfx9_SECT_CONTEXT_def_7, 0x0000a2a5, 66 },
927 {gfx9_SECT_CONTEXT_def_8, 0x0000a2f5, 155 },
930 static const struct cs_section_def gfx9_cs_data[] = {
931 { gfx9_SECT_CONTEXT_defs, SECT_CONTEXT },