summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2018-06-25 11:01:44 -0700
committerEric Anholt <[email protected]>2018-07-27 17:08:35 -0700
commite92959c4e03cf17b7cd829e2e56162604069abe6 (patch)
tree5bb1159faf3d7d1077dd313c016d7a52d43bdfe1 /src/gallium
parent77207e53806790e5edf3002a84d7105e646e22cb (diff)
v3d: Pass the whole clif_dump structure to v3d_print_group().
To generate CLIF files that the v3dv3 simulator can parse, we're going to need to decode addresses, and for that we'll need the vaddr lookup function from the clif structure from within v3d_decoder.
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/vc4/vc4_cl_dump.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/vc4/vc4_cl_dump.c b/src/gallium/drivers/vc4/vc4_cl_dump.c
index ca1b9a31528..c5be426d132 100644
--- a/src/gallium/drivers/vc4/vc4_cl_dump.c
+++ b/src/gallium/drivers/vc4/vc4_cl_dump.c
@@ -28,6 +28,7 @@
#include "kernel/vc4_packet.h"
#include "broadcom/cle/v3d_decoder.h"
+#include "broadcom/clif/clif_dump.h"
void
vc4_dump_cl(void *cl, uint32_t size, bool is_render)
@@ -41,6 +42,8 @@ vc4_dump_cl(void *cl, uint32_t size, bool is_render)
};
struct v3d_spec *spec = v3d_spec_load(&devinfo);
+ struct clif_dump *clif = clif_dump_init(&devinfo, stderr, NULL, NULL);
+
uint32_t offset = 0, hw_offset = 0;
uint8_t *p = cl;
@@ -60,7 +63,7 @@ vc4_dump_cl(void *cl, uint32_t size, bool is_render)
fprintf(stderr, "0x%08x 0x%08x: 0x%02x %s\n",
offset, hw_offset, header, v3d_group_get_name(inst));
- v3d_print_group(stderr, inst, offset, p, "");
+ v3d_print_group(clif, inst, offset, p, "");
switch (header) {
case VC4_PACKET_HALT:
@@ -75,5 +78,7 @@ vc4_dump_cl(void *cl, uint32_t size, bool is_render)
hw_offset += length;
p += length;
}
+
+ clif_dump_destroy(clif);
}