Module Name:    src
Committed By:   jmcneill
Date:           Tue Jan  6 00:43:21 UTC 2015

Modified Files:
        src/sys/arch/arm/arm: bootconfig.c
        src/sys/arch/arm/include: bootconfig.h

Log Message:
add BOOTOPT_TYPE_MACADDR for parsing mac address parameters


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/arch/arm/arm/bootconfig.c
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/arm/include/bootconfig.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/arm/bootconfig.c
diff -u src/sys/arch/arm/arm/bootconfig.c:1.7 src/sys/arch/arm/arm/bootconfig.c:1.8
--- src/sys/arch/arm/arm/bootconfig.c:1.7	Fri Sep  5 05:24:53 2014
+++ src/sys/arch/arm/arm/bootconfig.c	Tue Jan  6 00:43:21 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: bootconfig.c,v 1.7 2014/09/05 05:24:53 matt Exp $	*/
+/*	$NetBSD: bootconfig.c,v 1.8 2015/01/06 00:43:21 jmcneill Exp $	*/
 
 /*
  * Copyright (c) 1994-1998 Mark Brinicombe.
@@ -36,14 +36,20 @@
  * SUCH DAMAGE.
  */
 
+#include "ether.h"
+
 #include <sys/param.h>
 
-__KERNEL_RCSID(0, "$NetBSD: bootconfig.c,v 1.7 2014/09/05 05:24:53 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: bootconfig.c,v 1.8 2015/01/06 00:43:21 jmcneill Exp $");
 
 #include <sys/systm.h>
 
 #include <machine/bootconfig.h>
 
+#if NETHER > 0
+#include <net/if_ether.h>
+#endif
+
 /* 
  * Function to identify and process different types of boot argument
  * Note, results may contain trailing data, eg:
@@ -116,6 +122,18 @@ get_bootconf_option(char *opts, const ch
 					*((int *)result) =
 					    (u_int)strtoul(ptr, NULL, 16);
 					break;
+#if NETHER > 0
+				case BOOTOPT_TYPE_MACADDR : {
+					char mac[18];
+					if (strlen(ptr) < ETHER_ADDR_LEN)
+						return 0;
+					strlcpy(mac, ptr, sizeof(mac));
+					if (ether_aton_r((u_char *)result,
+							 ETHER_ADDR_LEN, mac))
+						return 0;
+					break;
+				}
+#endif
 				default:
 					return 0;
 				}

Index: src/sys/arch/arm/include/bootconfig.h
diff -u src/sys/arch/arm/include/bootconfig.h:1.6 src/sys/arch/arm/include/bootconfig.h:1.7
--- src/sys/arch/arm/include/bootconfig.h:1.6	Fri Aug 31 23:59:52 2012
+++ src/sys/arch/arm/include/bootconfig.h	Tue Jan  6 00:43:21 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: bootconfig.h,v 1.6 2012/08/31 23:59:52 matt Exp $	*/
+/*	$NetBSD: bootconfig.h,v 1.7 2015/01/06 00:43:21 jmcneill Exp $	*/
 
 /*
  * Copyright (c) 1994 Mark Brinicombe.
@@ -42,6 +42,7 @@
 #define BOOTOPT_TYPE_INT		2
 #define BOOTOPT_TYPE_BININT		3
 #define BOOTOPT_TYPE_HEXINT		4
+#define BOOTOPT_TYPE_MACADDR		5
 #define BOOTOPT_TYPE_MASK		7
 
 struct boot_physmem {

Reply via email to