[U-Boot] [Patch v4] powerpc/eeprom: cleanup mac command

York Sun yorksun at freescale.com
Thu Aug 11 17:31:50 CEST 2011


Change the help message to be more helpful. Print argument format.
Fix MAX_NUM_PORTS to comply with v1 NXID format. Accept hexadecimal and
decimal for port count and index.

Signed-off-by: York Sun <yorksun at freescale.com>
---
 board/freescale/common/sys_eeprom.c |    8 ++++----
 common/cmd_mac.c                    |   29 +++++++++++++++++------------
 2 files changed, 21 insertions(+), 16 deletions(-)

diff --git a/board/freescale/common/sys_eeprom.c b/board/freescale/common/sys_eeprom.c
index d2ed036..bd3572b 100644
--- a/board/freescale/common/sys_eeprom.c
+++ b/board/freescale/common/sys_eeprom.c
@@ -34,7 +34,7 @@
 #endif
 
 #ifdef CONFIG_SYS_I2C_EEPROM_NXID
-#define MAX_NUM_PORTS	23
+#define MAX_NUM_PORTS	31
 #define NXID_VERSION	1
 #endif
 
@@ -398,11 +398,11 @@ int do_mac(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 		set_date(argv[2]);
 		break;
 	case 'p':	/* MAC table size */
-		e.mac_count = simple_strtoul(argv[2], NULL, 16);
+		e.mac_count = simple_strtoul(argv[2], NULL, 0);
 		update_crc();
 		break;
-	case '0' ... '9':	/* "mac 0" through "mac 22" */
-		set_mac_address(simple_strtoul(argv[1], NULL, 10), argv[2]);
+	case '0' ... '9':	/* "mac 0" through "mac 31" */
+		set_mac_address(simple_strtoul(argv[1], NULL, 0), argv[2]);
 		break;
 	case 'h':	/* help */
 	default:
diff --git a/common/cmd_mac.c b/common/cmd_mac.c
index 1884c2a..bd9cc19 100644
--- a/common/cmd_mac.c
+++ b/common/cmd_mac.c
@@ -29,21 +29,26 @@ extern int do_mac(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 U_BOOT_CMD(
 	mac, 3, 1,  do_mac,
 	"display and program the system ID and MAC addresses in EEPROM",
-	"[read|save|id|num|errata|date|ports|0|1|2|3|4|5|6|7]\n"
+	"without argument\n"
+	"    - show content of system ID and MAC addresses\n"
 	"read\n"
-	"    - show content of EEPROM\n"
+	"    - read EEPROM without showing\n"
 	"mac save\n"
 	"    - save to the EEPROM\n"
 	"mac id\n"
-	"    - program system id\n"
-	"mac num\n"
-	"    - program system serial number\n"
-	"mac errata\n"
-	"    - program errata data\n"
-	"mac date\n"
-	"    - program date\n"
-	"mac ports\n"
+	"    - program system id (fixed)\n"
+	"mac num <string>\n"
+	"    - program <string> as system serial number\n"
+	"mac errata <string>\n"
+	"    - program <string> as errata data\n"
+	"mac date <YYMMDDhhmmss>\n"
+	"    - program timestamp\n"
+	"mac ports <n>\n"
 	"    - program the number of ports\n"
-	"mac X\n"
-	"    - program the MAC address for port X [X=0...7]"
+	"mac <n> <XX:XX:XX:XX:XX:XX>\n"
+#ifdef CONFIG_SYS_I2C_EEPROM_NXID
+	"    - program the MAC address for port n [n=0...30]"
+#else
+	"    - program the MAC address for port n [n=0...7]"
+#endif
 );
-- 
1.7.0.4




More information about the U-Boot mailing list