r600g: only emit SX_SURFACE_SYNC on r700 if there's CS checker support
authorMarek Olšák <maraeo@gmail.com>
Wed, 7 Mar 2012 12:48:38 +0000 (13:48 +0100)
committerMarek Olšák <maraeo@gmail.com>
Wed, 7 Mar 2012 12:52:58 +0000 (13:52 +0100)
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47039

src/gallium/drivers/r600/r600_state.c

index 5955667..3e9d4aa 100644 (file)
@@ -2125,7 +2125,7 @@ void r600_init_atom_start_cs(struct r600_context *rctx)
        r600_store_context_reg(cb, R_0288A4_SQ_PGM_RESOURCES_FS, 0);
        r600_store_context_reg(cb, R_0288DC_SQ_PGM_CF_OFFSET_FS, 0);
 
-       if (rctx->chip_class == R700)
+       if (rctx->chip_class == R700 && rctx->screen->info.r600_has_streamout)
                r600_store_context_reg(cb, R_028354_SX_SURFACE_SYNC, S_028354_SURFACE_SYNC_MASK(0xf));
        r600_store_context_reg(cb, R_028800_DB_DEPTH_CONTROL, 0);