diff options
author | Brian Paul <[email protected]> | 2008-10-15 14:39:16 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2008-10-15 14:39:16 -0600 |
commit | ec7d6c656178babdf143faa242f7a3df9d0bc22c (patch) | |
tree | 9983e7c509ca0cf85341a3699c38fb578b9ff586 /src/gallium/drivers/cell/ppu | |
parent | 8bf105997748ba268eb65b39461e379fe6642c5a (diff) |
cell: send rasterizer state to SPUs in proper way, remove front_winding hack
Diffstat (limited to 'src/gallium/drivers/cell/ppu')
-rw-r--r-- | src/gallium/drivers/cell/ppu/cell_state_emit.c | 7 | ||||
-rw-r--r-- | src/gallium/drivers/cell/ppu/cell_vbuf.c | 1 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/gallium/drivers/cell/ppu/cell_state_emit.c b/src/gallium/drivers/cell/ppu/cell_state_emit.c index d2427584ba4..e6387382f20 100644 --- a/src/gallium/drivers/cell/ppu/cell_state_emit.c +++ b/src/gallium/drivers/cell/ppu/cell_state_emit.c @@ -147,6 +147,13 @@ cell_emit_state(struct cell_context *cell) #endif } + if (cell->dirty & (CELL_NEW_RASTERIZER)) { + struct cell_command_rasterizer *rast = + cell_batch_alloc(cell, sizeof(*rast)); + rast->opcode = CELL_CMD_STATE_RASTERIZER; + rast->rasterizer = *cell->rasterizer; + } + if (cell->dirty & (CELL_NEW_FS)) { /* Send new fragment program to SPUs */ struct cell_command_fragment_program *fp diff --git a/src/gallium/drivers/cell/ppu/cell_vbuf.c b/src/gallium/drivers/cell/ppu/cell_vbuf.c index 578ddf62dcb..aa63435b934 100644 --- a/src/gallium/drivers/cell/ppu/cell_vbuf.c +++ b/src/gallium/drivers/cell/ppu/cell_vbuf.c @@ -214,7 +214,6 @@ cell_vbuf_draw(struct vbuf_render *vbr, render->opcode = CELL_CMD_RENDER; render->prim_type = cvbr->prim; - render->front_winding = cell->rasterizer->front_winding; render->num_indexes = nr_indices; render->min_index = min_index; |