This makes it easier to debug hex dumps on systems
with more than a single ath10k device.

Signed-off-by: Michal Kazior <[email protected]>
---
 drivers/net/wireless/ath/ath10k/debug.c | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/ath/ath10k/debug.c 
b/drivers/net/wireless/ath/ath10k/debug.c
index f1e5916..9f8dddc 100644
--- a/drivers/net/wireless/ath/ath10k/debug.c
+++ b/drivers/net/wireless/ath/ath10k/debug.c
@@ -1264,11 +1264,30 @@ void ath10k_dbg_dump(struct ath10k *ar,
                     const char *msg, const char *prefix,
                     const void *buf, size_t len)
 {
+       char linebuf[256];
+       unsigned int linebuflen;
+       const void *ptr;
+
        if (ath10k_debug_mask & mask) {
                if (msg)
                        ath10k_dbg(ar, mask, "%s\n", msg);
 
-               print_hex_dump_bytes(prefix, DUMP_PREFIX_OFFSET, buf, len);
+               for (ptr = buf; (ptr - buf) < len; ptr += 16) {
+                       linebuflen = 0;
+                       if (prefix)
+                               linebuflen += scnprintf(linebuf + linebuflen,
+                                                       sizeof(linebuf) -
+                                                       linebuflen,
+                                                       "%s", prefix);
+                       linebuflen += scnprintf(linebuf + linebuflen,
+                                               sizeof(linebuf) - linebuflen,
+                                               "%08x: ",
+                                               (unsigned int)(ptr - buf));
+                       hex_dump_to_buffer(ptr, len - (ptr - buf), 16, 1,
+                                          linebuf + linebuflen,
+                                          sizeof(linebuf) - linebuflen, true);
+                       dev_printk(KERN_DEBUG, ar->dev, "%s\n", linebuf);
+               }
        }
 
        /* tracing code doesn't like null strings :/ */
-- 
1.8.5.3

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to