diff options
Diffstat (limited to 'src/gallium/drivers/radeonsi')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_pipe.c | 7 | ||||
-rw-r--r-- | src/gallium/drivers/radeonsi/si_state.c | 3 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c index 78e01360b8a..0c85fdee3c7 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.c +++ b/src/gallium/drivers/radeonsi/si_pipe.c @@ -750,6 +750,7 @@ static bool si_init_gs_info(struct si_screen *sscreen) case CHIP_POLARIS11: case CHIP_POLARIS12: case CHIP_VEGA10: + case CHIP_RAVEN: sscreen->gs_table_depth = 32; return true; default: @@ -886,7 +887,8 @@ struct pipe_screen *radeonsi_screen_create(struct radeon_winsys *ws) sscreen->has_ds_bpermute = sscreen->b.chip_class >= VI; sscreen->has_msaa_sample_loc_bug = (sscreen->b.family >= CHIP_POLARIS10 && sscreen->b.family <= CHIP_POLARIS12) || - sscreen->b.family == CHIP_VEGA10; + sscreen->b.family == CHIP_VEGA10 || + sscreen->b.family == CHIP_RAVEN; sscreen->b.has_cp_dma = true; sscreen->b.has_streamout = true; @@ -900,7 +902,8 @@ struct pipe_screen *radeonsi_screen_create(struct radeon_winsys *ws) sscreen->b.rbplus_allowed = !(sscreen->b.debug_flags & DBG_NO_RB_PLUS) && - sscreen->b.family == CHIP_STONEY; + (sscreen->b.family == CHIP_STONEY || + sscreen->b.family == CHIP_RAVEN); } (void) mtx_init(&sscreen->shader_parts_mutex, mtx_plain); diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 130ffa0e23b..363f32170a9 100644 --- a/src/gallium/drivers/radeonsi/si_state.c +++ b/src/gallium/drivers/radeonsi/si_state.c @@ -4538,6 +4538,9 @@ static void si_init_config(struct si_context *sctx) case CHIP_VEGA10: pc_lines = 4096; break; + case CHIP_RAVEN: + pc_lines = 1024; + break; default: assert(0); } |