Module: Mesa
Branch: master
Commit: e25daef16f1ac3436e03f6ab9a3f7d65015fe5da
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e25daef16f1ac3436e03f6ab9a3f7d65015fe5da

Author: Boris Brezillon <[email protected]>
Date:   Tue Mar 30 09:39:26 2021 +0200

panfrost: Skip disabled RTs when selecting a RT for transaction elimination

If the render target is disabled, the CRC won't be updated, and the
slice state should stay unchanged.

Fixes 
dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_stencil_index8
and 
dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16.

Signed-off-by: Boris Brezillon <[email protected]>
Reviewed-by: Alyssa Rosenzweig <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9907>

---

 src/gallium/drivers/panfrost/ci/deqp-panfrost-g52-flakes.txt | 2 --
 src/gallium/drivers/panfrost/ci/deqp-panfrost-t860-fails.txt | 1 -
 src/gallium/drivers/panfrost/pan_mfbd.c                      | 3 ++-
 3 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52-flakes.txt 
b/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52-flakes.txt
index 3e23eeb157e..3b6dd214914 100644
--- a/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52-flakes.txt
+++ b/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52-flakes.txt
@@ -1,5 +1,3 @@
-dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_stencil_index8
-dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16
 
dEQP-GLES2.functional.texture.vertex.cube.filtering.nearest_mipmap_linear_linear_clamp
 
dEQP-GLES2.functional.texture.vertex.cube.filtering.nearest_mipmap_linear_linear_mirror
 
dEQP-GLES2.functional.texture.vertex.cube.filtering.nearest_mipmap_linear_linear_repeat
diff --git a/src/gallium/drivers/panfrost/ci/deqp-panfrost-t860-fails.txt 
b/src/gallium/drivers/panfrost/ci/deqp-panfrost-t860-fails.txt
index db8b8c0b7a4..3b80daa68e0 100644
--- a/src/gallium/drivers/panfrost/ci/deqp-panfrost-t860-fails.txt
+++ b/src/gallium/drivers/panfrost/ci/deqp-panfrost-t860-fails.txt
@@ -1,4 +1,3 @@
-dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_stencil_index8,Fail
 dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag,Fail
 dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag_reverse_dst_x,Fail
 dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag_reverse_dst_y,Fail
diff --git a/src/gallium/drivers/panfrost/pan_mfbd.c 
b/src/gallium/drivers/panfrost/pan_mfbd.c
index 8658b826685..d5278417c6b 100644
--- a/src/gallium/drivers/panfrost/pan_mfbd.c
+++ b/src/gallium/drivers/panfrost/pan_mfbd.c
@@ -249,7 +249,8 @@ panfrost_mfbd_zs_crc_ext_set_bufs(struct panfrost_batch 
*batch,
         struct panfrost_device *dev = pan_device(batch->ctx->base.screen);
 
         /* Checksumming only works with a single render target */
-        if (batch->key.nr_cbufs == 1 && batch->key.cbufs[0]) {
+        if (batch->key.nr_cbufs == 1 && batch->key.cbufs[0] &&
+            ((batch->clear | batch->draws) & PIPE_CLEAR_COLOR0)) {
                 struct pipe_surface *c_surf = batch->key.cbufs[0];
                 struct panfrost_resource *rsrc = pan_resource(c_surf->texture);
 

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to