1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | /* |
3 | * Portions of this file |
4 | * Copyright (C) 2019 Intel Corporation |
5 | */ |
6 | |
7 | #ifdef CONFIG_MAC80211_MESSAGE_TRACING |
8 | |
9 | #if !defined(__MAC80211_MSG_DRIVER_TRACE) || defined(TRACE_HEADER_MULTI_READ) |
10 | #define __MAC80211_MSG_DRIVER_TRACE |
11 | |
12 | #include <linux/tracepoint.h> |
13 | #include <net/mac80211.h> |
14 | #include "ieee80211_i.h" |
15 | |
16 | #undef TRACE_SYSTEM |
17 | #define TRACE_SYSTEM mac80211_msg |
18 | |
19 | #define MAX_MSG_LEN 120 |
20 | |
21 | DECLARE_EVENT_CLASS(mac80211_msg_event, |
22 | TP_PROTO(struct va_format *vaf), |
23 | |
24 | TP_ARGS(vaf), |
25 | |
26 | TP_STRUCT__entry( |
27 | __vstring(msg, vaf->fmt, vaf->va) |
28 | ), |
29 | |
30 | TP_fast_assign( |
31 | __assign_vstr(msg, vaf->fmt, vaf->va); |
32 | ), |
33 | |
34 | TP_printk("%s" , __get_str(msg)) |
35 | ); |
36 | |
37 | DEFINE_EVENT(mac80211_msg_event, mac80211_info, |
38 | TP_PROTO(struct va_format *vaf), |
39 | TP_ARGS(vaf) |
40 | ); |
41 | DEFINE_EVENT(mac80211_msg_event, mac80211_dbg, |
42 | TP_PROTO(struct va_format *vaf), |
43 | TP_ARGS(vaf) |
44 | ); |
45 | DEFINE_EVENT(mac80211_msg_event, mac80211_err, |
46 | TP_PROTO(struct va_format *vaf), |
47 | TP_ARGS(vaf) |
48 | ); |
49 | #endif /* !__MAC80211_MSG_DRIVER_TRACE || TRACE_HEADER_MULTI_READ */ |
50 | |
51 | #undef TRACE_INCLUDE_PATH |
52 | #define TRACE_INCLUDE_PATH . |
53 | #undef TRACE_INCLUDE_FILE |
54 | #define TRACE_INCLUDE_FILE trace_msg |
55 | #include <trace/define_trace.h> |
56 | |
57 | #endif |
58 | |