diff options
author | Marek Olšák <[email protected]> | 2011-03-08 00:57:48 +0100 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2011-03-11 21:39:31 +0100 |
commit | 7e02303497237cde958c28608477d0c355a8038b (patch) | |
tree | 6c9355b9016fae7c30440feaf9a68bb4ba03ad17 /src/gallium/drivers/nvc0/nvc0_context.c | |
parent | e968975cb57eb854769292f7c6ff773c64a386c3 (diff) |
gallium: remove flags from the flush function
The drivers have been changed so that they behave as if all of the flags
were set. This is already implicit in most hardware drivers and required
for multiple contexts.
Some state trackers were also abusing the PIPE_FLUSH_RENDER_CACHE flag
to decide whether flush_frontbuffer should be called.
New flag ST_FLUSH_FRONT has been added to st_api.h as a replacement.
Diffstat (limited to 'src/gallium/drivers/nvc0/nvc0_context.c')
-rw-r--r-- | src/gallium/drivers/nvc0/nvc0_context.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/gallium/drivers/nvc0/nvc0_context.c b/src/gallium/drivers/nvc0/nvc0_context.c index d6de979b132..881d102dab0 100644 --- a/src/gallium/drivers/nvc0/nvc0_context.c +++ b/src/gallium/drivers/nvc0/nvc0_context.c @@ -30,29 +30,30 @@ #include "nouveau/nouveau_reloc.h" static void -nvc0_flush(struct pipe_context *pipe, unsigned flags, +nvc0_flush(struct pipe_context *pipe, struct pipe_fence_handle **fence) { struct nvc0_context *nvc0 = nvc0_context(pipe); struct nouveau_channel *chan = nvc0->screen->base.channel; - if (flags & PIPE_FLUSH_TEXTURE_CACHE) { + /* XXX This flag wasn't set by the state tracker anyway. */ + /*if (flags & PIPE_FLUSH_TEXTURE_CACHE) { BEGIN_RING(chan, RING_3D(SERIALIZE), 1); OUT_RING (chan, 0); BEGIN_RING(chan, RING_3D(TEX_CACHE_CTL), 1); OUT_RING (chan, 0x00); - } else - if ((flags & PIPE_FLUSH_RENDER_CACHE) && !(flags & PIPE_FLUSH_FRAME)) { + } else*/ + /* XXX FLUSH_FRAME is now implicit. */ + /*if ((flags & PIPE_FLUSH_RENDER_CACHE) && !(flags & PIPE_FLUSH_FRAME)) { BEGIN_RING(chan, RING_3D(SERIALIZE), 1); OUT_RING (chan, 0); - } + }*/ if (fence) nouveau_fence_ref(nvc0->screen->base.fence.current, (struct nouveau_fence **)fence); - if (flags & (PIPE_FLUSH_SWAPBUFFERS | PIPE_FLUSH_FRAME)) - FIRE_RING(chan); + FIRE_RING(chan); } static void |