diff options
author | Keith Whitwell <keith@tungstengraphics.com> | 2005-01-21 12:14:15 +0000 |
---|---|---|
committer | Keith Whitwell <keith@tungstengraphics.com> | 2005-01-21 12:14:15 +0000 |
commit | 2f039483ef05569d2d1f1543d69fb395dc80b84a (patch) | |
tree | 93f6153e75f2fbbbe56be6c88ef8eebe26db3cf6 | |
parent | b00ab1e43165e38498a24cd373a67c77e9b30a51 (diff) |
Fix pageflipping after recent changes.
-rw-r--r-- | src/mesa/drivers/dri/unichrome/via_ioctl.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/unichrome/via_ioctl.c b/src/mesa/drivers/dri/unichrome/via_ioctl.c index fe27da17f7..0c50434273 100644 --- a/src/mesa/drivers/dri/unichrome/via_ioctl.c +++ b/src/mesa/drivers/dri/unichrome/via_ioctl.c @@ -445,15 +445,14 @@ void viaPageFlip(const __DRIdrawablePrivate *dPriv) viaContextPtr vmesa = (viaContextPtr)dPriv->driContextPriv->driverPrivate; viaBuffer buffer_tmp; - viaWaitIdleVBlank(dPriv, vmesa); - + VIA_FLUSH_DMA(vmesa); LOCK_HARDWARE(vmesa); { RING_VARS; if (!vmesa->nDoneFirstFlip) { - vmesa->nDoneFirstFlip = GL_FALSE; /* XXX: FIXME LATER!!! */ + vmesa->nDoneFirstFlip = GL_TRUE; /* XXX: FIXME LATER!!! */ BEGIN_RING(4); OUT_RING(HALCYON_HEADER2); OUT_RING(0x00fe0000); @@ -474,6 +473,10 @@ void viaPageFlip(const __DRIdrawablePrivate *dPriv) viaFlushDmaLocked(vmesa, VIA_NO_CLIPRECTS); UNLOCK_HARDWARE(vmesa); + + viaWaitIdleVBlank(dPriv, vmesa); + + vmesa->get_ust( &vmesa->swap_ust ); /* KW: FIXME: When buffers are freed, could free frontbuffer by |