All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3] arch/mips/rb532: replace mac_addr parsing
@ 2014-06-24 11:14 Daniel Walter
  2014-06-24 12:55   ` James Hogan
  0 siblings, 1 reply; 3+ messages in thread
From: Daniel Walter @ 2014-06-24 11:14 UTC (permalink / raw)
  To: Ralf Baechle; +Cc: james.hogan, linux-mips, linux-kernel

Replace parse_mac_addr with mac_pton().


Signed-off-by: Daniel Walter <dwalter@google.com>
---
Changes since v2
  Use mac_pton() instead of sscanf()
  added error handling in case could not be parsed
---
Patch applies against current linux-git
---
 arch/mips/rb532/devices.c | 27 ++++-----------------------
 1 file changed, 4 insertions(+), 23 deletions(-)
---
diff --git a/arch/mips/rb532/devices.c b/arch/mips/rb532/devices.c
index 3af00b2..03a4cdc 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;
 }
 

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v3] arch/mips/rb532: replace mac_addr parsing
@ 2014-06-24 12:55   ` James Hogan
  0 siblings, 0 replies; 3+ messages in thread
From: James Hogan @ 2014-06-24 12:55 UTC (permalink / raw)
  To: Daniel Walter, Ralf Baechle; +Cc: linux-mips, linux-kernel

On 24/06/14 12:14, Daniel Walter wrote:
> Replace parse_mac_addr with mac_pton().
> 
> 
> Signed-off-by: Daniel Walter <dwalter@google.com>

Reviewed-by: James Hogan <james.hogan@imgtec.com>

Cheers
James

> ---
> Changes since v2
>   Use mac_pton() instead of sscanf()
>   added error handling in case could not be parsed
> ---
> Patch applies against current linux-git
> ---
>  arch/mips/rb532/devices.c | 27 ++++-----------------------
>  1 file changed, 4 insertions(+), 23 deletions(-)
> ---
> diff --git a/arch/mips/rb532/devices.c b/arch/mips/rb532/devices.c
> index 3af00b2..03a4cdc 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;
>  }
>  
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v3] arch/mips/rb532: replace mac_addr parsing
@ 2014-06-24 12:55   ` James Hogan
  0 siblings, 0 replies; 3+ messages in thread
From: James Hogan @ 2014-06-24 12:55 UTC (permalink / raw)
  To: Daniel Walter, Ralf Baechle; +Cc: linux-mips, linux-kernel

On 24/06/14 12:14, Daniel Walter wrote:
> Replace parse_mac_addr with mac_pton().
> 
> 
> Signed-off-by: Daniel Walter <dwalter@google.com>

Reviewed-by: James Hogan <james.hogan@imgtec.com>

Cheers
James

> ---
> Changes since v2
>   Use mac_pton() instead of sscanf()
>   added error handling in case could not be parsed
> ---
> Patch applies against current linux-git
> ---
>  arch/mips/rb532/devices.c | 27 ++++-----------------------
>  1 file changed, 4 insertions(+), 23 deletions(-)
> ---
> diff --git a/arch/mips/rb532/devices.c b/arch/mips/rb532/devices.c
> index 3af00b2..03a4cdc 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;
>  }
>  
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-06-24 12:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-24 11:14 [PATCH v3] arch/mips/rb532: replace mac_addr parsing Daniel Walter
2014-06-24 12:55 ` James Hogan
2014-06-24 12:55   ` James Hogan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.