radeonsi: Don't modify PA_SC_RASTER_CONFIG register value if rb_mask == 0
[mesa.git] / src / gallium / drivers / radeonsi / sid.h
index 3241725ca994059126ac9bffbe0061eb4ccf8949..c78ba7c2991c92e536c477c1e8db1ff2da0457d3 100644 (file)
  * 6. COMMAND [29:22] | BYTE_COUNT [20:0]
  */
 
-
+#define GRBM_GFX_INDEX                                                  0x802C
+#define         INSTANCE_INDEX(x)                                     ((x) << 0)
+#define         SH_INDEX(x)                                           ((x) << 8)
+#define         SE_INDEX(x)                                           ((x) << 16)
+#define         SH_BROADCAST_WRITES                                   (1 << 29)
+#define         INSTANCE_BROADCAST_WRITES                             (1 << 30)
+#define         SE_BROADCAST_WRITES                                   (1 << 31)
 #define R_0084FC_CP_STRMOUT_CNTL                                       0x0084FC
 #define   S_0084FC_OFFSET_UPDATE_DONE(x)                             (((x) & 0x1) << 0)
 #define R_0085F0_CP_COHER_CNTL                                          0x0085F0
 #define   S_00B32C_EXCP_EN(x)                                         (((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_LDS_SIZE(x)                                        (((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 */
 #define R_00B330_SPI_SHADER_USER_DATA_ES_0                              0x00B330
 /* CIK */
 #define R_00B41C_SPI_SHADER_PGM_RSRC3_HS                                0x00B41C
 #define   C_028800_DISABLE_COLOR_WRITES_ON_DEPTH_PASS                 0x7FFFFFFF
 #define R_028804_DB_EQAA                                                0x028804
 #define   S_028804_MAX_ANCHOR_SAMPLES(x)               (((x) & 0x7) << 0)
+#define   G_028804_MAX_ANCHOR_SAMPLES(x)               (((x) >> 0) & 0x7)
+#define   C_028804_MAX_ANCHOR_SAMPLES                  (~(((~0) & 0x7) << 0))
 #define   S_028804_PS_ITER_SAMPLES(x)                  (((x) & 0x7) << 4)
+#define   G_028804_PS_ITER_SAMPLES(x)                  (((x) >> 4) & 0x7)
+#define   C_028804_PS_ITER_SAMPLES                     (~(((~0) & 0x7) << 4))
 #define   S_028804_MASK_EXPORT_NUM_SAMPLES(x)          (((x) & 0x7) << 8)
+#define   G_028804_MASK_EXPORT_NUM_SAMPLES(x)          (((x) >> 8) & 0x7)
+#define   C_028804_MASK_EXPORT_NUM_SAMPLES             (~(((~0) & 0x7) << 8))
 #define   S_028804_ALPHA_TO_MASK_NUM_SAMPLES(x)                (((x) & 0x7) << 12)
+#define   G_028804_ALPHA_TO_MASK_NUM_SAMPLES(x)                (((x) >> 12) & 0x7)
+#define   C_028804_ALPHA_TO_MASK_NUM_SAMPLES           (~(((~0) & 0x7) << 12))
 #define   S_028804_HIGH_QUALITY_INTERSECTIONS(x)       (((x) & 0x1) << 16)
+#define   G_028804_HIGH_QUALITY_INTERSECTIONS(x)       (((x) >> 16) & 0x1)
+#define   C_028804_HIGH_QUALITY_INTERSECTIONS          (~(((~0) & 0x1) << 16))
 #define   S_028804_INCOHERENT_EQAA_READS(x)            (((x) & 0x1) << 17)
+#define   G_028804_INCOHERENT_EQAA_READS(x)            (((x) >> 17) & 0x1)
+#define   C_028804_INCOHERENT_EQAA_READS               (~(((~0) & 0x1) << 17))
 #define   S_028804_INTERPOLATE_COMP_Z(x)               (((x) & 0x1) << 18)
+#define   G_028804_INTERPOLATE_COMP_Z(x)               (((x) >> 18) & 0x1)
+#define   C_028804_INTERPOLATE_COMP_Z                  (~(((~0) >> 18) & 0x1))
 #define   S_028804_INTERPOLATE_SRC_Z(x)                        (((x) & 0x1) << 19)
+#define   G_028804_INTERPOLATE_SRC_Z(x)                        (((x) >> 19) & 0x1)
+#define   C_028804_INTERPOLATE_SRC_Z                   (~(((~0) & 0x1) << 19))
 #define   S_028804_STATIC_ANCHOR_ASSOCIATIONS(x)       (((x) & 0x1) << 20)
+#define   G_028804_STATIC_ANCHOR_ASSOCIATIONS(x)       (((x) >> 20) & 0x1)
+#define   C_028804_STATIC_ANCHOR_ASSOCIATIONS          (~(((~0) & 0x1) << 20))
 #define   S_028804_ALPHA_TO_MASK_EQAA_DISABLE(x)       (((x) & 0x1) << 21)
+#define   G_028804_ALPHA_TO_MASK_EQAA_DISABLE(x)       (((x) >> 21) & 0x1)
+#define   C_028804_ALPHA_TO_MASK_EQAA_DISABLE          (~(((~0) & 0x1) << 21))
 #define R_028808_CB_COLOR_CONTROL                                       0x028808
 #define   S_028808_DEGAMMA_ENABLE(x)                                  (((x) & 0x1) << 3)
 #define   G_028808_DEGAMMA_ENABLE(x)                                  (((x) >> 3) & 0x1)