xref: /OK3568_Linux_fs/kernel/net/mac80211/debug.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */
2*4882a593Smuzhiyun #ifndef __MAC80211_DEBUG_H
3*4882a593Smuzhiyun #define __MAC80211_DEBUG_H
4*4882a593Smuzhiyun #include <net/cfg80211.h>
5*4882a593Smuzhiyun 
6*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_OCB_DEBUG
7*4882a593Smuzhiyun #define MAC80211_OCB_DEBUG 1
8*4882a593Smuzhiyun #else
9*4882a593Smuzhiyun #define MAC80211_OCB_DEBUG 0
10*4882a593Smuzhiyun #endif
11*4882a593Smuzhiyun 
12*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_IBSS_DEBUG
13*4882a593Smuzhiyun #define MAC80211_IBSS_DEBUG 1
14*4882a593Smuzhiyun #else
15*4882a593Smuzhiyun #define MAC80211_IBSS_DEBUG 0
16*4882a593Smuzhiyun #endif
17*4882a593Smuzhiyun 
18*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_PS_DEBUG
19*4882a593Smuzhiyun #define MAC80211_PS_DEBUG 1
20*4882a593Smuzhiyun #else
21*4882a593Smuzhiyun #define MAC80211_PS_DEBUG 0
22*4882a593Smuzhiyun #endif
23*4882a593Smuzhiyun 
24*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_HT_DEBUG
25*4882a593Smuzhiyun #define MAC80211_HT_DEBUG 1
26*4882a593Smuzhiyun #else
27*4882a593Smuzhiyun #define MAC80211_HT_DEBUG 0
28*4882a593Smuzhiyun #endif
29*4882a593Smuzhiyun 
30*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_MPL_DEBUG
31*4882a593Smuzhiyun #define MAC80211_MPL_DEBUG 1
32*4882a593Smuzhiyun #else
33*4882a593Smuzhiyun #define MAC80211_MPL_DEBUG 0
34*4882a593Smuzhiyun #endif
35*4882a593Smuzhiyun 
36*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_MPATH_DEBUG
37*4882a593Smuzhiyun #define MAC80211_MPATH_DEBUG 1
38*4882a593Smuzhiyun #else
39*4882a593Smuzhiyun #define MAC80211_MPATH_DEBUG 0
40*4882a593Smuzhiyun #endif
41*4882a593Smuzhiyun 
42*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_MHWMP_DEBUG
43*4882a593Smuzhiyun #define MAC80211_MHWMP_DEBUG 1
44*4882a593Smuzhiyun #else
45*4882a593Smuzhiyun #define MAC80211_MHWMP_DEBUG 0
46*4882a593Smuzhiyun #endif
47*4882a593Smuzhiyun 
48*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_MESH_SYNC_DEBUG
49*4882a593Smuzhiyun #define MAC80211_MESH_SYNC_DEBUG 1
50*4882a593Smuzhiyun #else
51*4882a593Smuzhiyun #define MAC80211_MESH_SYNC_DEBUG 0
52*4882a593Smuzhiyun #endif
53*4882a593Smuzhiyun 
54*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_MESH_CSA_DEBUG
55*4882a593Smuzhiyun #define MAC80211_MESH_CSA_DEBUG 1
56*4882a593Smuzhiyun #else
57*4882a593Smuzhiyun #define MAC80211_MESH_CSA_DEBUG 0
58*4882a593Smuzhiyun #endif
59*4882a593Smuzhiyun 
60*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_MESH_PS_DEBUG
61*4882a593Smuzhiyun #define MAC80211_MESH_PS_DEBUG 1
62*4882a593Smuzhiyun #else
63*4882a593Smuzhiyun #define MAC80211_MESH_PS_DEBUG 0
64*4882a593Smuzhiyun #endif
65*4882a593Smuzhiyun 
66*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_TDLS_DEBUG
67*4882a593Smuzhiyun #define MAC80211_TDLS_DEBUG 1
68*4882a593Smuzhiyun #else
69*4882a593Smuzhiyun #define MAC80211_TDLS_DEBUG 0
70*4882a593Smuzhiyun #endif
71*4882a593Smuzhiyun 
72*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_STA_DEBUG
73*4882a593Smuzhiyun #define MAC80211_STA_DEBUG 1
74*4882a593Smuzhiyun #else
75*4882a593Smuzhiyun #define MAC80211_STA_DEBUG 0
76*4882a593Smuzhiyun #endif
77*4882a593Smuzhiyun 
78*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_MLME_DEBUG
79*4882a593Smuzhiyun #define MAC80211_MLME_DEBUG 1
80*4882a593Smuzhiyun #else
81*4882a593Smuzhiyun #define MAC80211_MLME_DEBUG 0
82*4882a593Smuzhiyun #endif
83*4882a593Smuzhiyun 
84*4882a593Smuzhiyun #ifdef CONFIG_MAC80211_MESSAGE_TRACING
85*4882a593Smuzhiyun void __sdata_info(const char *fmt, ...) __printf(1, 2);
86*4882a593Smuzhiyun void __sdata_dbg(bool print, const char *fmt, ...) __printf(2, 3);
87*4882a593Smuzhiyun void __sdata_err(const char *fmt, ...) __printf(1, 2);
88*4882a593Smuzhiyun void __wiphy_dbg(struct wiphy *wiphy, bool print, const char *fmt, ...)
89*4882a593Smuzhiyun 	__printf(3, 4);
90*4882a593Smuzhiyun 
91*4882a593Smuzhiyun #define _sdata_info(sdata, fmt, ...)					\
92*4882a593Smuzhiyun 	__sdata_info("%s: " fmt, (sdata)->name, ##__VA_ARGS__)
93*4882a593Smuzhiyun #define _sdata_dbg(print, sdata, fmt, ...)				\
94*4882a593Smuzhiyun 	__sdata_dbg(print, "%s: " fmt, (sdata)->name, ##__VA_ARGS__)
95*4882a593Smuzhiyun #define _sdata_err(sdata, fmt, ...)					\
96*4882a593Smuzhiyun 	__sdata_err("%s: " fmt, (sdata)->name, ##__VA_ARGS__)
97*4882a593Smuzhiyun #define _wiphy_dbg(print, wiphy, fmt, ...)				\
98*4882a593Smuzhiyun 	__wiphy_dbg(wiphy, print, fmt, ##__VA_ARGS__)
99*4882a593Smuzhiyun #else
100*4882a593Smuzhiyun #define _sdata_info(sdata, fmt, ...)					\
101*4882a593Smuzhiyun do {									\
102*4882a593Smuzhiyun 	pr_info("%s: " fmt,						\
103*4882a593Smuzhiyun 		(sdata)->name, ##__VA_ARGS__);				\
104*4882a593Smuzhiyun } while (0)
105*4882a593Smuzhiyun 
106*4882a593Smuzhiyun #define _sdata_dbg(print, sdata, fmt, ...)				\
107*4882a593Smuzhiyun do {									\
108*4882a593Smuzhiyun 	if (print)							\
109*4882a593Smuzhiyun 		pr_debug("%s: " fmt,					\
110*4882a593Smuzhiyun 			 (sdata)->name, ##__VA_ARGS__);			\
111*4882a593Smuzhiyun } while (0)
112*4882a593Smuzhiyun 
113*4882a593Smuzhiyun #define _sdata_err(sdata, fmt, ...)					\
114*4882a593Smuzhiyun do {									\
115*4882a593Smuzhiyun 	pr_err("%s: " fmt,						\
116*4882a593Smuzhiyun 	       (sdata)->name, ##__VA_ARGS__);				\
117*4882a593Smuzhiyun } while (0)
118*4882a593Smuzhiyun 
119*4882a593Smuzhiyun #define _wiphy_dbg(print, wiphy, fmt, ...)				\
120*4882a593Smuzhiyun do {									\
121*4882a593Smuzhiyun 	if (print)							\
122*4882a593Smuzhiyun 		wiphy_dbg((wiphy), fmt, ##__VA_ARGS__);			\
123*4882a593Smuzhiyun } while (0)
124*4882a593Smuzhiyun #endif
125*4882a593Smuzhiyun 
126*4882a593Smuzhiyun #define sdata_info(sdata, fmt, ...)					\
127*4882a593Smuzhiyun 	_sdata_info(sdata, fmt, ##__VA_ARGS__)
128*4882a593Smuzhiyun #define sdata_err(sdata, fmt, ...)					\
129*4882a593Smuzhiyun 	_sdata_err(sdata, fmt, ##__VA_ARGS__)
130*4882a593Smuzhiyun #define sdata_dbg(sdata, fmt, ...)					\
131*4882a593Smuzhiyun 	_sdata_dbg(1, sdata, fmt, ##__VA_ARGS__)
132*4882a593Smuzhiyun 
133*4882a593Smuzhiyun #define ht_dbg(sdata, fmt, ...)						\
134*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_HT_DEBUG,					\
135*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
136*4882a593Smuzhiyun 
137*4882a593Smuzhiyun #define ht_dbg_ratelimited(sdata, fmt, ...)				\
138*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_HT_DEBUG && net_ratelimit(),		\
139*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
140*4882a593Smuzhiyun 
141*4882a593Smuzhiyun #define ocb_dbg(sdata, fmt, ...)					\
142*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_OCB_DEBUG,					\
143*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
144*4882a593Smuzhiyun 
145*4882a593Smuzhiyun #define ibss_dbg(sdata, fmt, ...)					\
146*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_IBSS_DEBUG,					\
147*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
148*4882a593Smuzhiyun 
149*4882a593Smuzhiyun #define ps_dbg(sdata, fmt, ...)						\
150*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_PS_DEBUG,					\
151*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
152*4882a593Smuzhiyun 
153*4882a593Smuzhiyun #define ps_dbg_hw(hw, fmt, ...)						\
154*4882a593Smuzhiyun 	_wiphy_dbg(MAC80211_PS_DEBUG,					\
155*4882a593Smuzhiyun 		   (hw)->wiphy, fmt, ##__VA_ARGS__)
156*4882a593Smuzhiyun 
157*4882a593Smuzhiyun #define ps_dbg_ratelimited(sdata, fmt, ...)				\
158*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_PS_DEBUG && net_ratelimit(),		\
159*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
160*4882a593Smuzhiyun 
161*4882a593Smuzhiyun #define mpl_dbg(sdata, fmt, ...)					\
162*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_MPL_DEBUG,					\
163*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
164*4882a593Smuzhiyun 
165*4882a593Smuzhiyun #define mpath_dbg(sdata, fmt, ...)					\
166*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_MPATH_DEBUG,				\
167*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
168*4882a593Smuzhiyun 
169*4882a593Smuzhiyun #define mhwmp_dbg(sdata, fmt, ...)					\
170*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_MHWMP_DEBUG,				\
171*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
172*4882a593Smuzhiyun 
173*4882a593Smuzhiyun #define msync_dbg(sdata, fmt, ...)					\
174*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_MESH_SYNC_DEBUG,				\
175*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
176*4882a593Smuzhiyun 
177*4882a593Smuzhiyun #define mcsa_dbg(sdata, fmt, ...)					\
178*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_MESH_CSA_DEBUG,				\
179*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
180*4882a593Smuzhiyun 
181*4882a593Smuzhiyun #define mps_dbg(sdata, fmt, ...)					\
182*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_MESH_PS_DEBUG,				\
183*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
184*4882a593Smuzhiyun 
185*4882a593Smuzhiyun #define tdls_dbg(sdata, fmt, ...)					\
186*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_TDLS_DEBUG,					\
187*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
188*4882a593Smuzhiyun 
189*4882a593Smuzhiyun #define sta_dbg(sdata, fmt, ...)					\
190*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_STA_DEBUG,					\
191*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
192*4882a593Smuzhiyun 
193*4882a593Smuzhiyun #define mlme_dbg(sdata, fmt, ...)					\
194*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_MLME_DEBUG,					\
195*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
196*4882a593Smuzhiyun 
197*4882a593Smuzhiyun #define mlme_dbg_ratelimited(sdata, fmt, ...)				\
198*4882a593Smuzhiyun 	_sdata_dbg(MAC80211_MLME_DEBUG && net_ratelimit(),		\
199*4882a593Smuzhiyun 		   sdata, fmt, ##__VA_ARGS__)
200*4882a593Smuzhiyun 
201*4882a593Smuzhiyun #endif /* __MAC80211_DEBUG_H */
202