staging: wlan-ng: use %*pEhp to print SN
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 13 Oct 2014 22:55:29 +0000 (15:55 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 14 Oct 2014 00:18:27 +0000 (02:18 +0200)
This is a generic specifier to print an escaped buffer by given criteria.
Let's use it instead of custom approach.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: "John W . Linville" <linville@tuxdriver.com>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Joe Perches <joe@perches.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/staging/wlan-ng/prism2sta.c

index 799ce8a..df577df 100644 (file)
@@ -60,7 +60,6 @@
 #include <linux/netdevice.h>
 #include <linux/workqueue.h>
 #include <linux/byteorder/generic.h>
-#include <linux/ctype.h>
 
 #include <linux/io.h>
 #include <linux/delay.h>
 #include "hfa384x.h"
 #include "prism2mgmt.h"
 
-/* Create a string of printable chars from something that might not be */
-/* It's recommended that the str be 4*len + 1 bytes long */
-#define wlan_mkprintstr(buf, buflen, str, strlen) \
-{ \
-       int i = 0; \
-       int j = 0; \
-       memset(str, 0, (strlen)); \
-       for (i = 0; i < (buflen); i++) { \
-               if (isprint((buf)[i])) { \
-                       (str)[j] = (buf)[i]; \
-                       j++; \
-               } else { \
-                       (str)[j] = '\\'; \
-                       (str)[j+1] = 'x'; \
-                       (str)[j+2] = hex_asc_hi((buf)[i]); \
-                       (str)[j+3] = hex_asc_lo((buf)[i]); \
-                       j += 4; \
-               } \
-       } \
-}
-
 static char *dev_info = "prism2_usb";
 static wlandevice_t *create_wlan(void);
 
@@ -607,7 +585,6 @@ static int prism2sta_getcardinfo(wlandevice_t *wlandev)
        hfa384x_t *hw = (hfa384x_t *) wlandev->priv;
        u16 temp;
        u8 snum[HFA384x_RID_NICSERIALNUMBER_LEN];
-       char pstr[(HFA384x_RID_NICSERIALNUMBER_LEN * 4) + 1];
 
        /* Collect version and compatibility info */
        /*  Some are critical, some are not */
@@ -862,9 +839,8 @@ static int prism2sta_getcardinfo(wlandevice_t *wlandev)
        result = hfa384x_drvr_getconfig(hw, HFA384x_RID_NICSERIALNUMBER,
                                        snum, HFA384x_RID_NICSERIALNUMBER_LEN);
        if (!result) {
-               wlan_mkprintstr(snum, HFA384x_RID_NICSERIALNUMBER_LEN,
-                               pstr, sizeof(pstr));
-               netdev_info(wlandev->netdev, "Prism2 card SN: %s\n", pstr);
+               netdev_info(wlandev->netdev, "Prism2 card SN: %*pEhp\n",
+                           HFA384x_RID_NICSERIALNUMBER_LEN, snum);
        } else {
                netdev_err(wlandev->netdev, "Failed to retrieve Prism2 Card SN\n");
                goto failed;