[Mesa-dev] [PATCH 5/8] panfrost: Decode array textures
Alyssa Rosenzweig
alyssa.rosenzweig at collabora.com
Fri Jun 14 23:37:13 UTC 2019
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
---
src/gallium/drivers/panfrost/include/panfrost-job.h | 3 +--
src/gallium/drivers/panfrost/pandecode/decode.c | 6 ++++--
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/src/gallium/drivers/panfrost/include/panfrost-job.h b/src/gallium/drivers/panfrost/include/panfrost-job.h
index d8a6decdc60..60f9c8d6227 100644
--- a/src/gallium/drivers/panfrost/include/panfrost-job.h
+++ b/src/gallium/drivers/panfrost/include/panfrost-job.h
@@ -1138,8 +1138,7 @@ struct mali_texture_descriptor {
uint16_t width;
uint16_t height;
uint16_t depth;
-
- uint16_t unknown1;
+ uint16_t array_size;
struct mali_texture_format format;
diff --git a/src/gallium/drivers/panfrost/pandecode/decode.c b/src/gallium/drivers/panfrost/pandecode/decode.c
index fdb820a37f4..b7a2e8cdc93 100644
--- a/src/gallium/drivers/panfrost/pandecode/decode.c
+++ b/src/gallium/drivers/panfrost/pandecode/decode.c
@@ -1507,8 +1507,7 @@ pandecode_replay_vertex_tiler_postfix_pre(const struct mali_vertex_tiler_postfix
pandecode_prop("width = MALI_POSITIVE(%" PRId16 ")", t->width + 1);
pandecode_prop("height = MALI_POSITIVE(%" PRId16 ")", t->height + 1);
pandecode_prop("depth = MALI_POSITIVE(%" PRId16 ")", t->depth + 1);
-
- pandecode_prop("unknown1 = %" PRId16, t->unknown1);
+ pandecode_prop("array_size = MALI_POSITIVE(%" PRId16 ")", t->array_size + 1);
pandecode_prop("unknown3 = %" PRId16, t->unknown3);
pandecode_prop("unknown3A = %" PRId8, t->unknown3A);
pandecode_prop("nr_mipmap_levels = %" PRId8, t->nr_mipmap_levels);
@@ -1558,6 +1557,9 @@ pandecode_replay_vertex_tiler_postfix_pre(const struct mali_vertex_tiler_postfix
if (!f.is_not_cubemap)
bitmap_count *= 6;
+ /* Array of textures */
+ bitmap_count *= MALI_NEGATIVE(t->array_size);
+
/* Stride for each element */
if (manual_stride)
bitmap_count *= 2;
--
2.20.1
More information about the mesa-dev
mailing list