Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
static unsigned get_tc_l2_flag(struct si_context *sctx, enum r600_coherency coher)
{
- return coher == R600_COHERENCY_SHADER &&
- sctx->b.chip_class >= CIK ? CP_DMA_USE_L2 : 0;
+ if ((sctx->b.chip_class >= GFX9 && coher == R600_COHERENCY_CB_META) ||
+ (sctx->b.chip_class >= CIK && coher == R600_COHERENCY_SHADER))
+ return CP_DMA_USE_L2;
+
+ return 0;
}
static void si_cp_dma_prepare(struct si_context *sctx, struct pipe_resource *dst,