Add custom traces to report Telemetry failed accesses and to report when DE values are updated internally after a notification is processed. Signed-off-by: Cristian Marussi --- include/trace/events/scmi.h | 48 ++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/include/trace/events/scmi.h b/include/trace/events/scmi.h index 703b7bb68e44..b70b26e467b8 100644 --- a/include/trace/events/scmi.h +++ b/include/trace/events/scmi.h @@ -7,7 +7,8 @@ #include -#define TRACE_SCMI_MAX_TAG_LEN 6 +#define TRACE_SCMI_MAX_TAG_LEN 6 +#define TRACE_SCMI_TLM_MAX_TAG_LEN 16 TRACE_EVENT(scmi_fc_call, TP_PROTO(u8 protocol_id, u8 msg_id, u32 res_id, u32 val1, u32 val2), @@ -180,6 +181,51 @@ TRACE_EVENT(scmi_msg_dump, __entry->tag, __entry->msg_id, __entry->seq, __entry->status, __print_hex_str(__get_dynamic_array(cmd), __entry->len)) ); + +TRACE_EVENT(scmi_tlm_access, + TP_PROTO(u64 de_id, unsigned char *tag, u64 startm, u64 endm), + TP_ARGS(de_id, tag, startm, endm), + + TP_STRUCT__entry( + __field(u64, de_id) + __array(char, tag, TRACE_SCMI_TLM_MAX_TAG_LEN) + __field(u64, startm) + __field(u64, endm) + ), + + TP_fast_assign( + __entry->de_id = de_id; + strscpy(__entry->tag, tag, TRACE_SCMI_TLM_MAX_TAG_LEN); + __entry->startm = startm; + __entry->endm = endm; + ), + + TP_printk("de_id=0x%llX [%s] - startm=%016llX endm=%016llX", + __entry->de_id, __entry->tag, __entry->startm, __entry->endm) +); + +TRACE_EVENT(scmi_tlm_collect, + TP_PROTO(u64 ts, u64 de_id, u64 value, unsigned char *tag), + TP_ARGS(ts, de_id, value, tag), + + TP_STRUCT__entry( + __field(u64, ts) + __field(u64, de_id) + __field(u64, value) + __array(char, tag, TRACE_SCMI_TLM_MAX_TAG_LEN) + ), + + TP_fast_assign( + __entry->ts = ts; + __entry->de_id = de_id; + __entry->value = value; + strscpy(__entry->tag, tag, TRACE_SCMI_TLM_MAX_TAG_LEN); + ), + + TP_printk("ts=%llu de_id=0x%04llX value=%016llu [%s]", + __entry->ts, __entry->de_id, __entry->value, __entry->tag) +); + #endif /* _TRACE_SCMI_H */ /* This part must be outside protection */ -- 2.53.0