diff options
author | Brian <brian.paul@tungstengraphics.com> | 2008-01-11 16:08:53 -0700 |
---|---|---|
committer | Brian <brian.paul@tungstengraphics.com> | 2008-01-11 16:08:53 -0700 |
commit | 8dd678208e4dcd90e07dc271d11d73d87465e0fd (patch) | |
tree | 6d7b4240f016f85674aca918bf0d3ca3afcd606a /src/mesa/pipe/cell/ppu/cell_surface.c | |
parent | 08c2571fb48d41731c81cc402acabf709523c831 (diff) |
Cell: basic batch buffer working
Diffstat (limited to 'src/mesa/pipe/cell/ppu/cell_surface.c')
-rw-r--r-- | src/mesa/pipe/cell/ppu/cell_surface.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mesa/pipe/cell/ppu/cell_surface.c b/src/mesa/pipe/cell/ppu/cell_surface.c index 03dd41583f..ea1c2bd644 100644 --- a/src/mesa/pipe/cell/ppu/cell_surface.c +++ b/src/mesa/pipe/cell/ppu/cell_surface.c @@ -37,6 +37,7 @@ #include "pipe/p_util.h" #include "pipe/cell/common.h" #include "cell_context.h" +#include "cell_batch.h" #include "cell_surface.h" #include "cell_spu.h" @@ -59,6 +60,7 @@ cell_clear_surface(struct pipe_context *pipe, struct pipe_surface *ps, surfIndex = 0; } +#if 0 for (i = 0; i < cell->num_spus; i++) { #if 1 uint clr = clearValue; @@ -80,6 +82,16 @@ cell_clear_surface(struct pipe_context *pipe, struct pipe_surface *ps, cell_global.command[i].clear.surface = surfIndex; send_mbox_message(cell_global.spe_contexts[i], CELL_CMD_CLEAR_SURFACE); } +#else + { + struct cell_command_clear_surface *clr + = (struct cell_command_clear_surface *) + cell_batch_alloc(cell, sizeof(*clr)); + clr->opcode = CELL_CMD_CLEAR_SURFACE; + clr->surface = surfIndex; + clr->value = clearValue; + } +#endif /* XXX temporary */ cell_flush(&cell->pipe, 0x0); |