summaryrefslogtreecommitdiffstats
path: root/include/trace
diff options
context:
space:
mode:
authorCristian Marussi <cristian.marussi@arm.com>2022-07-04 12:22:39 +0200
committerSudeep Holla <sudeep.holla@arm.com>2022-07-04 15:28:43 +0200
commite699eb9b4f1b98be08197d699e5c34a8b576b26f (patch)
tree7bad714b0576e6f3985c2fbfaadd1154c0c9e497 /include/trace
parentfirmware: arm_scmi: Add SCMI v3.1 powercap fast channels support (diff)
downloadlinux-e699eb9b4f1b98be08197d699e5c34a8b576b26f.tar.xz
linux-e699eb9b4f1b98be08197d699e5c34a8b576b26f.zip
include: trace: Add SCMI fast channel tracing
All the currently defined SCMI events are meant to trace only regular SCMI transfers based on SCMI messages exchanges; SCMI transactions based on fast channels, where used, are completely invisible from the tracing point of view. Add support to trace fast channel transactions; while doing that avoid exposing full shared memory location addresses. Link: https://lore.kernel.org/r/20220704102241.2988447-6-cristian.marussi@arm.com Signed-off-by: Cristian Marussi <cristian.marussi@arm.com> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Diffstat (limited to 'include/trace')
-rw-r--r--include/trace/events/scmi.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/include/trace/events/scmi.h b/include/trace/events/scmi.h
index 9108544beca9..65016a767b7a 100644
--- a/include/trace/events/scmi.h
+++ b/include/trace/events/scmi.h
@@ -7,6 +7,31 @@
#include <linux/tracepoint.h>
+TRACE_EVENT(scmi_fc_call,
+ TP_PROTO(u8 protocol_id, u8 msg_id, u32 res_id, u32 val1, u32 val2),
+ TP_ARGS(protocol_id, msg_id, res_id, val1, val2),
+
+ TP_STRUCT__entry(
+ __field(u8, protocol_id)
+ __field(u8, msg_id)
+ __field(u32, res_id)
+ __field(u32, val1)
+ __field(u32, val2)
+ ),
+
+ TP_fast_assign(
+ __entry->protocol_id = protocol_id;
+ __entry->msg_id = msg_id;
+ __entry->res_id = res_id;
+ __entry->val1 = val1;
+ __entry->val2 = val2;
+ ),
+
+ TP_printk("[0x%02X]:[0x%02X]:[%08X]:%u:%u",
+ __entry->protocol_id, __entry->msg_id,
+ __entry->res_id, __entry->val1, __entry->val2)
+);
+
TRACE_EVENT(scmi_xfer_begin,
TP_PROTO(int transfer_id, u8 msg_id, u8 protocol_id, u16 seq,
bool poll),