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