diff options
author | Ian Romanick <idr@us.ibm.com> | 2008-02-20 14:32:25 -0800 |
---|---|---|
committer | Ian Romanick <idr@us.ibm.com> | 2008-02-21 10:43:45 -0800 |
commit | 7c74037852a484a8a50e8bc540b954a624de4d33 (patch) | |
tree | 55d25944f33880da3a26eba7687afce7c38878e6 /src/gallium/drivers/cell/spu/spu_main.c | |
parent | 8be9bc08e1da31619f1b1c49aa6280d44f94c442 (diff) |
Cell: Initial pass at unified data cache
Diffstat (limited to 'src/gallium/drivers/cell/spu/spu_main.c')
-rw-r--r-- | src/gallium/drivers/cell/spu/spu_main.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/drivers/cell/spu/spu_main.c b/src/gallium/drivers/cell/spu/spu_main.c index dbc3705c24..1136dba62d 100644 --- a/src/gallium/drivers/cell/spu/spu_main.c +++ b/src/gallium/drivers/cell/spu/spu_main.c @@ -462,6 +462,14 @@ cmd_batch(uint opcode) pos += (1 + ROUNDUP8(sizeof(struct cell_attribute_fetch_code)) / 8); break; } + case CELL_CMD_FLUSH_BUFFER_RANGE: { + struct cell_buffer_range *br = (struct cell_buffer_range *) + &buffer[pos+1]; + + spu_dcache_mark_dirty((unsigned) br->base, br->size); + pos += (1 + ROUNDUP8(sizeof(struct cell_buffer_range)) / 8); + break; + } default: printf("SPU %u: bad opcode: 0x%llx\n", spu.init.id, buffer[pos]); ASSERT(0); |