freedreno: Add more tracepoint fields
authorRob Clark <robdclark@chromium.org>
Fri, 21 Apr 2023 18:51:04 +0000 (11:51 -0700)
committerMarge Bot <emma+marge@anholt.net>
Mon, 24 Apr 2023 22:42:04 +0000 (22:42 +0000)
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646>

src/gallium/drivers/freedreno/a6xx/fd6_gmem.cc
src/gallium/drivers/freedreno/freedreno_tracepoints.py

index e810298..75be902 100644 (file)
@@ -1285,7 +1285,7 @@ fd6_emit_tile_renderprep(struct fd_batch *batch, const struct fd_tile *tile)
    if (!batch->tile_setup)
       return;
 
-   trace_start_clear_restore(&batch->trace, batch->gmem, batch->fast_cleared);
+   trace_start_clear_restore(&batch->trace, batch->gmem, batch->fast_cleared, batch->restore);
    if (batch->fast_cleared || !use_hw_binning(batch)) {
       fd6_emit_ib(batch->gmem, batch->tile_setup);
    } else {
@@ -1483,7 +1483,7 @@ fd6_emit_tile_gmem2mem(struct fd_batch *batch, const struct fd_tile *tile)
    OUT_RING(ring, A6XX_CP_SET_MARKER_0_MODE(RM6_RESOLVE));
    emit_marker6(ring, 7);
 
-   trace_start_resolve(&batch->trace, batch->gmem);
+   trace_start_resolve(&batch->trace, batch->gmem, batch->resolve);
    if (batch->fast_cleared || !use_hw_binning(batch)) {
       fd6_emit_ib(batch->gmem, batch->tile_fini);
    } else {
@@ -1525,7 +1525,7 @@ emit_sysmem_clears(struct fd_batch *batch, struct fd_ringbuffer *ring) assert_dt
    struct pipe_box box2d;
    u_box_2d(0, 0, pfb->width, pfb->height, &box2d);
 
-   trace_start_clear_restore(&batch->trace, ring, buffers);
+   trace_start_clear_restore(&batch->trace, ring, buffers, 0);
 
    if (buffers & PIPE_CLEAR_COLOR) {
       for (int i = 0; i < pfb->nr_cbufs; i++) {
index 30bc816..91de03c 100644 (file)
@@ -123,13 +123,18 @@ begin_end_tp('binning_ib')
 begin_end_tp('vsc_overflow_test')
 begin_end_tp('prologue')
 
-# For GMEM pass, where this could either be a clear or resolve
+# For GMEM pass, where this could either be a clear or restore
 begin_end_tp('clear_restore',
-    args=[TracepointArg(type='uint16_t', var='fast_cleared', c_format='0x%x')],
-    tp_print=['fast_cleared: 0x%x', '__entry->fast_cleared'],
+    args=[TracepointArg(type='uint16_t', var='fast_cleared', c_format='0x%x'),
+          TracepointArg(type='uint16_t', var='restore', c_format='0x%x')],
+    tp_print=['fast_cleared: 0x%x, restore=0x%x', '__entry->fast_cleared',
+              '__entry->restore'],
 )
 
-begin_end_tp('resolve')
+begin_end_tp('resolve',
+    args=[TracepointArg(type='uint16_t', var='stored', c_format='0x%x')],
+    tp_print=['stored: 0x%x', '__entry->stored'],
+)
 
 singular_tp('start_tile',
     args=[TracepointArg(type='uint16_t', var='bin_h', c_format='%u'),