Mesa (master): freedreno: Blit all array levels when uncompressing UBWC.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Feb 4 23:35:04 UTC 2020


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

Author: Eric Anholt <eric at anholt.net>
Date:   Thu Dec 12 14:20:49 2019 -0800

freedreno: Blit all array levels when uncompressing UBWC.

Fixes regressions in GLES CTS's format_reintepret once we enable UBWC
with mipmaps.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3059>

---

 src/gallium/drivers/freedreno/freedreno_resource.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/freedreno/freedreno_resource.c b/src/gallium/drivers/freedreno/freedreno_resource.c
index b92663c90a3..748664384eb 100644
--- a/src/gallium/drivers/freedreno/freedreno_resource.c
+++ b/src/gallium/drivers/freedreno/freedreno_resource.c
@@ -265,7 +265,10 @@ fd_try_shadow_resource(struct fd_context *ctx, struct fd_resource *rsc,
 		set_box(box.height, u_minify(prsc->height0, l));
 		set_box(box.depth,  u_minify(prsc->depth0, l));
 
-		do_blit(ctx, &blit, fallback);
+		for (int i = 0; i < prsc->array_size; i++) {
+			set_box(box.z, i);
+			do_blit(ctx, &blit, fallback);
+		}
 	}
 
 	/* deal w/ current level specially, since we might need to split



More information about the mesa-commit mailing list