spi/trace: Trace length of SPI messages on completion
Signed-off-by: Mark Brown <broonie@linaro.org>
diff --git a/include/trace/events/spi.h b/include/trace/events/spi.h
index a7b0907..5e77e21 100644
--- a/include/trace/events/spi.h
+++ b/include/trace/events/spi.h
@@ -80,12 +80,32 @@
);
-DEFINE_EVENT(spi_message, spi_message_done,
+TRACE_EVENT(spi_message_done,
TP_PROTO(struct spi_message *msg),
- TP_ARGS(msg)
+ TP_ARGS(msg),
+ TP_STRUCT__entry(
+ __field( int, bus_num )
+ __field( int, chip_select )
+ __field( struct spi_message *, msg )
+ __field( unsigned, frame )
+ __field( unsigned, actual )
+ ),
+
+ TP_fast_assign(
+ __entry->bus_num = msg->spi->master->bus_num;
+ __entry->chip_select = msg->spi->chip_select;
+ __entry->msg = msg;
+ __entry->frame = msg->frame_length;
+ __entry->actual = msg->actual_length;
+ ),
+
+ TP_printk("spi%d.%d %p len=%u/%u", (int)__entry->bus_num,
+ (int)__entry->chip_select,
+ (struct spi_message *)__entry->msg,
+ (unsigned)__entry->actual, (unsigned)__entry->frame)
);
#endif /* _TRACE_POWER_H */