radeonsi: set PA_SU_SMALL_PRIM_FILTER_CNTL register on Polaris
authorMarek Olšák <marek.olsak@amd.com>
Fri, 8 Apr 2016 10:15:50 +0000 (12:15 +0200)
committerMarek Olšák <marek.olsak@amd.com>
Tue, 28 Jun 2016 13:47:13 +0000 (15:47 +0200)
This was missing.

Cc: 12.0 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
src/gallium/drivers/radeonsi/si_state.c
src/gallium/drivers/radeonsi/sid.h

index 2e2c5ca36ec2f633e38a319ec853e39b8a0c13c9..0a2fdbf38ee600ddf2201aaeb874ce5f26c9c309 100644 (file)
@@ -3882,6 +3882,11 @@ static void si_init_config(struct si_context *sctx)
        if (sctx->b.family == CHIP_STONEY)
                si_pm4_set_reg(pm4, R_028C40_PA_SC_SHADER_CONTROL, 0);
 
+       if (sctx->b.family >= CHIP_POLARIS10)
+               si_pm4_set_reg(pm4, R_028830_PA_SU_SMALL_PRIM_FILTER_CNTL,
+                              S_028830_SMALL_PRIM_FILTER_ENABLE(1) |
+                              S_028830_LINE_FILTER_DISABLE(1)); /* line bug */
+
        si_pm4_set_reg(pm4, R_028080_TA_BC_BASE_ADDR, border_color_va >> 8);
        if (sctx->b.chip_class >= CIK)
                si_pm4_set_reg(pm4, R_028084_TA_BC_BASE_ADDR_HI, border_color_va >> 40);
index 1363a44b8089d5c367c5ee15e440e79e9807f4b3..b9734898217aa4ba306acc45d71ee9ae7943a9cc 100644 (file)
 #define   G_02882C_YMAX_BOTTOM_EXCLUSION(x)                           (((x) >> 31) & 0x1)
 #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_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 R_028A00_PA_SU_POINT_SIZE                                       0x028A00
 #define   S_028A00_HEIGHT(x)                                          (((unsigned)(x) & 0xFFFF) << 0)
 #define   G_028A00_HEIGHT(x)                                          (((x) >> 0) & 0xFFFF)