From 3a497db7862dc091a8582d8ea3ebfd7fe0f16b58 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Thu, 18 Sep 2008 10:22:23 +1000 Subject: radeon: fixup buffer and cs bits --- linux-core/radeon_buffer.c | 3 --- shared-core/radeon_cs.c | 3 ++- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/linux-core/radeon_buffer.c b/linux-core/radeon_buffer.c index 5b2ba42f..fe2aa6fd 100644 --- a/linux-core/radeon_buffer.c +++ b/linux-core/radeon_buffer.c @@ -407,9 +407,6 @@ int radeon_move(struct drm_buffer_object * bo, if (new_mem->mem_type == DRM_BO_MEM_VRAM) { if (radeon_move_vram(bo, evict, no_wait, new_mem)) goto fallback; - } else if (new_mem->mem_type == DRM_BO_MEM_LOCAL){ - if (radeon_move_flip(bo, evict, no_wait, new_mem)) - goto fallback; } else { if (radeon_move_flip(bo, evict, no_wait, new_mem)) goto fallback; diff --git a/shared-core/radeon_cs.c b/shared-core/radeon_cs.c index b0c4abe8..a00ec21b 100644 --- a/shared-core/radeon_cs.c +++ b/shared-core/radeon_cs.c @@ -368,13 +368,14 @@ void r300_cs_id_emit(struct drm_device *dev, uint32_t *id) /* ISYNC_CNTL should not have CPSCRACTH bit set */ *id = radeon_cs_id_get(dev_priv); /* emit id in SCRATCH6 */ - BEGIN_RING(6); + BEGIN_RING(8); OUT_RING(CP_PACKET0(R300_CP_RESYNC_ADDR, 0)); OUT_RING(6); OUT_RING(CP_PACKET0(R300_CP_RESYNC_DATA, 0)); OUT_RING(*id); OUT_RING(CP_PACKET0(R300_RB3D_DSTCACHE_CTLSTAT, 0)); OUT_RING(R300_RB3D_DC_FINISH); + RADEON_WAIT_UNTIL_3D_IDLE(); ADVANCE_RING(); } -- cgit v1.2.3