diff options
author | Christian Gmeiner <christian.gmeiner@gmail.com> | 2014-01-28 21:05:03 +0000 |
---|---|---|
committer | Christian Gmeiner <christian.gmeiner@gmail.com> | 2014-02-08 09:24:29 +0000 |
commit | 61980e0757156dd3290b11453729ff7e88cb9fae (patch) | |
tree | ecf186f3a7b1aca79f741f5f368d040888f94382 /src | |
parent | 3e5bb71a47669a1f725713188c341feea1b3374e (diff) |
rs: make it possible to define if dest/source is multi pipe
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/etnaviv/etna_rs.c | 8 | ||||
-rw-r--r-- | src/etnaviv/etna_rs.h | 2 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/etnaviv/etna_rs.c b/src/etnaviv/etna_rs.c index a03662a..a686df7 100644 --- a/src/etnaviv/etna_rs.c +++ b/src/etnaviv/etna_rs.c @@ -69,11 +69,15 @@ void etna_compile_rs_state(struct etna_ctx *restrict ctx, struct compiled_rs_sta SET_STATE(RS_SOURCE_ADDR, rs->source_addr); SET_STATE(RS_PIPE_SOURCE_ADDR[0], rs->source_addr); SET_STATE(RS_PIPE_SOURCE_ADDR[1], rs->source_addr); /* TODO */ - SET_STATE(RS_SOURCE_STRIDE, (rs->source_stride << source_stride_shift) | ((rs->source_tiling&2)?VIVS_RS_SOURCE_STRIDE_TILING:0)); + SET_STATE(RS_SOURCE_STRIDE, (rs->source_stride << source_stride_shift) | + ((rs->source_tiling&2)?VIVS_RS_SOURCE_STRIDE_TILING:0) | + ((rs->source_multi)?VIVS_RS_SOURCE_STRIDE_MULTI:0)); SET_STATE(RS_DEST_ADDR, rs->dest_addr); SET_STATE(RS_PIPE_DEST_ADDR[0], rs->dest_addr); SET_STATE(RS_PIPE_DEST_ADDR[1], rs->dest_addr); /* TODO */ - SET_STATE(RS_DEST_STRIDE, (rs->dest_stride << dest_stride_shift) | ((rs->dest_tiling&2)?VIVS_RS_DEST_STRIDE_TILING:0)); + SET_STATE(RS_DEST_STRIDE, (rs->dest_stride << dest_stride_shift) | + ((rs->dest_tiling&2)?VIVS_RS_DEST_STRIDE_TILING:0) | + ((rs->dest_multi)?VIVS_RS_DEST_STRIDE_MULTI:0)); if (ctx->conn->chip.pixel_pipes == 1) { SET_STATE(RS_WINDOW_SIZE, VIVS_RS_WINDOW_SIZE_WIDTH(rs->width) | VIVS_RS_WINDOW_SIZE_HEIGHT(rs->height)); diff --git a/src/etnaviv/etna_rs.h b/src/etnaviv/etna_rs.h index b660a10..403823f 100644 --- a/src/etnaviv/etna_rs.h +++ b/src/etnaviv/etna_rs.h @@ -29,6 +29,8 @@ struct rs_state { uint8_t downsample_x:1; // Downsample in x direction uint8_t downsample_y:1; // Downsample in y direction + uint8_t source_multi:1; + uint8_t dest_multi:1; uint8_t source_format; // RS_FORMAT_XXX uint8_t source_tiling; // ETNA_LAYOUT_XXX |