summary refs log tree commit diff
path: root/arch/mips/rb532
diff options
context:
space:
mode:
authorDaniel Walter <dwalter@google.com>2014-06-24 12:14:26 +0100
committerRalf Baechle <ralf@linux-mips.org>2014-07-30 13:28:16 +0200
commit9e21c7e40b7eedce5a0a6429272dc8003b6953c6 (patch)
tree569c6565b08ec80efb75b8d32acfa7e793d256b6 /arch/mips/rb532
parent1795cd9b3a91d4b5473c97f491d63892442212ab (diff)
downloadlinux-9e21c7e40b7eedce5a0a6429272dc8003b6953c6.tar.gz
MIPS: RB532: Replace parse_mac_addr() with mac_pton().
Signed-off-by: Daniel Walter <dwalter@google.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/7150/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/rb532')
-rw-r--r--arch/mips/rb532/devices.c27
1 files changed, 4 insertions, 23 deletions
diff --git a/arch/mips/rb532/devices.c b/arch/mips/rb532/devices.c
index 3af00b2a26ee..03a4cdc80226 100644
--- a/arch/mips/rb532/devices.c
+++ b/arch/mips/rb532/devices.c
@@ -250,28 +250,6 @@ static struct platform_device *rb532_devs[] = {
 	&rb532_wdt
 };
 
-static void __init parse_mac_addr(char *macstr)
-{
-	int i, h, l;
-
-	for (i = 0; i < 6; i++) {
-		if (i != 5 && *(macstr + 2) != ':')
-			return;
-
-		h = hex_to_bin(*macstr++);
-		if (h == -1)
-			return;
-
-		l = hex_to_bin(*macstr++);
-		if (l == -1)
-			return;
-
-		macstr++;
-		korina_dev0_data.mac[i] = (h << 4) + l;
-	}
-}
-
-
 /* NAND definitions */
 #define NAND_CHIP_DELAY 25
 
@@ -333,7 +311,10 @@ static int __init plat_setup_devices(void)
 static int __init setup_kmac(char *s)
 {
 	printk(KERN_INFO "korina mac = %s\n", s);
-	parse_mac_addr(s);
+	if (!mac_pton(s, korina_dev0_data.mac)) {
+		printk(KERN_ERR "Invalid mac\n");
+		return -EINVAL;
+	}
 	return 0;
 }