2 * Minimal debug/trace/assert driver definitions for
3 * Broadcom 802.11 Networking Adapter.
5 * $Copyright Open Broadcom Corporation$
7 * $Id: wl_dbg.h 472390 2014-04-23 23:32:01Z $
14 /* wl_msg_level is a bit vector with defs in wlioctl.h */
15 extern uint32 wl_msg_level;
16 extern uint32 wl_msg_level2;
18 #define WL_TIMESTAMP()
20 #if 0 && (VERSION_MAJOR > 9)
21 extern int osl_printf(const char *fmt, ...);
22 #include <IOKit/apple80211/IO8Log.h>
23 #define WL_PRINT(args) do { osl_printf args; } while (0)
24 #define RELEASE_PRINT(args) do { WL_PRINT(args); IO8Log args; } while (0)
26 #define WL_PRINT(args) do { WL_TIMESTAMP(); printf args; } while (0)
29 #if defined(EVENT_LOG_COMPILE) && defined(WLMSG_SRSCAN)
30 #define _WL_SRSCAN(fmt, ...) EVENT_LOG(EVENT_LOG_TAG_SRSCAN, fmt, ##__VA_ARGS__)
31 #define WL_SRSCAN(args) _WL_SRSCAN args
33 #define WL_SRSCAN(args)
36 #if defined(BCMCONDITIONAL_LOGGING)
38 /* Ideally this should be some include file that vendors can include to conditionalize logging */
40 /* DBGONLY() macro to reduce ifdefs in code for statements that are only needed when
45 /* To disable a message completely ... until you need it again */
47 #define WL_ERROR(args) do {if (wl_msg_level & WL_ERROR_VAL) WL_PRINT(args);} while (0)
48 #define WL_TRACE(args)
49 #define WL_PRHDRS_MSG(args)
50 #define WL_PRHDRS(i, p, f, t, r, l)
51 #define WL_PRPKT(m, b, n)
52 #define WL_INFORM(args)
55 #define WL_RATE(args) do {if (wl_msg_level & WL_RATE_VAL) WL_PRINT(args);} while (0)
56 #define WL_ASSOC(args) do {if (wl_msg_level & WL_ASSOC_VAL) WL_PRINT(args);} while (0)
57 #define WL_PRUSR(m, b, n)
58 #define WL_PS(args) do {if (wl_msg_level & WL_PS_VAL) WL_PRINT(args);} while (0)
62 #define WL_REGULATORY(args) do {if (wl_msg_level & WL_REGULATORY_VAL) WL_PRINT(args);} while (0)
65 #define WL_APSTA(args)
66 #define WL_APSTA_BCN(args)
67 #define WL_APSTA_TX(args)
68 #define WL_APSTA_TSF(args)
69 #define WL_APSTA_BSSID(args)
72 #define WL_PROTO(args)
74 #define WL_CAC(args) do {if (wl_msg_level & WL_CAC_VAL) WL_PRINT(args);} while (0)
75 #define WL_AMSDU(args)
76 #define WL_AMPDU(args)
77 #define WL_FFPLD(args)
78 #define WL_MCHAN(args)
83 #define WL_ASSOC_OR_DPT(args)
84 #define WL_SCAN(args) do {if (wl_msg_level2 & WL_SCAN_VAL) WL_PRINT(args);} while (0)
86 #define WL_RTDC(w, s, i, j)
87 #define WL_RTDC2(w, s, i, j)
88 #define WL_CHANINT(args)
96 #define WL_TRF_MGMT(args)
97 #define WL_L2FILTER(args)
100 #define WL_P2PO(args)
101 #define WL_NET_DETECT(args)
102 #define WL_ROAM(args)
106 #define WL_AMPDU_UPDN(args)
107 #define WL_AMPDU_RX(args)
108 #define WL_AMPDU_ERR(args)
109 #define WL_AMPDU_TX(args)
110 #define WL_AMPDU_CTL(args)
111 #define WL_AMPDU_HW(args)
112 #define WL_AMPDU_HWTXS(args)
113 #define WL_AMPDU_HWDBG(args)
114 #define WL_AMPDU_STAT(args)
115 #define WL_AMPDU_ERR_ON() 0
116 #define WL_AMPDU_HW_ON() 0
117 #define WL_AMPDU_HWTXS_ON() 0
119 #define WL_APSTA_UPDN(args)
120 #define WL_APSTA_RX(args)
121 #define WL_WSEC(args)
122 #define WL_WSEC_DUMP(args)
123 #define WL_PCIE(args)
124 #define WL_CHANLOG(w, s, i, j)
126 #define WL_ERROR_ON() (wl_msg_level & WL_ERROR_VAL)
127 #define WL_TRACE_ON() 0
128 #define WL_PRHDRS_ON() 0
129 #define WL_PRPKT_ON() 0
130 #define WL_INFORM_ON() 0
131 #define WL_TMP_ON() 0
132 #define WL_OID_ON() 0
133 #define WL_RATE_ON() (wl_msg_level & WL_RATE_VAL)
134 #define WL_ASSOC_ON() (wl_msg_level & WL_ASSOC_VAL)
135 #define WL_PRUSR_ON() 0
136 #define WL_PS_ON() (wl_msg_level & WL_PS_VAL)
137 #define WL_PORT_ON() 0
138 #define WL_WSEC_ON() 0
139 #define WL_WSEC_DUMP_ON() 0
140 #define WL_MPC_ON() 0
141 #define WL_REGULATORY_ON() (wl_msg_level & WL_REGULATORY_VAL)
142 #define WL_APSTA_ON() 0
143 #define WL_DFS_ON() 0
144 #define WL_MBSS_ON() 0
145 #define WL_CAC_ON() (wl_msg_level & WL_CAC_VAL)
146 #define WL_AMPDU_ON() 0
147 #define WL_DPT_ON() 0
148 #define WL_WOWL_ON() 0
149 #define WL_SCAN_ON() (wl_msg_level2 & WL_SCAN_VAL)
150 #define WL_BTA_ON() 0
151 #define WL_P2P_ON() 0
152 #define WL_ITFR_ON() 0
153 #define WL_MCHAN_ON() 0
154 #define WL_TDLS_ON() 0
155 #define WL_MCNX_ON() 0
156 #define WL_PROT_ON() 0
157 #define WL_PSTA_ON() 0
158 #define WL_TRF_MGMT_ON() 0
159 #define WL_LPC_ON() 0
160 #define WL_L2FILTER_ON() 0
161 #define WL_TXBF_ON() 0
162 #define WL_P2PO_ON() 0
163 #define WL_CHANLOG_ON() 0
164 #define WL_NET_DETECT_ON() 0
165 #define WL_WNM_ON() 0
166 #define WL_PCIE_ON() 0
170 /* DBGONLY() macro to reduce ifdefs in code for statements that are only needed when
175 /* To disable a message completely ... until you need it again */
176 #define WL_NONE(args)
178 #define WL_ERROR(args)
179 #define WL_TRACE(args)
180 #ifndef LINUX_POSTMOGRIFY_REMOVAL
182 #define WL_PRHDRS_MSG(args) WL_PRINT(args)
183 #define WL_PRHDRS(i, p, f, t, r, l) wlc_print_hdrs(i, p, f, t, r, l)
185 #define WL_PRHDRS_MSG(args)
186 #define WL_PRHDRS(i, p, f, t, r, l)
189 #define WL_PRPKT(m, b, n) prhex(m, b, n)
191 #define WL_PRPKT(m, b, n)
194 #define WL_INFORM(args) WL_PRINT(args)
196 #define WL_INFORM(args)
200 #define WL_OID(args) WL_PRINT(args)
204 #define WL_RATE(args)
206 #define WL_ASSOC(args) WL_PRINT(args)
208 #define WL_ASSOC(args)
210 #define WL_PRUSR(m, b, n)
212 #define WL_PS(args) WL_PRINT(args)
217 #define WL_ROAM(args) WL_PRINT(args)
219 #define WL_ROAM(args)
221 #define WL_PORT(args)
222 #define WL_DUAL(args)
223 #define WL_REGULATORY(args)
226 #define WL_MPC(args) WL_PRINT(args)
230 #define WL_APSTA(args)
231 #define WL_APSTA_BCN(args)
232 #define WL_APSTA_TX(args)
233 #define WL_APSTA_TSF(args)
234 #define WL_APSTA_BSSID(args)
236 #define WL_MBSS(args)
237 #define WL_MODE_SWITCH(args)
238 #define WL_PROTO(args)
241 #define WL_AMSDU(args)
242 #define WL_AMPDU(args)
243 #define WL_FFPLD(args)
244 #define WL_MCHAN(args)
246 /* Define WLMSG_DFS automatically for WLTEST builds */
249 #define WL_DFS(args) do {if (wl_msg_level & WL_DFS_VAL) WL_PRINT(args);} while (0)
250 #else /* WLMSG_DFS */
252 #endif /* WLMSG_DFS */
253 #define WL_WOWL(args)
255 #define WL_SCAN(args) WL_PRINT(args)
257 #define WL_SCAN(args)
259 #define WL_COEX(args)
260 #define WL_RTDC(w, s, i, j)
261 #define WL_RTDC2(w, s, i, j)
262 #define WL_CHANINT(args)
264 #define WL_BTA(args) WL_PRINT(args)
270 #define WL_ITFR(args)
271 #define WL_TDLS(args)
272 #define WL_MCNX(args)
273 #define WL_PROT(args)
274 #define WL_PSTA(args)
275 #define WL_TBTT(args)
276 #define WL_TRF_MGMT(args)
277 #define WL_L2FILTER(args)
279 #define WL_P2PO(args)
281 #define WL_TXBF(args)
282 #define WL_CHANLOG(w, s, i, j)
283 #define WL_NET_DETECT(args)
285 #define WL_ERROR_ON() 0
286 #define WL_TRACE_ON() 0
288 #define WL_PRHDRS_ON() 1
290 #define WL_PRHDRS_ON() 0
293 #define WL_PRPKT_ON() 1
295 #define WL_PRPKT_ON() 0
298 #define WL_INFORM_ON() 1
300 #define WL_INFORM_ON() 0
303 #define WL_OID_ON() 1
305 #define WL_OID_ON() 0
307 #define WL_TMP_ON() 0
308 #define WL_RATE_ON() 0
310 #define WL_ASSOC_ON() 1
312 #define WL_ASSOC_ON() 0
314 #define WL_PORT_ON() 0
316 #define WL_WSEC_ON() 1
317 #define WL_WSEC_DUMP_ON() 1
319 #define WL_WSEC_ON() 0
320 #define WL_WSEC_DUMP_ON() 0
323 #define WL_MPC_ON() 1
325 #define WL_MPC_ON() 0
327 #define WL_REGULATORY_ON() 0
329 #define WL_APSTA_ON() 0
331 #define WL_MBSS_ON() 0
332 #define WL_MODE_SWITCH_ON() 0
334 #define WL_DFS_ON() 1
335 #else /* WLMSG_DFS */
336 #define WL_DFS_ON() 0
337 #endif /* WLMSG_DFS */
339 #define WL_SCAN_ON() 1
341 #define WL_SCAN_ON() 0
344 #define WL_BTA_ON() 1
346 #define WL_BTA_ON() 0
348 #define WL_WMF_ON() 0
349 #define WL_P2P_ON() 0
350 #define WL_MCHAN_ON() 0
351 #define WL_TDLS_ON() 0
352 #define WL_MCNX_ON() 0
353 #define WL_PROT_ON() 0
354 #define WL_TBTT_ON() 0
355 #define WL_PWRSEL_ON() 0
356 #define WL_L2FILTER_ON() 0
358 #define WL_P2PO_ON() 0
359 #define WL_TXBF_ON() 0
360 #define WL_CHANLOG_ON() 0
362 #define WL_AMPDU_UPDN(args)
363 #define WL_AMPDU_RX(args)
364 #define WL_AMPDU_ERR(args)
365 #define WL_AMPDU_TX(args)
366 #define WL_AMPDU_CTL(args)
367 #define WL_AMPDU_HW(args)
368 #define WL_AMPDU_HWTXS(args)
369 #define WL_AMPDU_HWDBG(args)
370 #define WL_AMPDU_STAT(args)
371 #define WL_AMPDU_ERR_ON() 0
372 #define WL_AMPDU_HW_ON() 0
373 #define WL_AMPDU_HWTXS_ON() 0
375 #define WL_WNM_ON() 0
376 #endif /* LINUX_POSTMOGRIFY_REMOVAL */
377 #define WL_APSTA_UPDN(args)
378 #define WL_APSTA_RX(args)
380 #define WL_WSEC(args) WL_PRINT(args)
381 #define WL_WSEC_DUMP(args) WL_PRINT(args)
383 #define WL_WSEC(args)
384 #define WL_WSEC_DUMP(args)
386 #define WL_PCIE(args) do {if (wl_msg_level2 & WL_PCIE_VAL) WL_PRINT(args);} while (0)
387 #define WL_PCIE_ON() (wl_msg_level2 & WL_PCIE_VAL)
390 extern uint32 wl_msg_level;
391 extern uint32 wl_msg_level2;
392 #endif /* _wl_dbg_h_ */