diff options
author | Arend van Spriel <arend@broadcom.com> | 2013-04-05 04:57:44 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2013-04-08 15:28:43 -0400 |
commit | 40c1c24982b8c65ff97aa9d0b554e21a9e972272 (patch) | |
tree | 56b4786ce1252e3ced2b82f96b70715b0ba8b683 /drivers/net/wireless | |
parent | 86dcd937c1f0023a2337f7c14e237f718d00e300 (diff) |
brcmfmac: add hexadecimal trace of message payload
Adds a trace function used in brcmf_dbg_hex_dump() which adds the
raw binary data to the trace. It requires trace-cmd plugin to see
this data.
Reviewed-by: Piotr Haber <phaber@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
6 files changed, 19 insertions, 0 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/dhd_dbg.h b/drivers/net/wireless/brcm80211/brcmfmac/dhd_dbg.h index d259ae5d2237..009c87bfd9ae 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/dhd_dbg.h +++ b/drivers/net/wireless/brcm80211/brcmfmac/dhd_dbg.h | |||
@@ -93,6 +93,7 @@ do { \ | |||
93 | 93 | ||
94 | #define brcmf_dbg_hex_dump(test, data, len, fmt, ...) \ | 94 | #define brcmf_dbg_hex_dump(test, data, len, fmt, ...) \ |
95 | do { \ | 95 | do { \ |
96 | trace_brcmf_hexdump((void *)data, len); \ | ||
96 | if (test) \ | 97 | if (test) \ |
97 | brcmu_dbg_hex_dump(data, len, fmt, ##__VA_ARGS__); \ | 98 | brcmu_dbg_hex_dump(data, len, fmt, ##__VA_ARGS__); \ |
98 | } while (0) | 99 | } while (0) |
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c b/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c index 5d5c02cea3e0..c1cab4034958 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c +++ b/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c | |||
@@ -94,6 +94,7 @@ struct rte_console { | |||
94 | 94 | ||
95 | #include "dhd_bus.h" | 95 | #include "dhd_bus.h" |
96 | #include "dhd_dbg.h" | 96 | #include "dhd_dbg.h" |
97 | #include "tracepoint.h" | ||
97 | 98 | ||
98 | #define TXQLEN 2048 /* bulk tx queue length */ | 99 | #define TXQLEN 2048 /* bulk tx queue length */ |
99 | #define TXHI (TXQLEN - 256) /* turn on flow control above TXHI */ | 100 | #define TXHI (TXQLEN - 256) /* turn on flow control above TXHI */ |
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/fweh.c b/drivers/net/wireless/brcm80211/brcmfmac/fweh.c index dad94147b6b5..01d39a948118 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/fweh.c +++ b/drivers/net/wireless/brcm80211/brcmfmac/fweh.c | |||
@@ -20,6 +20,7 @@ | |||
20 | 20 | ||
21 | #include "dhd.h" | 21 | #include "dhd.h" |
22 | #include "dhd_dbg.h" | 22 | #include "dhd_dbg.h" |
23 | #include "tracepoint.h" | ||
23 | #include "fwsignal.h" | 24 | #include "fwsignal.h" |
24 | #include "fweh.h" | 25 | #include "fweh.h" |
25 | #include "fwil.h" | 26 | #include "fwil.h" |
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/fwil.c b/drivers/net/wireless/brcm80211/brcmfmac/fwil.c index 8d1def935b8d..04f395930d86 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/fwil.c +++ b/drivers/net/wireless/brcm80211/brcmfmac/fwil.c | |||
@@ -25,6 +25,7 @@ | |||
25 | #include "dhd.h" | 25 | #include "dhd.h" |
26 | #include "dhd_bus.h" | 26 | #include "dhd_bus.h" |
27 | #include "dhd_dbg.h" | 27 | #include "dhd_dbg.h" |
28 | #include "tracepoint.h" | ||
28 | #include "fwil.h" | 29 | #include "fwil.h" |
29 | 30 | ||
30 | 31 | ||
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/tracepoint.h b/drivers/net/wireless/brcm80211/brcmfmac/tracepoint.h index 35efc7a67644..9df1f7a681e0 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/tracepoint.h +++ b/drivers/net/wireless/brcm80211/brcmfmac/tracepoint.h | |||
@@ -73,6 +73,20 @@ TRACE_EVENT(brcmf_dbg, | |||
73 | TP_printk("%s: %s", __get_str(func), __get_str(msg)) | 73 | TP_printk("%s: %s", __get_str(func), __get_str(msg)) |
74 | ); | 74 | ); |
75 | 75 | ||
76 | TRACE_EVENT(brcmf_hexdump, | ||
77 | TP_PROTO(void *data, size_t len), | ||
78 | TP_ARGS(data, len), | ||
79 | TP_STRUCT__entry( | ||
80 | __field(unsigned long, len) | ||
81 | __dynamic_array(u8, hdata, len) | ||
82 | ), | ||
83 | TP_fast_assign( | ||
84 | __entry->len = len; | ||
85 | memcpy(__get_dynamic_array(hdata), data, len); | ||
86 | ), | ||
87 | TP_printk("hexdump [length=%lu]", __entry->len) | ||
88 | ); | ||
89 | |||
76 | #ifdef CONFIG_BRCM_TRACING | 90 | #ifdef CONFIG_BRCM_TRACING |
77 | 91 | ||
78 | #undef TRACE_INCLUDE_PATH | 92 | #undef TRACE_INCLUDE_PATH |
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c b/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c index c7459ae8254a..beba7f69577b 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c +++ b/drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c | |||
@@ -26,6 +26,7 @@ | |||
26 | #include <brcmu_wifi.h> | 26 | #include <brcmu_wifi.h> |
27 | #include "dhd.h" | 27 | #include "dhd.h" |
28 | #include "dhd_dbg.h" | 28 | #include "dhd_dbg.h" |
29 | #include "tracepoint.h" | ||
29 | #include "fwil_types.h" | 30 | #include "fwil_types.h" |
30 | #include "p2p.h" | 31 | #include "p2p.h" |
31 | #include "wl_cfg80211.h" | 32 | #include "wl_cfg80211.h" |