[Mesa-dev] [PATCH 03/33] intel/blorp: Take a destination swizzle in blorp_blit

Jason Ekstrand jason at jlekstrand.net
Wed Aug 31 21:22:22 UTC 2016


---
 src/intel/blorp/blorp.h               | 2 +-
 src/intel/blorp/blorp_blit.c          | 3 ++-
 src/mesa/drivers/dri/i965/brw_blorp.c | 1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/intel/blorp/blorp.h b/src/intel/blorp/blorp.h
index c06e1cb..c1e93fd 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 6dee170..e59b81e 100644
--- a/src/intel/blorp/blorp_blit.c
+++ b/src/intel/blorp/blorp_blit.c
@@ -1366,7 +1366,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,
@@ -1621,6 +1621,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 44d2570..5539c9c 100644
--- a/src/mesa/drivers/dri/i965/brw_blorp.c
+++ b/src/mesa/drivers/dri/i965/brw_blorp.c
@@ -364,6 +364,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);
-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list