diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/amd/common/r600d_common.h | 68 | ||||
-rw-r--r-- | src/amd/common/sid.h | 138 | ||||
-rw-r--r-- | src/gallium/drivers/r600/evergreend.h | 60 |
3 files changed, 174 insertions, 92 deletions
diff --git a/src/amd/common/r600d_common.h b/src/amd/common/r600d_common.h index 3dbe43a8b56..a35108fc0cd 100644 --- a/src/amd/common/r600d_common.h +++ b/src/amd/common/r600d_common.h @@ -184,18 +184,42 @@ #define EG_S_028A4C_FORCE_EOV_REZ_ENABLE(x) (((unsigned)(x) & 0x1) << 26) #define CM_R_028804_DB_EQAA 0x00028804 -#define S_028804_MAX_ANCHOR_SAMPLES(x) (((unsigned)(x) & 0x7) << 0) -#define S_028804_PS_ITER_SAMPLES(x) (((unsigned)(x) & 0x7) << 4) -#define S_028804_MASK_EXPORT_NUM_SAMPLES(x) (((unsigned)(x) & 0x7) << 8) -#define S_028804_ALPHA_TO_MASK_NUM_SAMPLES(x) (((unsigned)(x) & 0x7) << 12) -#define S_028804_HIGH_QUALITY_INTERSECTIONS(x) (((unsigned)(x) & 0x1) << 16) -#define S_028804_INCOHERENT_EQAA_READS(x) (((unsigned)(x) & 0x1) << 17) -#define S_028804_INTERPOLATE_COMP_Z(x) (((unsigned)(x) & 0x1) << 18) -#define S_028804_INTERPOLATE_SRC_Z(x) (((unsigned)(x) & 0x1) << 19) -#define S_028804_STATIC_ANCHOR_ASSOCIATIONS(x) (((unsigned)(x) & 0x1) << 20) -#define S_028804_ALPHA_TO_MASK_EQAA_DISABLE(x) (((unsigned)(x) & 0x1) << 21) -#define S_028804_OVERRASTERIZATION_AMOUNT(x) (((unsigned)(x) & 0x07) << 24) -#define S_028804_ENABLE_POSTZ_OVERRASTERIZATION(x) (((unsigned)(x) & 0x1) << 27) +#define S_028804_MAX_ANCHOR_SAMPLES(x) (((unsigned)(x) & 0x07) << 0) +#define G_028804_MAX_ANCHOR_SAMPLES(x) (((x) >> 0) & 0x07) +#define C_028804_MAX_ANCHOR_SAMPLES 0xFFFFFFF8 +#define S_028804_PS_ITER_SAMPLES(x) (((unsigned)(x) & 0x07) << 4) +#define G_028804_PS_ITER_SAMPLES(x) (((x) >> 4) & 0x07) +#define C_028804_PS_ITER_SAMPLES 0xFFFFFF8F +#define S_028804_MASK_EXPORT_NUM_SAMPLES(x) (((unsigned)(x) & 0x07) << 8) +#define G_028804_MASK_EXPORT_NUM_SAMPLES(x) (((x) >> 8) & 0x07) +#define C_028804_MASK_EXPORT_NUM_SAMPLES 0xFFFFF8FF +#define S_028804_ALPHA_TO_MASK_NUM_SAMPLES(x) (((unsigned)(x) & 0x07) << 12) +#define G_028804_ALPHA_TO_MASK_NUM_SAMPLES(x) (((x) >> 12) & 0x07) +#define C_028804_ALPHA_TO_MASK_NUM_SAMPLES 0xFFFF8FFF +#define S_028804_HIGH_QUALITY_INTERSECTIONS(x) (((unsigned)(x) & 0x1) << 16) +#define G_028804_HIGH_QUALITY_INTERSECTIONS(x) (((x) >> 16) & 0x1) +#define C_028804_HIGH_QUALITY_INTERSECTIONS 0xFFFEFFFF +#define S_028804_INCOHERENT_EQAA_READS(x) (((unsigned)(x) & 0x1) << 17) +#define G_028804_INCOHERENT_EQAA_READS(x) (((x) >> 17) & 0x1) +#define C_028804_INCOHERENT_EQAA_READS 0xFFFDFFFF +#define S_028804_INTERPOLATE_COMP_Z(x) (((unsigned)(x) & 0x1) << 18) +#define G_028804_INTERPOLATE_COMP_Z(x) (((x) >> 18) & 0x1) +#define C_028804_INTERPOLATE_COMP_Z 0xFFFBFFFF +#define S_028804_INTERPOLATE_SRC_Z(x) (((unsigned)(x) & 0x1) << 19) +#define G_028804_INTERPOLATE_SRC_Z(x) (((x) >> 19) & 0x1) +#define C_028804_INTERPOLATE_SRC_Z 0xFFF7FFFF +#define S_028804_STATIC_ANCHOR_ASSOCIATIONS(x) (((unsigned)(x) & 0x1) << 20) +#define G_028804_STATIC_ANCHOR_ASSOCIATIONS(x) (((x) >> 20) & 0x1) +#define C_028804_STATIC_ANCHOR_ASSOCIATIONS 0xFFEFFFFF +#define S_028804_ALPHA_TO_MASK_EQAA_DISABLE(x) (((unsigned)(x) & 0x1) << 21) +#define G_028804_ALPHA_TO_MASK_EQAA_DISABLE(x) (((x) >> 21) & 0x1) +#define C_028804_ALPHA_TO_MASK_EQAA_DISABLE 0xFFDFFFFF +#define S_028804_OVERRASTERIZATION_AMOUNT(x) (((unsigned)(x) & 0x07) << 24) +#define G_028804_OVERRASTERIZATION_AMOUNT(x) (((x) >> 24) & 0x07) +#define C_028804_OVERRASTERIZATION_AMOUNT 0xF8FFFFFF +#define S_028804_ENABLE_POSTZ_OVERRASTERIZATION(x) (((unsigned)(x) & 0x1) << 27) +#define G_028804_ENABLE_POSTZ_OVERRASTERIZATION(x) (((x) >> 27) & 0x1) +#define C_028804_ENABLE_POSTZ_OVERRASTERIZATION 0xF7FFFFFF #define CM_R_028BDC_PA_SC_LINE_CNTL 0x28bdc #define S_028BDC_EXPAND_LINE_WIDTH(x) (((unsigned)(x) & 0x1) << 9) #define G_028BDC_EXPAND_LINE_WIDTH(x) (((x) >> 9) & 0x1) @@ -210,11 +234,21 @@ #define G_028BDC_DX10_DIAMOND_TEST_ENA(x) (((x) >> 12) & 0x1) #define C_028BDC_DX10_DIAMOND_TEST_ENA 0xFFFFEFFF #define CM_R_028BE0_PA_SC_AA_CONFIG 0x28be0 -#define S_028BE0_MSAA_NUM_SAMPLES(x) (((unsigned)(x) & 0x7) << 0) -#define S_028BE0_AA_MASK_CENTROID_DTMN(x) (((unsigned)(x) & 0x1) << 4) -#define S_028BE0_MAX_SAMPLE_DIST(x) (((unsigned)(x) & 0xf) << 13) -#define S_028BE0_MSAA_EXPOSED_SAMPLES(x) (((unsigned)(x) & 0x7) << 20) -#define S_028BE0_DETAIL_TO_EXPOSED_MODE(x) (((unsigned)(x) & 0x3) << 24) +#define S_028BE0_MSAA_NUM_SAMPLES(x) (((unsigned)(x) & 0x07) << 0) +#define G_028BE0_MSAA_NUM_SAMPLES(x) (((x) >> 0) & 0x07) +#define C_028BE0_MSAA_NUM_SAMPLES 0xFFFFFFF8 +#define S_028BE0_AA_MASK_CENTROID_DTMN(x) (((unsigned)(x) & 0x1) << 4) +#define G_028BE0_AA_MASK_CENTROID_DTMN(x) (((x) >> 4) & 0x1) +#define C_028BE0_AA_MASK_CENTROID_DTMN 0xFFFFFFEF +#define S_028BE0_MAX_SAMPLE_DIST(x) (((unsigned)(x) & 0x0F) << 13) +#define G_028BE0_MAX_SAMPLE_DIST(x) (((x) >> 13) & 0x0F) +#define C_028BE0_MAX_SAMPLE_DIST 0xFFFE1FFF +#define S_028BE0_MSAA_EXPOSED_SAMPLES(x) (((unsigned)(x) & 0x07) << 20) +#define G_028BE0_MSAA_EXPOSED_SAMPLES(x) (((x) >> 20) & 0x07) +#define C_028BE0_MSAA_EXPOSED_SAMPLES 0xFF8FFFFF +#define S_028BE0_DETAIL_TO_EXPOSED_MODE(x) (((unsigned)(x) & 0x03) << 24) +#define G_028BE0_DETAIL_TO_EXPOSED_MODE(x) (((x) >> 24) & 0x03) +#define C_028BE0_DETAIL_TO_EXPOSED_MODE 0xFCFFFFFF #define CM_R_028BF8_PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y0_0 0x28bf8 #define CM_R_028C08_PA_SC_AA_SAMPLE_LOCS_PIXEL_X1Y0_0 0x28c08 #define CM_R_028C18_PA_SC_AA_SAMPLE_LOCS_PIXEL_X0Y1_0 0x28c18 diff --git a/src/amd/common/sid.h b/src/amd/common/sid.h index 7789add3d15..cb353d6f81e 100644 --- a/src/amd/common/sid.h +++ b/src/amd/common/sid.h @@ -2929,12 +2929,12 @@ #define S_00B02C_EXTRA_LDS_SIZE(x) (((unsigned)(x) & 0xFF) << 8) #define G_00B02C_EXTRA_LDS_SIZE(x) (((x) >> 8) & 0xFF) #define C_00B02C_EXTRA_LDS_SIZE 0xFFFF00FF -#define S_00B02C_EXCP_EN(x) (((unsigned)(x) & 0x7F) << 16) /* mask is 0x1FF on CIK */ -#define G_00B02C_EXCP_EN(x) (((x) >> 16) & 0x7F) /* mask is 0x1FF on CIK */ -#define C_00B02C_EXCP_EN 0xFF80FFFF /* mask is 0x1FF on CIK */ -#define S_00B02C_EXCP_EN_CIK(x) (((unsigned)(x) & 0x1FF) << 16) -#define G_00B02C_EXCP_EN_CIK(x) (((x) >> 16) & 0x1FF) -#define C_00B02C_EXCP_EN_CIK 0xFE00FFFF +#define S_00B02C_EXCP_EN_SI(x) (((unsigned)(x) & 0x7F) << 16) +#define G_00B02C_EXCP_EN_SI(x) (((x) >> 16) & 0x7F) +#define C_00B02C_EXCP_EN_SI 0xFF80FFFF +#define S_00B02C_EXCP_EN(x) (((unsigned)(x) & 0x1FF) << 16) +#define G_00B02C_EXCP_EN(x) (((x) >> 16) & 0x1FF) +#define C_00B02C_EXCP_EN 0xFE00FFFF #define R_00B030_SPI_SHADER_USER_DATA_PS_0 0x00B030 #define R_00B034_SPI_SHADER_USER_DATA_PS_1 0x00B034 #define R_00B038_SPI_SHADER_USER_DATA_PS_2 0x00B038 @@ -3049,12 +3049,12 @@ #define S_00B12C_SO_EN(x) (((unsigned)(x) & 0x1) << 12) #define G_00B12C_SO_EN(x) (((x) >> 12) & 0x1) #define C_00B12C_SO_EN 0xFFFFEFFF -#define S_00B12C_EXCP_EN(x) (((unsigned)(x) & 0x7F) << 13) /* mask is 0x1FF on CIK */ -#define G_00B12C_EXCP_EN(x) (((x) >> 13) & 0x7F) /* mask is 0x1FF on CIK */ -#define C_00B12C_EXCP_EN 0xFFF01FFF /* mask is 0x1FF on CIK */ -#define S_00B12C_EXCP_EN_CIK(x) (((unsigned)(x) & 0x1FF) << 13) -#define G_00B12C_EXCP_EN_CIK(x) (((x) >> 13) & 0x1FF) -#define C_00B12C_EXCP_EN_CIK 0xFFC01FFF +#define S_00B12C_EXCP_EN_SI(x) (((unsigned)(x) & 0x7F) << 13) +#define G_00B12C_EXCP_EN_SI(x) (((x) >> 13) & 0x7F) +#define C_00B12C_EXCP_EN_SI 0xFFF01FFF +#define S_00B12C_EXCP_EN(x) (((unsigned)(x) & 0x1FF) << 13) +#define G_00B12C_EXCP_EN(x) (((x) >> 13) & 0x1FF) +#define C_00B12C_EXCP_EN 0xFFC01FFF /* VI */ #define S_00B12C_DISPATCH_DRAW_EN(x) (((unsigned)(x) & 0x1) << 24) #define G_00B12C_DISPATCH_DRAW_EN(x) (((x) >> 24) & 0x1) @@ -3154,12 +3154,12 @@ #define S_00B22C_TRAP_PRESENT(x) (((unsigned)(x) & 0x1) << 6) #define G_00B22C_TRAP_PRESENT(x) (((x) >> 6) & 0x1) #define C_00B22C_TRAP_PRESENT 0xFFFFFFBF -#define S_00B22C_EXCP_EN(x) (((unsigned)(x) & 0x7F) << 7) /* mask is 0x1FF on CIK */ -#define G_00B22C_EXCP_EN(x) (((x) >> 7) & 0x7F) /* mask is 0x1FF on CIK */ -#define C_00B22C_EXCP_EN 0xFFFFC07F /* mask is 0x1FF on CIK */ -#define S_00B22C_EXCP_EN_CIK(x) (((unsigned)(x) & 0x1FF) << 7) -#define G_00B22C_EXCP_EN_CIK(x) (((x) >> 7) & 0x1FF) -#define C_00B22C_EXCP_EN_CIK 0xFFFF007F +#define S_00B22C_EXCP_EN_SI(x) (((unsigned)(x) & 0x7F) << 7) +#define G_00B22C_EXCP_EN_SI(x) (((x) >> 7) & 0x7F) +#define C_00B22C_EXCP_EN_SI 0xFFFFC07F +#define S_00B22C_EXCP_EN(x) (((unsigned)(x) & 0x1FF) << 7) +#define G_00B22C_EXCP_EN(x) (((x) >> 7) & 0x1FF) +#define C_00B22C_EXCP_EN 0xFFFF007F #define R_00B230_SPI_SHADER_USER_DATA_GS_0 0x00B230 #define R_00B234_SPI_SHADER_USER_DATA_GS_1 0x00B234 #define R_00B238_SPI_SHADER_USER_DATA_GS_2 0x00B238 @@ -3260,9 +3260,12 @@ #define S_00B32C_OC_LDS_EN(x) (((unsigned)(x) & 0x1) << 7) #define G_00B32C_OC_LDS_EN(x) (((x) >> 7) & 0x1) #define C_00B32C_OC_LDS_EN 0xFFFFFF7F -#define S_00B32C_EXCP_EN(x) (((unsigned)(x) & 0x7F) << 8) /* mask is 0x1FF on CIK */ -#define G_00B32C_EXCP_EN(x) (((x) >> 8) & 0x7F) /* mask is 0x1FF on CIK */ -#define C_00B32C_EXCP_EN 0xFFFF80FF /* mask is 0x1FF on CIK */ +#define S_00B32C_EXCP_EN_SI(x) (((unsigned)(x) & 0x7F) << 8) +#define G_00B32C_EXCP_EN_SI(x) (((x) >> 8) & 0x7F) +#define C_00B32C_EXCP_EN_SI 0xFFFF80FF +#define S_00B32C_EXCP_EN(x) (((unsigned)(x) & 0x1FF) << 8) +#define G_00B32C_EXCP_EN(x) (((x) >> 8) & 0x1FF) +#define C_00B32C_EXCP_EN 0xFFFE00FF #define S_00B32C_LDS_SIZE(x) (((unsigned)(x) & 0x1FF) << 20) /* CIK, for on-chip GS */ #define G_00B32C_LDS_SIZE(x) (((x) >> 20) & 0x1FF) /* CIK, for on-chip GS */ #define C_00B32C_LDS_SIZE 0xE00FFFFF /* CIK, for on-chip GS */ @@ -3360,9 +3363,12 @@ #define S_00B42C_TG_SIZE_EN(x) (((unsigned)(x) & 0x1) << 8) #define G_00B42C_TG_SIZE_EN(x) (((x) >> 8) & 0x1) #define C_00B42C_TG_SIZE_EN 0xFFFFFEFF -#define S_00B42C_EXCP_EN(x) (((unsigned)(x) & 0x7F) << 9) /* mask is 0x1FF on CIK */ -#define G_00B42C_EXCP_EN(x) (((x) >> 9) & 0x7F) /* mask is 0x1FF on CIK */ -#define C_00B42C_EXCP_EN 0xFFFF01FF /* mask is 0x1FF on CIK */ +#define S_00B42C_EXCP_EN_SI(x) (((unsigned)(x) & 0x7F) << 9) +#define G_00B42C_EXCP_EN_SI(x) (((x) >> 9) & 0x7F) +#define C_00B42C_EXCP_EN_SI 0xFFFF01FF +#define S_00B42C_EXCP_EN_CIK_VI(x) (((unsigned)(x) & 0x1FF) << 9) +#define G_00B42C_EXCP_EN_CIK_VI(x) (((x) >> 9) & 0x1FF) +#define C_00B42C_EXCP_EN_CIK_VI 0xFFFC01FF #define R_00B430_SPI_SHADER_USER_DATA_HS_0 0x00B430 #define R_00B434_SPI_SHADER_USER_DATA_HS_1 0x00B434 #define R_00B438_SPI_SHADER_USER_DATA_HS_2 0x00B438 @@ -3460,9 +3466,12 @@ #define S_00B52C_LDS_SIZE(x) (((unsigned)(x) & 0x1FF) << 7) #define G_00B52C_LDS_SIZE(x) (((x) >> 7) & 0x1FF) #define C_00B52C_LDS_SIZE 0xFFFF007F -#define S_00B52C_EXCP_EN(x) (((unsigned)(x) & 0x7F) << 16) /* mask is 0x1FF on CIK */ -#define G_00B52C_EXCP_EN(x) (((x) >> 16) & 0x7F) /* mask is 0x1FF on CIK */ -#define C_00B52C_EXCP_EN 0xFF80FFFF /* mask is 0x1FF on CIK */ +#define S_00B52C_EXCP_EN_SI(x) (((unsigned)(x) & 0x7F) << 16) +#define G_00B52C_EXCP_EN_SI(x) (((x) >> 16) & 0x7F) +#define C_00B52C_EXCP_EN_SI 0xFF80FFFF +#define S_00B52C_EXCP_EN(x) (((unsigned)(x) & 0x1FF) << 16) +#define G_00B52C_EXCP_EN(x) (((x) >> 16) & 0x1FF) +#define C_00B52C_EXCP_EN 0xFE00FFFF #define R_00B530_SPI_SHADER_USER_DATA_LS_0 0x00B530 #define R_00B534_SPI_SHADER_USER_DATA_LS_1 0x00B534 #define R_00B538_SPI_SHADER_USER_DATA_LS_2 0x00B538 @@ -3653,12 +3662,12 @@ #define G_00B850_DATA(x) (((x) >> 0) & 0x0F) #define C_00B850_DATA 0xFFFFFFF0 #define R_00B854_COMPUTE_RESOURCE_LIMITS 0x00B854 -#define S_00B854_WAVES_PER_SH(x) (((unsigned)(x) & 0x3F) << 0) /* mask is 0x3FF on CIK */ -#define G_00B854_WAVES_PER_SH(x) (((x) >> 0) & 0x3F) /* mask is 0x3FF on CIK */ -#define C_00B854_WAVES_PER_SH 0xFFFFFFC0 /* mask is 0x3FF on CIK */ -#define S_00B854_WAVES_PER_SH_CIK(x) (((unsigned)(x) & 0x3FF) << 0) -#define G_00B854_WAVES_PER_SH_CIK(x) (((x) >> 0) & 0x3FF) -#define C_00B854_WAVES_PER_SH_CIK 0xFFFFFC00 +#define S_00B854_WAVES_PER_SH_SI(x) (((unsigned)(x) & 0x3F) << 0) +#define G_00B854_WAVES_PER_SH_SI(x) (((x) >> 0) & 0x3F) +#define C_00B854_WAVES_PER_SH_SI 0xFFFFFFC0 +#define S_00B854_WAVES_PER_SH(x) (((unsigned)(x) & 0x3FF) << 0) /* CIK+ */ +#define G_00B854_WAVES_PER_SH(x) (((x) >> 0) & 0x3FF) +#define C_00B854_WAVES_PER_SH 0xFFFFFC00 #define S_00B854_TG_PER_CU(x) (((unsigned)(x) & 0x0F) << 12) #define G_00B854_TG_PER_CU(x) (((x) >> 12) & 0x0F) #define C_00B854_TG_PER_CU 0xFFFF0FFF @@ -6779,16 +6788,16 @@ #define G_028800_DISABLE_COLOR_WRITES_ON_DEPTH_PASS(x) (((x) >> 31) & 0x1) #define C_028800_DISABLE_COLOR_WRITES_ON_DEPTH_PASS 0x7FFFFFFF #define R_028804_DB_EQAA 0x028804 -#define S_028804_MAX_ANCHOR_SAMPLES(x) (((unsigned)(x) & 0x7) << 0) +#define S_028804_MAX_ANCHOR_SAMPLES(x) (((unsigned)(x) & 0x07) << 0) #define G_028804_MAX_ANCHOR_SAMPLES(x) (((x) >> 0) & 0x07) #define C_028804_MAX_ANCHOR_SAMPLES 0xFFFFFFF8 -#define S_028804_PS_ITER_SAMPLES(x) (((unsigned)(x) & 0x7) << 4) +#define S_028804_PS_ITER_SAMPLES(x) (((unsigned)(x) & 0x07) << 4) #define G_028804_PS_ITER_SAMPLES(x) (((x) >> 4) & 0x07) #define C_028804_PS_ITER_SAMPLES 0xFFFFFF8F -#define S_028804_MASK_EXPORT_NUM_SAMPLES(x) (((unsigned)(x) & 0x7) << 8) +#define S_028804_MASK_EXPORT_NUM_SAMPLES(x) (((unsigned)(x) & 0x07) << 8) #define G_028804_MASK_EXPORT_NUM_SAMPLES(x) (((x) >> 8) & 0x07) #define C_028804_MASK_EXPORT_NUM_SAMPLES 0xFFFFF8FF -#define S_028804_ALPHA_TO_MASK_NUM_SAMPLES(x) (((unsigned)(x) & 0x7) << 12) +#define S_028804_ALPHA_TO_MASK_NUM_SAMPLES(x) (((unsigned)(x) & 0x07) << 12) #define G_028804_ALPHA_TO_MASK_NUM_SAMPLES(x) (((x) >> 12) & 0x07) #define C_028804_ALPHA_TO_MASK_NUM_SAMPLES 0xFFFF8FFF #define S_028804_HIGH_QUALITY_INTERSECTIONS(x) (((unsigned)(x) & 0x1) << 16) @@ -7232,12 +7241,21 @@ #define C_02882C_YMAX_BOTTOM_EXCLUSION 0x7FFFFFFF /* */ #define R_028830_PA_SU_SMALL_PRIM_FILTER_CNTL 0x028830 /* Polaris */ -#define S_028830_SMALL_PRIM_FILTER_ENABLE(x) (((x) & 0x1) << 0) +#define S_028830_SMALL_PRIM_FILTER_ENABLE(x) (((unsigned)(x) & 0x1) << 0) +#define G_028830_SMALL_PRIM_FILTER_ENABLE(x) (((x) >> 0) & 0x1) #define C_028830_SMALL_PRIM_FILTER_ENABLE 0xFFFFFFFE -#define S_028830_TRIANGLE_FILTER_DISABLE(x) (((x) & 0x1) << 1) -#define S_028830_LINE_FILTER_DISABLE(x) (((x) & 0x1) << 2) -#define S_028830_POINT_FILTER_DISABLE(x) (((x) & 0x1) << 3) -#define S_028830_RECTANGLE_FILTER_DISABLE(x) (((x) & 0x1) << 4) +#define S_028830_TRIANGLE_FILTER_DISABLE(x) (((unsigned)(x) & 0x1) << 1) +#define G_028830_TRIANGLE_FILTER_DISABLE(x) (((x) >> 1) & 0x1) +#define C_028830_TRIANGLE_FILTER_DISABLE 0xFFFFFFFD +#define S_028830_LINE_FILTER_DISABLE(x) (((unsigned)(x) & 0x1) << 2) +#define G_028830_LINE_FILTER_DISABLE(x) (((x) >> 2) & 0x1) +#define C_028830_LINE_FILTER_DISABLE 0xFFFFFFFB +#define S_028830_POINT_FILTER_DISABLE(x) (((unsigned)(x) & 0x1) << 3) +#define G_028830_POINT_FILTER_DISABLE(x) (((x) >> 3) & 0x1) +#define C_028830_POINT_FILTER_DISABLE 0xFFFFFFF7 +#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 R_028A00_PA_SU_POINT_SIZE 0x028A00 #define S_028A00_HEIGHT(x) (((unsigned)(x) & 0xFFFF) << 0) #define G_028A00_HEIGHT(x) (((x) >> 0) & 0xFFFF) @@ -7715,14 +7733,14 @@ #define V_028A7C_VGT_DMA_BUF_MEM 0x00 #define V_028A7C_VGT_DMA_BUF_RING 0x01 #define V_028A7C_VGT_DMA_BUF_SETUP 0x02 -#define S_028A7C_RDREQ_POLICY(x) (((unsigned)(x) & 0x03) << 6) -#define G_028A7C_RDREQ_POLICY(x) (((x) >> 6) & 0x03) -#define C_028A7C_RDREQ_POLICY 0xFFFFFF3F +#define S_028A7C_RDREQ_POLICY_CIK(x) (((unsigned)(x) & 0x03) << 6) +#define G_028A7C_RDREQ_POLICY_CIK(x) (((x) >> 6) & 0x03) +#define C_028A7C_RDREQ_POLICY_CIK 0xFFFFFF3F #define V_028A7C_VGT_POLICY_LRU 0x00 #define V_028A7C_VGT_POLICY_STREAM 0x01 -#define S_028A7C_RDREQ_POLICY_VI(x) (((unsigned)(x) & 0x1) << 6) -#define G_028A7C_RDREQ_POLICY_VI(x) (((x) >> 6) & 0x1) -#define C_028A7C_RDREQ_POLICY_VI 0xFFFFFFBF +#define S_028A7C_RDREQ_POLICY(x) (((unsigned)(x) & 0x1) << 6) /* VI+ */ +#define G_028A7C_RDREQ_POLICY(x) (((x) >> 6) & 0x1) +#define C_028A7C_RDREQ_POLICY 0xFFFFFFBF #define S_028A7C_ATC(x) (((unsigned)(x) & 0x1) << 8) #define G_028A7C_ATC(x) (((x) >> 8) & 0x1) #define C_028A7C_ATC 0xFFFFFEFF @@ -7988,8 +8006,8 @@ #define S_028B50_DONUT_SPLIT(x) (((unsigned)(x) & 0x1F) << 24) #define G_028B50_DONUT_SPLIT(x) (((x) >> 24) & 0x1F) #define C_028B50_DONUT_SPLIT 0xE0FFFFFF -#define S_028B50_TRAP_SPLIT(x) (((unsigned)(x) & 0x7) << 29) /* Fiji+ */ -#define G_028B50_TRAP_SPLIT(x) (((x) >> 29) & 0x7) +#define S_028B50_TRAP_SPLIT(x) (((unsigned)(x) & 0x07) << 29) /* Fiji+ */ +#define G_028B50_TRAP_SPLIT(x) (((x) >> 29) & 0x07) #define C_028B50_TRAP_SPLIT 0x1FFFFFFF /* */ #define R_028B54_VGT_SHADER_STAGES_EN 0x028B54 @@ -8094,17 +8112,17 @@ #define G_028B6C_DISABLE_DONUTS(x) (((x) >> 14) & 0x1) #define C_028B6C_DISABLE_DONUTS 0xFFFFBFFF /* CIK */ -#define S_028B6C_RDREQ_POLICY(x) (((unsigned)(x) & 0x03) << 15) -#define G_028B6C_RDREQ_POLICY(x) (((x) >> 15) & 0x03) -#define C_028B6C_RDREQ_POLICY 0xFFFE7FFF +#define S_028B6C_RDREQ_POLICY_CIK(x) (((unsigned)(x) & 0x03) << 15) +#define G_028B6C_RDREQ_POLICY_CIK(x) (((x) >> 15) & 0x03) +#define C_028B6C_RDREQ_POLICY_CIK 0xFFFE7FFF #define V_028B6C_VGT_POLICY_LRU 0x00 #define V_028B6C_VGT_POLICY_STREAM 0x01 #define V_028B6C_VGT_POLICY_BYPASS 0x02 /* */ /* VI */ -#define S_028B6C_RDREQ_POLICY_VI(x) (((unsigned)(x) & 0x1) << 15) -#define G_028B6C_RDREQ_POLICY_VI(x) (((x) >> 15) & 0x1) -#define C_028B6C_RDREQ_POLICY_VI 0xFFFF7FFF +#define S_028B6C_RDREQ_POLICY(x) (((unsigned)(x) & 0x1) << 15) /* VI+ */ +#define G_028B6C_RDREQ_POLICY(x) (((x) >> 15) & 0x1) +#define C_028B6C_RDREQ_POLICY 0xFFFF7FFF #define S_028B6C_DISTRIBUTION_MODE(x) (((unsigned)(x) & 0x03) << 17) #define G_028B6C_DISTRIBUTION_MODE(x) (((x) >> 17) & 0x03) #define C_028B6C_DISTRIBUTION_MODE 0xFFF9FFFF @@ -8256,19 +8274,19 @@ #define G_028BDC_DX10_DIAMOND_TEST_ENA(x) (((x) >> 12) & 0x1) #define C_028BDC_DX10_DIAMOND_TEST_ENA 0xFFFFEFFF #define R_028BE0_PA_SC_AA_CONFIG 0x028BE0 -#define S_028BE0_MSAA_NUM_SAMPLES(x) (((unsigned)(x) & 0x7) << 0) +#define S_028BE0_MSAA_NUM_SAMPLES(x) (((unsigned)(x) & 0x07) << 0) #define G_028BE0_MSAA_NUM_SAMPLES(x) (((x) >> 0) & 0x07) #define C_028BE0_MSAA_NUM_SAMPLES 0xFFFFFFF8 #define S_028BE0_AA_MASK_CENTROID_DTMN(x) (((unsigned)(x) & 0x1) << 4) #define G_028BE0_AA_MASK_CENTROID_DTMN(x) (((x) >> 4) & 0x1) #define C_028BE0_AA_MASK_CENTROID_DTMN 0xFFFFFFEF -#define S_028BE0_MAX_SAMPLE_DIST(x) (((unsigned)(x) & 0xf) << 13) +#define S_028BE0_MAX_SAMPLE_DIST(x) (((unsigned)(x) & 0x0F) << 13) #define G_028BE0_MAX_SAMPLE_DIST(x) (((x) >> 13) & 0x0F) #define C_028BE0_MAX_SAMPLE_DIST 0xFFFE1FFF -#define S_028BE0_MSAA_EXPOSED_SAMPLES(x) (((unsigned)(x) & 0x7) << 20) +#define S_028BE0_MSAA_EXPOSED_SAMPLES(x) (((unsigned)(x) & 0x07) << 20) #define G_028BE0_MSAA_EXPOSED_SAMPLES(x) (((x) >> 20) & 0x07) #define C_028BE0_MSAA_EXPOSED_SAMPLES 0xFF8FFFFF -#define S_028BE0_DETAIL_TO_EXPOSED_MODE(x) (((unsigned)(x) & 0x3) << 24) +#define S_028BE0_DETAIL_TO_EXPOSED_MODE(x) (((unsigned)(x) & 0x03) << 24) #define G_028BE0_DETAIL_TO_EXPOSED_MODE(x) (((x) >> 24) & 0x03) #define C_028BE0_DETAIL_TO_EXPOSED_MODE 0xFCFFFFFF #define R_028BE4_PA_SU_VTX_CNTL 0x028BE4 diff --git a/src/gallium/drivers/r600/evergreend.h b/src/gallium/drivers/r600/evergreend.h index 40ba7c15392..0173ea37399 100644 --- a/src/gallium/drivers/r600/evergreend.h +++ b/src/gallium/drivers/r600/evergreend.h @@ -2504,26 +2504,56 @@ #define S_0286FC_NUM_LS_LDS(x) ((x) & 0xff) << 8 #define CM_R_028804_DB_EQAA 0x00028804 -#define S_028804_MAX_ANCHOR_SAMPLES(x) (((unsigned)(x) & 0x7) << 0) -#define S_028804_PS_ITER_SAMPLES(x) (((unsigned)(x) & 0x7) << 4) -#define S_028804_MASK_EXPORT_NUM_SAMPLES(x) (((unsigned)(x) & 0x7) << 8) -#define S_028804_ALPHA_TO_MASK_NUM_SAMPLES(x) (((unsigned)(x) & 0x7) << 12) -#define S_028804_HIGH_QUALITY_INTERSECTIONS(x) (((unsigned)(x) & 0x1) << 16) -#define S_028804_INCOHERENT_EQAA_READS(x) (((unsigned)(x) & 0x1) << 17) -#define S_028804_INTERPOLATE_COMP_Z(x) (((unsigned)(x) & 0x1) << 18) -#define S_028804_INTERPOLATE_SRC_Z(x) (((unsigned)(x) & 0x1) << 19) -#define S_028804_STATIC_ANCHOR_ASSOCIATIONS(x) (((unsigned)(x) & 0x1) << 20) -#define S_028804_ALPHA_TO_MASK_EQAA_DISABLE(x) (((unsigned)(x) & 0x1) << 21) +#define S_028804_MAX_ANCHOR_SAMPLES(x) (((unsigned)(x) & 0x07) << 0) +#define G_028804_MAX_ANCHOR_SAMPLES(x) (((x) >> 0) & 0x07) +#define C_028804_MAX_ANCHOR_SAMPLES 0xFFFFFFF8 +#define S_028804_PS_ITER_SAMPLES(x) (((unsigned)(x) & 0x07) << 4) +#define G_028804_PS_ITER_SAMPLES(x) (((x) >> 4) & 0x07) +#define C_028804_PS_ITER_SAMPLES 0xFFFFFF8F +#define S_028804_MASK_EXPORT_NUM_SAMPLES(x) (((unsigned)(x) & 0x07) << 8) +#define G_028804_MASK_EXPORT_NUM_SAMPLES(x) (((x) >> 8) & 0x07) +#define C_028804_MASK_EXPORT_NUM_SAMPLES 0xFFFFF8FF +#define S_028804_ALPHA_TO_MASK_NUM_SAMPLES(x) (((unsigned)(x) & 0x07) << 12) +#define G_028804_ALPHA_TO_MASK_NUM_SAMPLES(x) (((x) >> 12) & 0x07) +#define C_028804_ALPHA_TO_MASK_NUM_SAMPLES 0xFFFF8FFF +#define S_028804_HIGH_QUALITY_INTERSECTIONS(x) (((unsigned)(x) & 0x1) << 16) +#define G_028804_HIGH_QUALITY_INTERSECTIONS(x) (((x) >> 16) & 0x1) +#define C_028804_HIGH_QUALITY_INTERSECTIONS 0xFFFEFFFF +#define S_028804_INCOHERENT_EQAA_READS(x) (((unsigned)(x) & 0x1) << 17) +#define G_028804_INCOHERENT_EQAA_READS(x) (((x) >> 17) & 0x1) +#define C_028804_INCOHERENT_EQAA_READS 0xFFFDFFFF +#define S_028804_INTERPOLATE_COMP_Z(x) (((unsigned)(x) & 0x1) << 18) +#define G_028804_INTERPOLATE_COMP_Z(x) (((x) >> 18) & 0x1) +#define C_028804_INTERPOLATE_COMP_Z 0xFFFBFFFF +#define S_028804_INTERPOLATE_SRC_Z(x) (((unsigned)(x) & 0x1) << 19) +#define G_028804_INTERPOLATE_SRC_Z(x) (((x) >> 19) & 0x1) +#define C_028804_INTERPOLATE_SRC_Z 0xFFF7FFFF +#define S_028804_STATIC_ANCHOR_ASSOCIATIONS(x) (((unsigned)(x) & 0x1) << 20) +#define G_028804_STATIC_ANCHOR_ASSOCIATIONS(x) (((x) >> 20) & 0x1) +#define C_028804_STATIC_ANCHOR_ASSOCIATIONS 0xFFEFFFFF +#define S_028804_ALPHA_TO_MASK_EQAA_DISABLE(x) (((unsigned)(x) & 0x1) << 21) +#define G_028804_ALPHA_TO_MASK_EQAA_DISABLE(x) (((x) >> 21) & 0x1) +#define C_028804_ALPHA_TO_MASK_EQAA_DISABLE 0xFFDFFFFF #define CM_R_028BD4_PA_SC_CENTROID_PRIORITY_0 0x00028BD4 #define CM_R_028BD8_PA_SC_CENTROID_PRIORITY_1 0x00028BD8 #define CM_R_028BDC_PA_SC_LINE_CNTL 0x28bdc #define CM_R_028BE0_PA_SC_AA_CONFIG 0x28be0 -#define S_028BE0_MSAA_NUM_SAMPLES(x) (((unsigned)(x) & 0x7) << 0) -#define S_028BE0_AA_MASK_CENTROID_DTMN(x) (((unsigned)(x) & 0x1) << 4) -#define S_028BE0_MAX_SAMPLE_DIST(x) (((unsigned)(x) & 0xf) << 13) -#define S_028BE0_MSAA_EXPOSED_SAMPLES(x) (((unsigned)(x) & 0x7) << 20) -#define S_028BE0_DETAIL_TO_EXPOSED_MODE(x) (((unsigned)(x) & 0x3) << 24) +#define S_028BE0_MSAA_NUM_SAMPLES(x) (((unsigned)(x) & 0x07) << 0) +#define G_028BE0_MSAA_NUM_SAMPLES(x) (((x) >> 0) & 0x07) +#define C_028BE0_MSAA_NUM_SAMPLES 0xFFFFFFF8 +#define S_028BE0_AA_MASK_CENTROID_DTMN(x) (((unsigned)(x) & 0x1) << 4) +#define G_028BE0_AA_MASK_CENTROID_DTMN(x) (((x) >> 4) & 0x1) +#define C_028BE0_AA_MASK_CENTROID_DTMN 0xFFFFFFEF +#define S_028BE0_MAX_SAMPLE_DIST(x) (((unsigned)(x) & 0x0F) << 13) +#define G_028BE0_MAX_SAMPLE_DIST(x) (((x) >> 13) & 0x0F) +#define C_028BE0_MAX_SAMPLE_DIST 0xFFFE1FFF +#define S_028BE0_MSAA_EXPOSED_SAMPLES(x) (((unsigned)(x) & 0x07) << 20) +#define G_028BE0_MSAA_EXPOSED_SAMPLES(x) (((x) >> 20) & 0x07) +#define C_028BE0_MSAA_EXPOSED_SAMPLES 0xFF8FFFFF +#define S_028BE0_DETAIL_TO_EXPOSED_MODE(x) (((unsigned)(x) & 0x03) << 24) +#define G_028BE0_DETAIL_TO_EXPOSED_MODE(x) (((x) >> 24) & 0x03) +#define C_028BE0_DETAIL_TO_EXPOSED_MODE 0xFCFFFFFF #define CM_R_028BE4_PA_SU_VTX_CNTL 0x28be4 #define CM_R_028BE8_PA_CL_GB_VERT_CLIP_ADJ 0x28be8 #define CM_R_028BEC_PA_CL_GB_VERT_DISC_ADJ 0x28bec |