diff options
author | Andy Shevchenko <ext-andriy.shevchenko@nokia.com> | 2010-05-24 17:33:25 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-25 11:07:05 -0400 |
commit | 96b89f323d6af996a7f6bd84d2119cbf7145f9a4 (patch) | |
tree | b709a9586f1be9f4fb06797e354b2bc316f6152c /drivers/usb/atm | |
parent | 0496b55c56d0be80e27f417f66690d97e5370f86 (diff) |
usb: atm: speedtch: use new hex_to_bin() method
Instead of using own implementation which potentialy has bugs involve
hex_to_bin() function. It requires to have hex_to_bin() implementation
introduced by starter patch in series.
Signed-off-by: Andy Shevchenko <ext-andriy.shevchenko@nokia.com>
Cc: Duncan Sands <duncan.sands@free.fr>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/usb/atm')
-rw-r--r-- | drivers/usb/atm/speedtch.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/usb/atm/speedtch.c b/drivers/usb/atm/speedtch.c index 1e9ba4bdffef..1335456b4f93 100644 --- a/drivers/usb/atm/speedtch.c +++ b/drivers/usb/atm/speedtch.c | |||
@@ -127,8 +127,6 @@ MODULE_PARM_DESC(ModemOption, "default: 0x10,0x00,0x00,0x00,0x20"); | |||
127 | #define ENDPOINT_ISOC_DATA 0x07 | 127 | #define ENDPOINT_ISOC_DATA 0x07 |
128 | #define ENDPOINT_FIRMWARE 0x05 | 128 | #define ENDPOINT_FIRMWARE 0x05 |
129 | 129 | ||
130 | #define hex2int(c) ( (c >= '0') && (c <= '9') ? (c - '0') : ((c & 0xf) + 9) ) | ||
131 | |||
132 | struct speedtch_params { | 130 | struct speedtch_params { |
133 | unsigned int altsetting; | 131 | unsigned int altsetting; |
134 | unsigned int BMaxDSL; | 132 | unsigned int BMaxDSL; |
@@ -669,7 +667,8 @@ static int speedtch_atm_start(struct usbatm_data *usbatm, struct atm_dev *atm_de | |||
669 | memset(atm_dev->esi, 0, sizeof(atm_dev->esi)); | 667 | memset(atm_dev->esi, 0, sizeof(atm_dev->esi)); |
670 | if (usb_string(usb_dev, usb_dev->descriptor.iSerialNumber, mac_str, sizeof(mac_str)) == 12) { | 668 | if (usb_string(usb_dev, usb_dev->descriptor.iSerialNumber, mac_str, sizeof(mac_str)) == 12) { |
671 | for (i = 0; i < 6; i++) | 669 | for (i = 0; i < 6; i++) |
672 | atm_dev->esi[i] = (hex2int(mac_str[i * 2]) * 16) + (hex2int(mac_str[i * 2 + 1])); | 670 | atm_dev->esi[i] = (hex_to_bin(mac_str[i * 2]) << 4) + |
671 | hex_to_bin(mac_str[i * 2 + 1]); | ||
673 | } | 672 | } |
674 | 673 | ||
675 | /* Start modem synchronisation */ | 674 | /* Start modem synchronisation */ |