[Mesa-dev] [PATCH 10/10] intel/blorp: Use linear formats for CCS_E clear colors in copies

Jason Ekstrand jason at jlekstrand.net
Fri May 11 23:48:26 UTC 2018


It's clear that the original code meant to do this and there is even a
10-line comment explaining why.  Originally, we had a simple function
for packing the clear colors which was unaware of sRGB.  However, in
a6b66a7b26ae1, when we started using ISL to do the packing, the wrong
format was used.

Fixes: a6b66a7b26 "intel/blorp: Use ISL instead of bitcast_color..."
---
 src/intel/blorp/blorp_blit.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/intel/blorp/blorp_blit.c b/src/intel/blorp/blorp_blit.c
index e825862..26bf442 100644
--- a/src/intel/blorp/blorp_blit.c
+++ b/src/intel/blorp/blorp_blit.c
@@ -2562,7 +2562,7 @@ blorp_copy(struct blorp_batch *batch,
                                               params.src.view.format));
       uint32_t packed[4];
       isl_color_value_pack(&params.src.clear_color,
-                           params.src.surf.format, packed);
+                           linear_src_format, packed);
       isl_color_value_unpack(&params.src.clear_color,
                              params.src.view.format, packed);
    }
@@ -2576,7 +2576,7 @@ blorp_copy(struct blorp_batch *batch,
                                               params.dst.view.format));
       uint32_t packed[4];
       isl_color_value_pack(&params.dst.clear_color,
-                           params.dst.surf.format, packed);
+                           linear_dst_format, packed);
       isl_color_value_unpack(&params.dst.clear_color,
                              params.dst.view.format, packed);
    }
-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list