diff options
author | Andy Shevchenko <ext-andriy.shevchenko@nokia.com> | 2010-06-15 17:26:28 +0300 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2010-06-17 09:34:58 +0200 |
commit | c9ff921abecda352e987a6aae169118a3fc9aa5d (patch) | |
tree | bffc7cd2e27fb100d8981a4016833f4be771cebc /sound/pci/riptide | |
parent | bcfde3347cadfc8967e9481b5a9ceae16ef95e38 (diff) |
ALSA: alsa: riptide: don't use own hex_to_bin() method
Signed-off-by: Andy Shevchenko <ext-andriy.shevchenko@nokia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/riptide')
-rw-r--r-- | sound/pci/riptide/riptide.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/sound/pci/riptide/riptide.c b/sound/pci/riptide/riptide.c index ad4462677615..59d79962f236 100644 --- a/sound/pci/riptide/riptide.c +++ b/sound/pci/riptide/riptide.c @@ -97,6 +97,7 @@ #include <linux/gameport.h> #include <linux/device.h> #include <linux/firmware.h> +#include <linux/kernel.h> #include <asm/io.h> #include <sound/core.h> #include <sound/info.h> @@ -667,13 +668,12 @@ static u32 atoh(const unsigned char *in, unsigned int len) unsigned char c; while (len) { + int value; + c = in[len - 1]; - if ((c >= '0') && (c <= '9')) - sum += mult * (c - '0'); - else if ((c >= 'A') && (c <= 'F')) - sum += mult * (c - ('A' - 10)); - else if ((c >= 'a') && (c <= 'f')) - sum += mult * (c - ('a' - 10)); + value = hex_to_bin(c); + if (value >= 0) + sum += mult * value; mult *= 16; --len; } |