0001
0002
0003
0004
0005
0006 #if !defined(CONFIG_IWLWIFI_DEVICE_TRACING)
0007
0008 #define trace_iwlmei_sap_cmd(...)
0009 #define trace_iwlmei_me_msg(...)
0010
0011 #else
0012
0013 #if !defined(__IWLWIFI_DEVICE_TRACE_IWLWIFI_SAP_CMD) || defined(TRACE_HEADER_MULTI_READ)
0014 #define __IWLWIFI_DEVICE_TRACE_IWLWIFI_SAP_CMD
0015
0016 #include <linux/tracepoint.h>
0017
0018 #undef TRACE_SYSTEM
0019 #define TRACE_SYSTEM iwlmei_sap_cmd
0020
0021 #include "mei/sap.h"
0022
0023 TRACE_EVENT(iwlmei_sap_cmd,
0024 TP_PROTO(const struct iwl_sap_hdr *sap_cmd, bool tx),
0025 TP_ARGS(sap_cmd, tx),
0026 TP_STRUCT__entry(
0027 __dynamic_array(u8, cmd,
0028 le16_to_cpu(sap_cmd->len) + sizeof(*sap_cmd))
0029 __field(u8, tx)
0030 __field(u16, type)
0031 __field(u16, len)
0032 __field(u32, seq)
0033 ),
0034 TP_fast_assign(
0035 memcpy(__get_dynamic_array(cmd), sap_cmd,
0036 le16_to_cpu(sap_cmd->len) + sizeof(*sap_cmd));
0037 __entry->tx = tx;
0038 __entry->type = le16_to_cpu(sap_cmd->type);
0039 __entry->len = le16_to_cpu(sap_cmd->len);
0040 __entry->seq = le32_to_cpu(sap_cmd->seq_num);
0041 ),
0042 TP_printk("sap_cmd %s: type %d len %d seq %d", __entry->tx ? "Tx" : "Rx",
0043 __entry->type, __entry->len, __entry->seq)
0044 );
0045
0046 TRACE_EVENT(iwlmei_me_msg,
0047 TP_PROTO(const struct iwl_sap_me_msg_hdr *hdr, bool tx),
0048 TP_ARGS(hdr, tx),
0049 TP_STRUCT__entry(
0050 __field(u8, type)
0051 __field(u8, tx)
0052 __field(u32, seq_num)
0053 ),
0054 TP_fast_assign(
0055 __entry->type = le32_to_cpu(hdr->type);
0056 __entry->seq_num = le32_to_cpu(hdr->seq_num);
0057 __entry->tx = tx;
0058 ),
0059 TP_printk("ME message: %s: type %d seq %d", __entry->tx ? "Tx" : "Rx",
0060 __entry->type, __entry->seq_num)
0061 );
0062
0063
0064
0065
0066
0067
0068 #endif
0069
0070 #undef TRACE_INCLUDE_PATH
0071 #define TRACE_INCLUDE_PATH .
0072 #undef TRACE_INCLUDE_FILE
0073 #define TRACE_INCLUDE_FILE trace
0074 #include <trace/define_trace.h>
0075
0076 #endif