X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Famd%2Fcommon%2Fgfx9d.h;h=2e790c5469985b29b2569ec11f2d627d98711316;hb=baa4bdd3a6a7496f38c7b79235fe8ea24718729e;hp=b8ff825054c2b8bb92a112d256b22ef0ae8f2330;hpb=00e777b61c8c6cc9c216e15b848a705b6c14dcdb;p=mesa.git diff --git a/src/amd/common/gfx9d.h b/src/amd/common/gfx9d.h index b8ff825054c..2e790c54699 100644 --- a/src/amd/common/gfx9d.h +++ b/src/amd/common/gfx9d.h @@ -1123,7 +1123,6 @@ #define S_030960_HW_USE_ONLY(x) (((unsigned)(x) & 0x1) << 23) #define G_030960_HW_USE_ONLY(x) (((x) >> 23) & 0x1) #define C_030960_HW_USE_ONLY 0xFF7FFFFF -#define R_030964_VGT_OBJECT_ID 0x030964 #define R_030968_VGT_INSTANCE_BASE_ID 0x030968 #define R_030A00_PA_SU_LINE_STIPPLE_VALUE 0x030A00 #define S_030A00_LINE_STIPPLE_VALUE(x) (((unsigned)(x) & 0xFFFFFF) << 0) @@ -1195,19 +1194,6 @@ #define S_030E04_ADDRESS(x) (((unsigned)(x) & 0xFF) << 0) #define G_030E04_ADDRESS(x) (((x) >> 0) & 0xFF) #define C_030E04_ADDRESS 0xFFFFFF00 -#define R_030E08_TA_GRAD_ADJ_UCONFIG 0x030E08 -#define S_030E08_GRAD_ADJ_0(x) (((unsigned)(x) & 0xFF) << 0) -#define G_030E08_GRAD_ADJ_0(x) (((x) >> 0) & 0xFF) -#define C_030E08_GRAD_ADJ_0 0xFFFFFF00 -#define S_030E08_GRAD_ADJ_1(x) (((unsigned)(x) & 0xFF) << 8) -#define G_030E08_GRAD_ADJ_1(x) (((x) >> 8) & 0xFF) -#define C_030E08_GRAD_ADJ_1 0xFFFF00FF -#define S_030E08_GRAD_ADJ_2(x) (((unsigned)(x) & 0xFF) << 16) -#define G_030E08_GRAD_ADJ_2(x) (((x) >> 16) & 0xFF) -#define C_030E08_GRAD_ADJ_2 0xFF00FFFF -#define S_030E08_GRAD_ADJ_3(x) (((unsigned)(x) & 0xFF) << 24) -#define G_030E08_GRAD_ADJ_3(x) (((x) >> 24) & 0xFF) -#define C_030E08_GRAD_ADJ_3 0x00FFFFFF #define R_030F00_DB_OCCLUSION_COUNT0_LOW 0x030F00 #define R_008F00_SQ_BUF_RSRC_WORD0 0x008F00 #define R_030F04_DB_OCCLUSION_COUNT0_HI 0x030F04 @@ -1345,8 +1331,8 @@ #define V_008F14_IMG_DATA_FORMAT_RESERVED_56 0x38 #define V_008F14_IMG_DATA_FORMAT_4_4 0x39 #define V_008F14_IMG_DATA_FORMAT_6_5_5 0x3A -#define V_008F14_IMG_DATA_S8_16 0x3B -#define V_008F14_IMG_DATA_S8_32 0x3C +#define V_008F14_IMG_DATA_FORMAT_S8_16 0x3B +#define V_008F14_IMG_DATA_FORMAT_S8_32 0x3C #define V_008F14_IMG_DATA_FORMAT_8_AS_32 0x3D #define V_008F14_IMG_DATA_FORMAT_8_AS_32_32 0x3E #define V_008F14_IMG_DATA_FORMAT_32_AS_32_32_32_32 0x3F @@ -1466,6 +1452,12 @@ #define S_008F20_BC_SWIZZLE(x) (((unsigned)(x) & 0x07) << 29) #define G_008F20_BC_SWIZZLE(x) (((x) >> 29) & 0x07) #define C_008F20_BC_SWIZZLE 0x1FFFFFFF +#define V_008F20_BC_SWIZZLE_XYZW 0 +#define V_008F20_BC_SWIZZLE_XWYZ 1 +#define V_008F20_BC_SWIZZLE_WZYX 2 +#define V_008F20_BC_SWIZZLE_WXYZ 3 +#define V_008F20_BC_SWIZZLE_ZYXW 4 +#define V_008F20_BC_SWIZZLE_YXWZ 5 #define R_008F24_SQ_IMG_RSRC_WORD5 0x008F24 #define S_008F24_BASE_ARRAY(x) (((unsigned)(x) & 0x1FFF) << 0) #define G_008F24_BASE_ARRAY(x) (((x) >> 0) & 0x1FFF) @@ -4068,16 +4060,16 @@ #define S_028060_PUNCHOUT_MODE(x) (((unsigned)(x) & 0x03) << 0) #define G_028060_PUNCHOUT_MODE(x) (((x) >> 0) & 0x03) #define C_028060_PUNCHOUT_MODE 0xFFFFFFFC +#define V_028060_AUTO 0 +#define V_028060_FORCE_ON 1 +#define V_028060_FORCE_OFF 2 +#define V_028060_RESERVED 3 #define S_028060_POPS_DRAIN_PS_ON_OVERLAP(x) (((unsigned)(x) & 0x1) << 2) #define G_028060_POPS_DRAIN_PS_ON_OVERLAP(x) (((x) >> 2) & 0x1) #define C_028060_POPS_DRAIN_PS_ON_OVERLAP 0xFFFFFFFB #define S_028060_DISALLOW_OVERFLOW(x) (((unsigned)(x) & 0x1) << 3) #define G_028060_DISALLOW_OVERFLOW(x) (((x) >> 3) & 0x1) #define C_028060_DISALLOW_OVERFLOW 0xFFFFFFF7 -#define R_028064_DB_RENDER_FILTER 0x028064 -#define S_028064_PS_INVOKE_MASK(x) (((unsigned)(x) & 0xFFFF) << 0) -#define G_028064_PS_INVOKE_MASK(x) (((x) >> 0) & 0xFFFF) -#define C_028064_PS_INVOKE_MASK 0xFFFF0000 #define R_028068_DB_Z_INFO2 0x028068 #define S_028068_EPITCH(x) (((unsigned)(x) & 0xFFFF) << 0) #define G_028068_EPITCH(x) (((x) >> 0) & 0xFFFF) @@ -4407,9 +4399,6 @@ #define S_02835C_NUM_RB_PER_SE(x) (((unsigned)(x) & 0x03) << 5) #define G_02835C_NUM_RB_PER_SE(x) (((x) >> 5) & 0x03) #define C_02835C_NUM_RB_PER_SE 0xFFFFFF9F -#define S_02835C_DISABLE_SRBSL_DB_OPTIMIZED_PACKING(x) (((unsigned)(x) & 0x1) << 8) -#define G_02835C_DISABLE_SRBSL_DB_OPTIMIZED_PACKING(x) (((x) >> 8) & 0x1) -#define C_02835C_DISABLE_SRBSL_DB_OPTIMIZED_PACKING 0xFFFFFEFF #define R_028360_CP_PERFMON_CNTX_CNTL 0x028360 #define S_028360_PERFMON_ENABLE(x) (((unsigned)(x) & 0x1) << 31) #define G_028360_PERFMON_ENABLE(x) (((x) >> 31) & 0x1) @@ -4453,26 +4442,6 @@ #define S_0283A8_BOT_QTR(x) (((unsigned)(x) & 0xFF) << 24) #define G_0283A8_BOT_QTR(x) (((x) >> 24) & 0xFF) #define C_0283A8_BOT_QTR 0x00FFFFFF -#define R_0283AC_PA_SC_FOV_WINDOW_LR 0x0283AC -#define S_0283AC_LEFT_EYE_FOV_LEFT(x) (((unsigned)(x) & 0xFF) << 0) -#define G_0283AC_LEFT_EYE_FOV_LEFT(x) (((x) >> 0) & 0xFF) -#define C_0283AC_LEFT_EYE_FOV_LEFT 0xFFFFFF00 -#define S_0283AC_LEFT_EYE_FOV_RIGHT(x) (((unsigned)(x) & 0xFF) << 8) -#define G_0283AC_LEFT_EYE_FOV_RIGHT(x) (((x) >> 8) & 0xFF) -#define C_0283AC_LEFT_EYE_FOV_RIGHT 0xFFFF00FF -#define S_0283AC_RIGHT_EYE_FOV_LEFT(x) (((unsigned)(x) & 0xFF) << 16) -#define G_0283AC_RIGHT_EYE_FOV_LEFT(x) (((x) >> 16) & 0xFF) -#define C_0283AC_RIGHT_EYE_FOV_LEFT 0xFF00FFFF -#define S_0283AC_RIGHT_EYE_FOV_RIGHT(x) (((unsigned)(x) & 0xFF) << 24) -#define G_0283AC_RIGHT_EYE_FOV_RIGHT(x) (((x) >> 24) & 0xFF) -#define C_0283AC_RIGHT_EYE_FOV_RIGHT 0x00FFFFFF -#define R_0283B0_PA_SC_FOV_WINDOW_TB 0x0283B0 -#define S_0283B0_FOV_TOP(x) (((unsigned)(x) & 0xFF) << 0) -#define G_0283B0_FOV_TOP(x) (((x) >> 0) & 0xFF) -#define C_0283B0_FOV_TOP 0xFFFFFF00 -#define S_0283B0_FOV_BOT(x) (((unsigned)(x) & 0xFF) << 8) -#define G_0283B0_FOV_BOT(x) (((x) >> 8) & 0xFF) -#define C_0283B0_FOV_BOT 0xFFFF00FF #define R_02840C_VGT_MULTI_PRIM_IB_RESET_INDX 0x02840C #define R_028414_CB_BLEND_RED 0x028414 #define R_028418_CB_BLEND_GREEN 0x028418 @@ -4488,6 +4457,9 @@ #define S_028424_OVERWRITE_COMBINER_WATERMARK(x) (((unsigned)(x) & 0x1F) << 2) #define G_028424_OVERWRITE_COMBINER_WATERMARK(x) (((x) >> 2) & 0x1F) #define C_028424_OVERWRITE_COMBINER_WATERMARK 0xFFFFFF83 +#define S_028424_DISABLE_CONSTANT_ENCODE_REG(x) (((unsigned)(x) & 0x1) << 10) /* Raven2+ */ +#define G_028424_DISABLE_CONSTANT_ENCODE_REG(x) (((x) >> 10) & 0x1) +#define C_028424_DISABLE_CONSTANT_ENCODE_REG 0xFFFFFBFF #define R_02842C_DB_STENCIL_CONTROL 0x02842C #define S_02842C_STENCILFAIL(x) (((unsigned)(x) & 0x0F) << 0) #define G_02842C_STENCILFAIL(x) (((x) >> 0) & 0x0F) @@ -5762,9 +5734,6 @@ #define S_028830_RECTANGLE_FILTER_DISABLE(x) (((unsigned)(x) & 0x1) << 4) #define G_028830_RECTANGLE_FILTER_DISABLE(x) (((x) >> 4) & 0x1) #define C_028830_RECTANGLE_FILTER_DISABLE 0xFFFFFFEF -#define S_028830_SRBSL_ENABLE(x) (((unsigned)(x) & 0x1) << 5) -#define G_028830_SRBSL_ENABLE(x) (((x) >> 5) & 0x1) -#define C_028830_SRBSL_ENABLE 0xFFFFFFDF #define R_028834_PA_CL_OBJPRIM_ID_CNTL 0x028834 #define S_028834_OBJ_ID_SEL(x) (((unsigned)(x) & 0x1) << 0) #define G_028834_OBJ_ID_SEL(x) (((x) >> 0) & 0x1) @@ -5798,6 +5767,7 @@ #define S_02883C_USE_PROVOKING_ZW(x) (((unsigned)(x) & 0x1) << 4) #define G_02883C_USE_PROVOKING_ZW(x) (((x) >> 4) & 0x1) #define C_02883C_USE_PROVOKING_ZW 0xFFFFFFEF +#define R_028840_PA_STEREO_CNTL 0x028840 #define R_028A00_PA_SU_POINT_SIZE 0x028A00 #define S_028A00_HEIGHT(x) (((unsigned)(x) & 0xFFFF) << 0) #define G_028A00_HEIGHT(x) (((x) >> 0) & 0xFFFF) @@ -6186,6 +6156,60 @@ #define S_028A90_EVENT_TYPE(x) (((unsigned)(x) & 0x3F) << 0) #define G_028A90_EVENT_TYPE(x) (((x) >> 0) & 0x3F) #define C_028A90_EVENT_TYPE 0xFFFFFFC0 +#define V_028A90_SAMPLE_STREAMOUTSTATS1 0x01 +#define V_028A90_SAMPLE_STREAMOUTSTATS2 0x02 +#define V_028A90_SAMPLE_STREAMOUTSTATS3 0x03 +#define V_028A90_CACHE_FLUSH_TS 0x04 +#define V_028A90_CONTEXT_DONE 0x05 +#define V_028A90_CACHE_FLUSH 0x06 +#define V_028A90_CS_PARTIAL_FLUSH 0x07 +#define V_028A90_VGT_STREAMOUT_SYNC 0x08 +#define V_028A90_VGT_STREAMOUT_RESET 0x0A +#define V_028A90_END_OF_PIPE_INCR_DE 0x0B +#define V_028A90_END_OF_PIPE_IB_END 0x0C +#define V_028A90_RST_PIX_CNT 0x0D +#define V_028A90_BREAK_BATCH 0x0E /* new */ +#define V_028A90_VS_PARTIAL_FLUSH 0x0F +#define V_028A90_PS_PARTIAL_FLUSH 0x10 +#define V_028A90_FLUSH_HS_OUTPUT 0x11 +#define V_028A90_FLUSH_DFSM 0x12 /* new */ +#define V_028A90_RESET_TO_LOWEST_VGT 0x13 /* new */ +#define V_028A90_CACHE_FLUSH_AND_INV_TS_EVENT 0x14 +#define V_028A90_ZPASS_DONE 0x15 +#define V_028A90_CACHE_FLUSH_AND_INV_EVENT 0x16 +#define V_028A90_PERFCOUNTER_START 0x17 +#define V_028A90_PERFCOUNTER_STOP 0x18 +#define V_028A90_PIPELINESTAT_START 0x19 +#define V_028A90_PIPELINESTAT_STOP 0x1A +#define V_028A90_PERFCOUNTER_SAMPLE 0x1B +#define V_028A90_SAMPLE_PIPELINESTAT 0x1E +#define V_028A90_SO_VGTSTREAMOUT_FLUSH 0x1F +#define V_028A90_SAMPLE_STREAMOUTSTATS 0x20 +#define V_028A90_RESET_VTX_CNT 0x21 +#define V_028A90_BLOCK_CONTEXT_DONE 0x22 +#define V_028A90_CS_CONTEXT_DONE 0x23 +#define V_028A90_VGT_FLUSH 0x24 +#define V_028A90_TGID_ROLLOVER 0x25 +#define V_028A90_SC_SEND_DB_VPZ 0x27 +#define V_028A90_BOTTOM_OF_PIPE_TS 0x28 +#define V_028A90_DB_CACHE_FLUSH_AND_INV 0x2A +#define V_028A90_FLUSH_AND_INV_DB_DATA_TS 0x2B +#define V_028A90_FLUSH_AND_INV_DB_META 0x2C +#define V_028A90_FLUSH_AND_INV_CB_DATA_TS 0x2D +#define V_028A90_FLUSH_AND_INV_CB_META 0x2E +#define V_028A90_CS_DONE 0x2F +#define V_028A90_PS_DONE 0x30 +#define V_028A90_FLUSH_AND_INV_CB_PIXEL_DATA 0x31 +#define V_028A90_THREAD_TRACE_START 0x33 +#define V_028A90_THREAD_TRACE_STOP 0x34 +#define V_028A90_THREAD_TRACE_MARKER 0x35 +#define V_028A90_THREAD_TRACE_FLUSH 0x36 +#define V_028A90_THREAD_TRACE_FINISH 0x37 +#define V_028A90_PIXEL_PIPE_STAT_CONTROL 0x38 +#define V_028A90_PIXEL_PIPE_STAT_DUMP 0x39 +#define V_028A90_PIXEL_PIPE_STAT_RESET 0x3A +#define V_028A90_ENABLE_NGG_PIPELINE 0x3D /* new */ +#define V_028A90_ENABLE_LEGACY_PIPELINE 0x3E /* new */ #define S_028A90_ADDRESS_HI_GFX9(x) (((unsigned)(x) & 0x1FFFF) << 10) #define G_028A90_ADDRESS_HI_GFX9(x) (((x) >> 10) & 0x1FFFF) #define C_028A90_ADDRESS_HI_GFX9 0xF80003FF @@ -6209,10 +6233,6 @@ #define S_028A98_OBJECT_ID_INST_EN(x) (((unsigned)(x) & 0x1) << 3) #define G_028A98_OBJECT_ID_INST_EN(x) (((x) >> 3) & 0x1) #define C_028A98_OBJECT_ID_INST_EN 0xFFFFFFF7 -#define R_028A9C_VGT_INDEX_PAYLOAD_CNTL 0x028A9C -#define S_028A9C_COMPOUND_INDEX_EN(x) (((unsigned)(x) & 0x1) << 0) -#define G_028A9C_COMPOUND_INDEX_EN(x) (((x) >> 0) & 0x1) -#define C_028A9C_COMPOUND_INDEX_EN 0xFFFFFFFE #define R_028AA0_VGT_INSTANCE_STEP_RATE_0 0x028AA0 #define R_028AA4_VGT_INSTANCE_STEP_RATE_1 0x028AA4 #define R_028AAC_VGT_ESGS_RING_ITEMSIZE 0x028AAC @@ -7047,6 +7067,10 @@ #define S_028C44_BINNING_MODE(x) (((unsigned)(x) & 0x03) << 0) #define G_028C44_BINNING_MODE(x) (((x) >> 0) & 0x03) #define C_028C44_BINNING_MODE 0xFFFFFFFC +#define V_028C44_BINNING_ALLOWED 0 +#define V_028C44_FORCE_BINNING_ON 1 +#define V_028C44_DISABLE_BINNING_USE_NEW_SC 2 +#define V_028C44_DISABLE_BINNING_USE_LEGACY_SC 3 #define S_028C44_BIN_SIZE_X(x) (((unsigned)(x) & 0x1) << 2) #define G_028C44_BIN_SIZE_X(x) (((x) >> 2) & 0x1) #define C_028C44_BIN_SIZE_X 0xFFFFFFFB