Re: [PATCH] alsa: 6fire: don't use custom hex_to_bin()
From: Takashi Iwai
Date: Fri Sep 23 2011 - 09:23:03 EST
At Fri, 23 Sep 2011 14:32:11 +0300,
Andy Shevchenko wrote:
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> Cc: Takashi Iwai <tiwai@xxxxxxx>
> Cc: alsa-devel@xxxxxxxxxxxxxxxx
Applied now. Thanks.
Takashi
> ---
> sound/usb/6fire/firmware.c | 25 ++++++++++++-------------
> 1 files changed, 12 insertions(+), 13 deletions(-)
>
> diff --git a/sound/usb/6fire/firmware.c b/sound/usb/6fire/firmware.c
> index 3ebbdec..3b5f517 100644
> --- a/sound/usb/6fire/firmware.c
> +++ b/sound/usb/6fire/firmware.c
> @@ -17,6 +17,7 @@
> #include <linux/firmware.h>
> #include <linux/module.h>
> #include <linux/bitrev.h>
> +#include <linux/kernel.h>
>
> #include "firmware.h"
> #include "chip.h"
> @@ -60,21 +61,19 @@ struct ihex_record {
> unsigned int txt_offset; /* current position in txt_data */
> };
>
> -static u8 usb6fire_fw_ihex_nibble(const u8 n)
> -{
> - if (n >= '0' && n <= '9')
> - return n - '0';
> - else if (n >= 'A' && n <= 'F')
> - return n - ('A' - 10);
> - else if (n >= 'a' && n <= 'f')
> - return n - ('a' - 10);
> - return 0;
> -}
> -
> static u8 usb6fire_fw_ihex_hex(const u8 *data, u8 *crc)
> {
> - u8 val = (usb6fire_fw_ihex_nibble(data[0]) << 4) |
> - usb6fire_fw_ihex_nibble(data[1]);
> + u8 val = 0;
> + int hval;
> +
> + hval = hex_to_bin(data[0]);
> + if (hval >= 0)
> + val |= (hval << 4);
> +
> + hval = hex_to_bin(data[1]);
> + if (hval >= 0)
> + val |= hval;
> +
> *crc += val;
> return val;
> }
> --
> 1.7.6.3
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/