3 /*****************************************************************************/
8 * AA : AntiAliasing (MultiSample AntiAliasing, MSAA)
17 * CONFIG : CONFIGuration
22 * GS : Geometry Shader
23 * HI : HIgh ("high 32 bits of a 64 bits word)
25 * IB : Indirect Buffer
28 * INTERP : INTERPolator
29 * LO : LOw ("low 32 bits" of a 64 bits word)
32 * PA : Primitive Assembler
40 * SPI : Shader Processor Interpolator
42 * TE : Transform/Tesselation Engine
46 * VGT : Vertex Grouper Tesselator
49 * VTE : Vertex Transform Engine
51 * UCP: User Clip Plane
53 /*****************************************************************************/
56 reg_blk_cfg
= 1, /* only 1 unlike ctxs */
58 reg_blk_ctx
= 3 /* there are N (depends on GFX) ctxs */
64 * low 32KiB, use PKT0:
65 * 0x00000000-0x00007ffff byte ofts
66 * 0x00000000-0x00001ffff w ofts
67 * hi 32KiB, use PKT3 with the right SET_* opcode
68 * 0x00008000-0x0000fffff byte ofts
69 * 0x00002000-0x00003ffff w ofts
71 u64 reg_blk_w_ofts
[] = {
73 /*-------------------------------------------------------------------*/
74 [reg_blk_cfg
] = 0x0000000000002000,
75 [reg_blk_sh
] = 0x0000000000002c00,
76 [reg_blk_ctx
] = 0x000000000000a000,
85 /* may add a gfx blk version mask, gfx6 for now */
86 struct reg_desc reg_descs
[] = {
92 /*-------------------------------------------------------------------*/
96 "SPI_SHADER_PGM_LO_PS"
101 "SPI_SHADER_PGM_HI_PS"
106 "SPI_SHADER_PGM_RSRC1_PS"
111 "SPI_SHADER_PGM_RSRC2_PS"
116 "SPI_SHADER_USER_DATA_PS_2"
121 "SPI_SHADER_USER_DATA_PS_3"
126 "SPI_SHADER_PGM_LO_VS"
131 "SPI_SHADER_PGM_HI_VS"
136 "SPI_SHADER_PGM_RSRC1_VS"
141 "SPI_SHADER_PGM_RSRC2_VS"
146 "SPI_SHADER_USER_DATA_VS_2"
151 "SPI_SHADER_USER_DATA_VS_3"
156 "SPI_SHADER_USER_DATA_VS_4"
161 "SPI_SHADER_USER_DATA_VS_5"
166 "SPI_SHADER_USER_DATA_VS_6"
171 "SPI_SHADER_USER_DATA_VS_7"
173 /*-------------------------------------------------------------------*/
187 "DB_RENDER_OVERRIDE2"
202 "PA_SC_WINDOW_SCISSOR_BR"
212 "PA_SC_CLIPRECT_RULE"
222 "PA_SC_VPORT_SCISSOR_0_TL"
227 "PA_SC_VPORT_SCISSOR_0_BR"
252 "PA_CL_VPORT_XOFFSET"
262 "PA_CL_VPORT_YOFFSET"
272 "PA_CL_VPORT_ZOFFSET"
277 "SPI_PS_INPUT_CNTL_0"
297 "SPI_INTERP_CONTROL_0"
317 "SPI_SHADER_POS_FORMAT"
322 "SPI_SHADER_Z_FORMAT"
327 "SPI_SHADER_COL_FORMAT"
412 "PA_SU_PRIM_FILTER_CNTL"
432 "VGT_GS_OUT_PRIM_TYPE"
442 "VGT_MULTI_PRIM_IB_RESET_EN"
457 "VGT_SHADER_STAGES_EN"
467 "PA_SC_CENTROID_PRIORITY_0"
472 "PA_SC_CENTROID_PRIORITY_1"
492 "PA_CL_GB_VERT_CLIP_ADJ"
497 "PA_CL_GB_VERT_DISC_ADJ"
502 "PA_CL_GB_HORZ_CLIP_ADJ"
507 "PA_CL_GB_HORZ_DISC_ADJ"
512 "PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_0"
517 "PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_0"
522 "PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_0"
527 "PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y1_0"
532 "PA_SC_AA_MASK_X0Y0_X1Y0"
537 "PA_SC_AA_MASK_X0Y1_X1Y1"
542 "PA_SC_CONSERVATIVE_RASTERIZATION_CNTL"
577 "CB_COLOR0_DCC_CONTROL"
587 "CB_COLOR0_CMASK_SLICE"
597 "CB_COLOR0_FMASK_SLICE"