Mesa (master): panfrost: decode 3d attribute continuation
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Jan 27 12:52:33 UTC 2021
Module: Mesa
Branch: master
Commit: c7c4fbc823053740b1bab0bb7c3a2eef3ccbce86
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c7c4fbc823053740b1bab0bb7c3a2eef3ccbce86
Author: Italo Nicola <italonicola at collabora.com>
Date: Fri Dec 11 07:58:41 2020 +0000
panfrost: decode 3d attribute continuation
Adds 3D attribute buffer continuations to pandecode and a message to
keep track of which buffer continuations we aren't decoding yet.
Signed-off-by: Italo Nicola <italonicola at collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon at collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8066>
---
src/panfrost/lib/decode.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/src/panfrost/lib/decode.c b/src/panfrost/lib/decode.c
index 703bf2cd80c..468d4f37853 100644
--- a/src/panfrost/lib/decode.c
+++ b/src/panfrost/lib/decode.c
@@ -466,12 +466,27 @@ pandecode_attributes(const struct pandecode_mapped_memory *mem,
pan_unpack(cl + i * MALI_ATTRIBUTE_BUFFER_LENGTH, ATTRIBUTE_BUFFER, temp);
DUMP_UNPACKED(ATTRIBUTE_BUFFER, temp, "%s:\n", prefix);
- if (temp.type == MALI_ATTRIBUTE_TYPE_1D_NPOT_DIVISOR) {
+ switch (temp.type) {
+ case MALI_ATTRIBUTE_TYPE_1D_NPOT_DIVISOR_WRITE_REDUCTION:
+ case MALI_ATTRIBUTE_TYPE_1D_NPOT_DIVISOR: {
pan_unpack(cl + (i + 1) * MALI_ATTRIBUTE_BUFFER_LENGTH,
ATTRIBUTE_BUFFER_CONTINUATION_NPOT, temp2);
pan_print(pandecode_dump_stream, ATTRIBUTE_BUFFER_CONTINUATION_NPOT,
temp2, (pandecode_indent + 1) * 2);
i++; count++;
+ break;
+ }
+ case MALI_ATTRIBUTE_TYPE_3D_LINEAR:
+ case MALI_ATTRIBUTE_TYPE_3D_INTERLEAVED: {
+ pan_unpack(cl + (i + 1) * MALI_ATTRIBUTE_BUFFER_CONTINUATION_3D_LENGTH,
+ ATTRIBUTE_BUFFER_CONTINUATION_3D, temp2);
+ pan_print(pandecode_dump_stream, ATTRIBUTE_BUFFER_CONTINUATION_3D,
+ temp2, (pandecode_indent + 1) * 2);
+ i++; count++;
+ break;
+ }
+ default:
+ break;
}
}
pandecode_log("\n");
More information about the mesa-commit
mailing list