diff options
author | Christoph Bumiller <[email protected]> | 2011-03-17 17:07:30 +0100 |
---|---|---|
committer | Christoph Bumiller <[email protected]> | 2011-03-19 14:45:55 +0100 |
commit | 83ff3809f1bf081964dc63ae48dc91f031e0a859 (patch) | |
tree | 8be666382f51285ee60d83cdb7acfbecd4ca2198 /src/gallium/drivers/nvc0/nvc0_context.c | |
parent | 9d2ef284bb3ec419b8f53f56bff7f6dd5492ee4c (diff) |
nv50,nvc0: implement texture barrier
Diffstat (limited to 'src/gallium/drivers/nvc0/nvc0_context.c')
-rw-r--r-- | src/gallium/drivers/nvc0/nvc0_context.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/gallium/drivers/nvc0/nvc0_context.c b/src/gallium/drivers/nvc0/nvc0_context.c index 5d2168e600b..2f2a3da7c44 100644 --- a/src/gallium/drivers/nvc0/nvc0_context.c +++ b/src/gallium/drivers/nvc0/nvc0_context.c @@ -47,6 +47,15 @@ nvc0_flush(struct pipe_context *pipe, } static void +nvc0_texture_barrier(struct pipe_context *pipe) +{ + struct nouveau_channel *chan = nvc0_context(pipe)->screen->base.channel; + + IMMED_RING(chan, RING_3D(SERIALIZE), 0); + IMMED_RING(chan, RING_3D(TEX_CACHE_CTL), 0); +} + +static void nvc0_context_unreference_resources(struct nvc0_context *nvc0) { unsigned s, i; @@ -128,6 +137,7 @@ nvc0_create(struct pipe_screen *pscreen, void *priv) pipe->clear = nvc0_clear; pipe->flush = nvc0_flush; + pipe->texture_barrier = nvc0_texture_barrier; if (!screen->cur_ctx) screen->cur_ctx = nvc0; |