diff options
author | Andy Shevchenko <ext-andriy.shevchenko@nokia.com> | 2010-06-15 17:25:38 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-06-22 15:02:17 -0700 |
commit | 3ff16c257a103febb63a92f305043fc36c83e9ad (patch) | |
tree | 0b519f294acf21ee265820074ebf52d28fecf9e2 /drivers/staging/comedi | |
parent | 600cec3ed0a08f62712c6d3c5fea2fcb8b7e3675 (diff) | |
download | op-kernel-dev-3ff16c257a103febb63a92f305043fc36c83e9ad.zip op-kernel-dev-3ff16c257a103febb63a92f305043fc36c83e9ad.tar.gz |
Staging: don't use custom hex_to_bin() implementation
Signed-off-by: Andy Shevchenko <ext-andriy.shevchenko@nokia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/comedi')
-rw-r--r-- | drivers/staging/comedi/drivers/jr3_pci.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/staging/comedi/drivers/jr3_pci.c b/drivers/staging/comedi/drivers/jr3_pci.c index ba900a8..8b383ee 100644 --- a/drivers/staging/comedi/drivers/jr3_pci.c +++ b/drivers/staging/comedi/drivers/jr3_pci.c @@ -48,6 +48,7 @@ Devices: [JR3] PCI force sensor board (jr3_pci) #include <linux/jiffies.h> #include <linux/slab.h> #include <linux/timer.h> +#include <linux/kernel.h> #include "comedi_pci.h" #include "jr3_pci.h" @@ -397,14 +398,14 @@ int read_idm_word(const u8 * data, size_t size, int *pos, unsigned int *val) } /* Collect value */ *val = 0; - for (; *pos < size && isxdigit(data[*pos]); (*pos)++) { - char ch = tolower(data[*pos]); - result = 1; - if ('0' <= ch && ch <= '9') { - *val = (*val << 4) + (ch - '0'); - } else if ('a' <= ch && ch <= 'f') { - *val = (*val << 4) + (ch - 'a' + 10); - } + for (; *pos < size; (*pos)++) { + int value; + value = hex_to_bin(data[*pos]); + if (value >= 0) { + result = 1; + *val = (*val << 4) + value; + } else + break; } } return result; |