Return-path: Received: from c60.cesmail.net ([216.154.195.49]:21660 "EHLO c60.cesmail.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753644Ab1I1UlL (ORCPT ); Wed, 28 Sep 2011 16:41:11 -0400 Date: Wed, 28 Sep 2011 16:40:57 -0400 From: Pavel Roskin To: Andy Shevchenko Cc: linux-wireless@vger.kernel.org, "John W. Linville" Subject: Re: [PATCHv3] wireless: at76c50x: use native hex_pack_byte() method Message-ID: <20110928164057.27ba264f@mj> (sfid-20110928_224114_563935_33E915EF) In-Reply-To: References: <20110927154739.2cd368d5@mj> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-wireless-owner@vger.kernel.org List-ID: On Wed, 28 Sep 2011 12:30:59 +0300 Andy Shevchenko wrote: > Signed-off-by: Andy Shevchenko > Cc: "John W. Linville" Tested-by: Pavel Roskin > --- > drivers/net/wireless/at76c50x-usb.c | 18 ++++++++---------- > 1 files changed, 8 insertions(+), 10 deletions(-) > > diff --git a/drivers/net/wireless/at76c50x-usb.c > b/drivers/net/wireless/at76c50x-usb.c index 2986014..39322d4 100644 > --- a/drivers/net/wireless/at76c50x-usb.c > +++ b/drivers/net/wireless/at76c50x-usb.c > @@ -500,10 +500,9 @@ exit: > > #define HEX2STR_BUFFERS 4 > #define HEX2STR_MAX_LEN 64 > -#define BIN2HEX(x) ((x) < 10 ? '0' + (x) : (x) + 'A' - 10) > > /* Convert binary data into hex string */ > -static char *hex2str(void *buf, int len) > +static char *hex2str(void *buf, size_t len) > { > static atomic_t a = ATOMIC_INIT(0); > static char bufs[HEX2STR_BUFFERS][3 * HEX2STR_MAX_LEN + 1]; > @@ -514,18 +513,17 @@ static char *hex2str(void *buf, int len) > if (len > HEX2STR_MAX_LEN) > len = HEX2STR_MAX_LEN; > > - if (len <= 0) { > - ret[0] = '\0'; > - return ret; > - } > + if (len == 0) > + goto exit; > > while (len--) { > - *obuf++ = BIN2HEX(*ibuf >> 4); > - *obuf++ = BIN2HEX(*ibuf & 0xf); > + obuf = pack_hex_byte(obuf, *ibuf++); > *obuf++ = '-'; > - ibuf++; > } > - *(--obuf) = '\0'; > + obuf--; > + > +exit: > + *obuf = '\0'; > > return ret; > } -- Regards, Pavel Roskin