summaryrefslogtreecommitdiffstats
path: root/src/amd/common/ac_debug.h
diff options
context:
space:
mode:
authorBas Nieuwenhuizen <[email protected]>2017-01-01 16:47:12 +0100
committerBas Nieuwenhuizen <[email protected]>2017-01-09 21:44:08 +0100
commit8cb60c7dd3cb608615d3e5f89ad4198c0babdb3d (patch)
tree0a5a7651fced7daf712da778e22637529832b0e8 /src/amd/common/ac_debug.h
parent97dfff54105ac10b6e2daace020687eefdcc28c0 (diff)
ac/debug: Dump indirect buffers.
This is for handling chained command buffers and secondary command buffers. It doesn't handle the trace id for secondary command buffers yet, but I don't think that is possible in general with just writes, as we could call a secondary command buffer multiple times. I think this is good enough for now, as the most useful case is the chaining when we grow an IB. Signed-off-by: Bas Nieuwenhuizen <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/amd/common/ac_debug.h')
-rw-r--r--src/amd/common/ac_debug.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/amd/common/ac_debug.h b/src/amd/common/ac_debug.h
index f72b67a8456..63ac4fa84d1 100644
--- a/src/amd/common/ac_debug.h
+++ b/src/amd/common/ac_debug.h
@@ -35,9 +35,12 @@
#define AC_IS_TRACE_POINT(x) (((x) & 0xcafe0000) == 0xcafe0000)
#define AC_GET_TRACE_POINT_ID(x) ((x) & 0xffff)
+typedef void *(*ac_debug_addr_callback)(void *data, uint64_t addr);
+
void ac_dump_reg(FILE *file, unsigned offset, uint32_t value,
uint32_t field_mask);
void ac_parse_ib(FILE *f, uint32_t *ib, int num_dw, int trace_id,
- const char *name, enum chip_class chip_class);
+ const char *name, enum chip_class chip_class,
+ ac_debug_addr_callback addr_callback, void *addr_callback_data);
#endif