Mesa (master): panfrost: Fix decoding of tiled 3D textures

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Feb 4 15:06:13 UTC 2020


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

Author: Tomeu Vizoso <tomeu.vizoso at collabora.com>
Date:   Tue Feb  4 08:29:50 2020 +0100

panfrost: Fix decoding of tiled 3D textures

>From decoding cmd streams generated by the blob, the pointers in the
payload don't seem to include those that refer to different depth levels
when the texture is in tiled format.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso at collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3692>

---

 src/panfrost/pandecode/decode.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/panfrost/pandecode/decode.c b/src/panfrost/pandecode/decode.c
index 3e832b6e3db..32a6ba42a7a 100644
--- a/src/panfrost/pandecode/decode.c
+++ b/src/panfrost/pandecode/decode.c
@@ -2030,8 +2030,8 @@ pandecode_texture(mali_ptr u,
         /* Miptree for each face */
         if (f.type == MALI_TEX_CUBE)
                 bitmap_count *= 6;
-        else if (f.type == MALI_TEX_3D)
-                bitmap_count *= t->depth;
+        else if (f.type == MALI_TEX_3D && f.layout == MALI_TEXTURE_LINEAR)
+                bitmap_count *= (t->depth + 1);
 
         /* Array of textures */
         bitmap_count *= (t->array_size + 1);



More information about the mesa-commit mailing list