summaryrefslogtreecommitdiff
path: root/shared-core
diff options
context:
space:
mode:
authorDave Airlie <airlied@linux.ie>2008-09-18 10:22:23 +1000
committerDave Airlie <airlied@linux.ie>2008-09-18 10:22:23 +1000
commit3a497db7862dc091a8582d8ea3ebfd7fe0f16b58 (patch)
tree17a4f301e4b23f5286e695c70cef15391eb37f9b /shared-core
parentf426f458f7e766cd47bb30736004ccfc9209f27f (diff)
radeon: fixup buffer and cs bits
Diffstat (limited to 'shared-core')
-rw-r--r--shared-core/radeon_cs.c3
1 files changed, 2 insertions, 1 deletions
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();
}