diff options
author | Luca Barbieri <luca@luca-barbieri.com> | 2010-08-22 11:58:54 +0200 |
---|---|---|
committer | Luca Barbieri <luca@luca-barbieri.com> | 2010-08-22 15:42:16 +0200 |
commit | 9fefab340f59519efc5c5690347a54e437d9407a (patch) | |
tree | ec33eeded660badaab3dd8b367fdec5453aac2e1 /src/gallium/drivers/nvfx/nvfx_state_stipple.c | |
parent | 793e398681ac9ef9da6f6a453a5665bdfd0270e8 (diff) |
nvfx: make stipple setting independent of enable
Diffstat (limited to 'src/gallium/drivers/nvfx/nvfx_state_stipple.c')
-rw-r--r-- | src/gallium/drivers/nvfx/nvfx_state_stipple.c | 21 |
1 files changed, 3 insertions, 18 deletions
diff --git a/src/gallium/drivers/nvfx/nvfx_state_stipple.c b/src/gallium/drivers/nvfx/nvfx_state_stipple.c index 4da968f093..b76e9dd382 100644 --- a/src/gallium/drivers/nvfx/nvfx_state_stipple.c +++ b/src/gallium/drivers/nvfx/nvfx_state_stipple.c @@ -4,23 +4,8 @@ void nvfx_state_stipple_validate(struct nvfx_context *nvfx) { struct nouveau_channel *chan = nvfx->screen->base.channel; - struct pipe_rasterizer_state *rast = &nvfx->rasterizer->pipe; - if ((rast->poly_stipple_enable == 0 && nvfx->state.stipple_enabled == 0)) - return; - - if (rast->poly_stipple_enable) { - unsigned i; - - WAIT_RING(chan, 35); - OUT_RING(chan, RING_3D(NV34TCL_POLYGON_STIPPLE_ENABLE, 1)); - OUT_RING(chan, 1); - OUT_RING(chan, RING_3D(NV34TCL_POLYGON_STIPPLE_PATTERN(0), 32)); - for (i = 0; i < 32; i++) - OUT_RING(chan, nvfx->stipple[i]); - } else { - WAIT_RING(chan, 2); - OUT_RING(chan, RING_3D(NV34TCL_POLYGON_STIPPLE_ENABLE, 1)); - OUT_RING(chan, 0); - } + WAIT_RING(chan, 33); + OUT_RING(chan, RING_3D(NV34TCL_POLYGON_STIPPLE_PATTERN(0), 32)); + OUT_RINGp(chan, nvfx->stipple, 32); } |