diff options
Diffstat (limited to 'drivers/usb/gadget/u_ether.c')
-rw-r--r-- | drivers/usb/gadget/u_ether.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/drivers/usb/gadget/u_ether.c b/drivers/usb/gadget/u_ether.c index 1da755a1c855..6bb876d65252 100644 --- a/drivers/usb/gadget/u_ether.c +++ b/drivers/usb/gadget/u_ether.c | |||
@@ -704,17 +704,6 @@ static char *host_addr; | |||
704 | module_param(host_addr, charp, S_IRUGO); | 704 | module_param(host_addr, charp, S_IRUGO); |
705 | MODULE_PARM_DESC(host_addr, "Host Ethernet Address"); | 705 | MODULE_PARM_DESC(host_addr, "Host Ethernet Address"); |
706 | 706 | ||
707 | |||
708 | static u8 __init nibble(unsigned char c) | ||
709 | { | ||
710 | if (isdigit(c)) | ||
711 | return c - '0'; | ||
712 | c = toupper(c); | ||
713 | if (isxdigit(c)) | ||
714 | return 10 + c - 'A'; | ||
715 | return 0; | ||
716 | } | ||
717 | |||
718 | static int get_ether_addr(const char *str, u8 *dev_addr) | 707 | static int get_ether_addr(const char *str, u8 *dev_addr) |
719 | { | 708 | { |
720 | if (str) { | 709 | if (str) { |
@@ -725,8 +714,8 @@ static int get_ether_addr(const char *str, u8 *dev_addr) | |||
725 | 714 | ||
726 | if ((*str == '.') || (*str == ':')) | 715 | if ((*str == '.') || (*str == ':')) |
727 | str++; | 716 | str++; |
728 | num = nibble(*str++) << 4; | 717 | num = hex_to_bin(*str++) << 4; |
729 | num |= (nibble(*str++)); | 718 | num |= hex_to_bin(*str++); |
730 | dev_addr [i] = num; | 719 | dev_addr [i] = num; |
731 | } | 720 | } |
732 | if (is_valid_ether_addr(dev_addr)) | 721 | if (is_valid_ether_addr(dev_addr)) |