aboutsummaryrefslogtreecommitdiffstats
path: root/src/panfrost/pandecode
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-08-20 11:06:07 -0700
committerAlyssa Rosenzweig <[email protected]>2019-08-21 08:40:53 -0700
commitc9b623355822129a42c4a64b3310c246bf359721 (patch)
tree0c3959329ab7cc2436659d41c36e61b2a726b765 /src/panfrost/pandecode
parent4aeb6944623fa10dc7084113283c7e58484e0d6f (diff)
pan/decode: Validate AFBC fields are zero when AFBC is disabled
There is no "chunknown" structure; that part of the union is an artefact from falsely believing vertex/tiler MFBDs could have render targets attached (they can't). These are just plain old AFBC fields, and if there is no AFBC, it's error to set these field. Signed-off-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/panfrost/pandecode')
-rw-r--r--src/panfrost/pandecode/decode.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/panfrost/pandecode/decode.c b/src/panfrost/pandecode/decode.c
index 77b83fc8fc5..9c29d870332 100644
--- a/src/panfrost/pandecode/decode.c
+++ b/src/panfrost/pandecode/decode.c
@@ -818,18 +818,11 @@ pandecode_render_target(uint64_t gpu_va, unsigned job_no, const struct bifrost_f
pandecode_indent--;
pandecode_log("},\n");
- } else {
- pandecode_log(".chunknown = {\n");
- pandecode_indent++;
-
- pandecode_prop("unk = 0x%" PRIx64, rt->chunknown.unk);
-
- char *a = pointer_as_memory_reference(rt->chunknown.pointer);
- pandecode_prop("pointer = %s", a);
- free(a);
-
- pandecode_indent--;
- pandecode_log("},\n");
+ } else if (rt->afbc.metadata || rt->afbc.stride || rt->afbc.unk) {
+ pandecode_msg("XXX: AFBC disabled but AFBC field set (0x%lX, 0x%x, 0x%x)\n",
+ rt->afbc.metadata,
+ rt->afbc.stride,
+ rt->afbc.unk);
}
MEMORY_PROP(rt, framebuffer);