r600g: use WAIT_3D_IDLE before using CP DMA

I broke this with 7948ed1250 for r700 at least.
This commit is contained in:
Marek Olšák
2013-07-16 22:48:48 +02:00
parent 0b405f364f
commit 0d7f087483
2 changed files with 2 additions and 0 deletions
@@ -123,6 +123,7 @@ void evergreen_cp_dma_clear_buffer(struct r600_context *rctx,
/* Flush the cache where the resource is bound. */
r600_flag_resource_cache_flush(rctx, dst);
rctx->flags |= R600_CONTEXT_WAIT_3D_IDLE;
while (size) {
unsigned sync = 0;
@@ -636,6 +636,7 @@ void r600_cp_dma_copy_buffer(struct r600_context *rctx,
/* Flush the caches where the resources are bound. */
r600_flag_resource_cache_flush(rctx, src);
r600_flag_resource_cache_flush(rctx, dst);
rctx->flags |= R600_CONTEXT_WAIT_3D_IDLE;
/* There are differences between R700 and EG in CP DMA,
* but we only use the common bits here. */