summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2016-08-27 21:57:51 -0700
committerJason Ekstrand <[email protected]>2016-09-12 19:42:57 -0700
commit2fc9c7e3d9b2bcd65c9e192bc11d3c87835f85dc (patch)
tree1f064d488bbe244eb91000e0094ba704f5548b5d /src
parent2dba5489ae82161ebbf1d6db3e63b27b45c17eae (diff)
intel/blorp: Take a destination swizzle in blorp_blit
Signed-off-by: Jason Ekstrand <[email protected]> Reviewed-by: Topi Pohjolainen <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/intel/blorp/blorp.h2
-rw-r--r--src/intel/blorp/blorp_blit.c3
-rw-r--r--src/mesa/drivers/dri/i965/brw_blorp.c1
3 files changed, 4 insertions, 2 deletions
diff --git a/src/intel/blorp/blorp.h b/src/intel/blorp/blorp.h
index 173d4faf5f2..d562b17c268 100644
--- a/src/intel/blorp/blorp.h
+++ b/src/intel/blorp/blorp.h
@@ -101,7 +101,7 @@ blorp_blit(struct blorp_batch *batch,
enum isl_format src_format, struct isl_swizzle src_swizzle,
const struct blorp_surf *dst_surf,
unsigned dst_level, unsigned dst_layer,
- enum isl_format dst_format,
+ enum isl_format dst_format, struct isl_swizzle dst_swizzle,
float src_x0, float src_y0,
float src_x1, float src_y1,
float dst_x0, float dst_y0,
diff --git a/src/intel/blorp/blorp_blit.c b/src/intel/blorp/blorp_blit.c
index 5bdf05cb0cc..c6fba669cee 100644
--- a/src/intel/blorp/blorp_blit.c
+++ b/src/intel/blorp/blorp_blit.c
@@ -1363,7 +1363,7 @@ blorp_blit(struct blorp_batch *batch,
enum isl_format src_format, struct isl_swizzle src_swizzle,
const struct blorp_surf *dst_surf,
unsigned dst_level, unsigned dst_layer,
- enum isl_format dst_format,
+ enum isl_format dst_format, struct isl_swizzle dst_swizzle,
float src_x0, float src_y0,
float src_x1, float src_y1,
float dst_x0, float dst_y0,
@@ -1618,6 +1618,7 @@ blorp_blit(struct blorp_batch *batch,
brw_blorp_get_blit_kernel(batch->blorp, &params, &wm_prog_key);
params.src.view.swizzle = src_swizzle;
+ params.dst.view.swizzle = dst_swizzle;
batch->blorp->exec(batch, &params);
}
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.c b/src/mesa/drivers/dri/i965/brw_blorp.c
index b6fe5d17111..cc17c98d498 100644
--- a/src/mesa/drivers/dri/i965/brw_blorp.c
+++ b/src/mesa/drivers/dri/i965/brw_blorp.c
@@ -362,6 +362,7 @@ brw_blorp_blit_miptrees(struct brw_context *brw,
brw_blorp_to_isl_format(brw, src_format, false), src_isl_swizzle,
&dst_surf, dst_level, dst_layer,
brw_blorp_to_isl_format(brw, dst_format, true),
+ ISL_SWIZZLE_IDENTITY,
src_x0, src_y0, src_x1, src_y1,
dst_x0, dst_y0, dst_x1, dst_y1,
filter, mirror_x, mirror_y);