From 3fe055ec9218a8745d9a53f75f4abd4760fcce28 Mon Sep 17 00:00:00 2001 From: Brian Date: Wed, 7 Nov 2007 17:16:47 -0700 Subject: Remove winsys->wait_idle(), subsumed by pipe->flush(). Connect intel_i915_batch_finish() into i915_winsys, just like intel_i915_batch_flush(). Call i915_winsys->batch_finish() in response to pipe->flush(PIPE_FLUSH_WAIT). Now all the batchbuffer/fence code is in one place and a little cleaner. --- src/mesa/pipe/i915simple/i915_flush.c | 2 +- src/mesa/pipe/i915simple/i915_winsys.h | 1 + src/mesa/pipe/p_winsys.h | 3 --- src/mesa/pipe/xlib/xm_winsys.c | 6 ------ 4 files changed, 2 insertions(+), 10 deletions(-) (limited to 'src/mesa/pipe') diff --git a/src/mesa/pipe/i915simple/i915_flush.c b/src/mesa/pipe/i915simple/i915_flush.c index 5a80ed5e2f5..51cf9960aad 100644 --- a/src/mesa/pipe/i915simple/i915_flush.c +++ b/src/mesa/pipe/i915simple/i915_flush.c @@ -69,7 +69,7 @@ static void i915_flush( struct pipe_context *pipe, FLUSH_BATCH(); if (flags & PIPE_FLUSH_WAIT) { - i915->pipe.winsys->wait_idle(i915->pipe.winsys, i915->pipe.private); + i915->winsys->batch_finish(i915->winsys); } } diff --git a/src/mesa/pipe/i915simple/i915_winsys.h b/src/mesa/pipe/i915simple/i915_winsys.h index cbb851a9323..2c0f335d346 100644 --- a/src/mesa/pipe/i915simple/i915_winsys.h +++ b/src/mesa/pipe/i915simple/i915_winsys.h @@ -98,6 +98,7 @@ struct i915_winsys { unsigned delta ); void (*batch_flush)( struct i915_winsys *sws ); + void (*batch_finish)( struct i915_winsys *sws ); }; #define I915_BUFFER_ACCESS_WRITE 0x1 diff --git a/src/mesa/pipe/p_winsys.h b/src/mesa/pipe/p_winsys.h index ee10e305599..41d522e11ea 100644 --- a/src/mesa/pipe/p_winsys.h +++ b/src/mesa/pipe/p_winsys.h @@ -63,9 +63,6 @@ struct pipe_winsys /** Returns name of this winsys interface */ const char *(*get_name)( struct pipe_winsys *sws ); - /** Wait for any buffered rendering to finish */ - void (*wait_idle)( struct pipe_winsys *sws, void *context_private ); - /** * Do any special operations to ensure frontbuffer contents are * displayed, eg copy fake frontbuffer. diff --git a/src/mesa/pipe/xlib/xm_winsys.c b/src/mesa/pipe/xlib/xm_winsys.c index ea6b06a93c7..df90a807d48 100644 --- a/src/mesa/pipe/xlib/xm_winsys.c +++ b/src/mesa/pipe/xlib/xm_winsys.c @@ -167,11 +167,6 @@ xm_flush_frontbuffer(struct pipe_winsys *pws, */ } -static void -xm_wait_idle(struct pipe_winsys *pws, void *context_private) -{ - /* no-op */ -} static void xm_printf(struct pipe_winsys *pws, const char *fmtString, ...) @@ -343,7 +338,6 @@ xmesa_get_pipe_winsys(void) ws->surface_release = xm_surface_release; ws->flush_frontbuffer = xm_flush_frontbuffer; - ws->wait_idle = xm_wait_idle; ws->printf = xm_printf; ws->get_name = xm_get_name; } -- cgit v1.2.3