Patchwork [U-Boot,v2] powerpc/eeprom: cleanup mac command

login
register
mail settings
Submitter York Sun
Date Aug. 10, 2011, 2:56 p.m.
Message ID <1312988191-26950-1-git-send-email-yorksun@freescale.com>
Download mbox | patch
Permalink /patch/109382/
State Superseded
Headers show

Comments

York Sun - Aug. 10, 2011, 2:56 p.m.
Change the help message to be more helpful. Print argument format.
Fix MAX_NUM_PORTS to comply with v1 NXID format.

Signed-off-by: York Sun <yorksun@freescale.com>
---
 board/freescale/common/sys_eeprom.c |    2 +-
 common/cmd_mac.c                    |   29 +++++++++++++++++------------
 2 files changed, 18 insertions(+), 13 deletions(-)
Tabi Timur-B04825 - Aug. 11, 2011, 1:27 a.m.
York Sun wrote:
> Change the help message to be more helpful. Print argument format.
> Fix MAX_NUM_PORTS to comply with v1 NXID format.
>
> Signed-off-by: York Sun<yorksun@freescale.com>

Could you also fix the commands so that they take a number in decimal 
instead of hex?


         e.mac[index][i] = simple_strtoul(p, &p, 16);

...

	e.mac_count = simple_strtoul(argv[2], NULL, 16);

I know U-Boot uses hex for everything, but it doesn't make sense for 
this command.
Mike Frysinger - Aug. 11, 2011, 1:34 a.m.
On Wednesday, August 10, 2011 21:27:28 Tabi Timur-B04825 wrote:
> York Sun wrote:
> > Change the help message to be more helpful. Print argument format.
> > Fix MAX_NUM_PORTS to comply with v1 NXID format.
> > 
> > Signed-off-by: York Sun<yorksun@freescale.com>
> 
> Could you also fix the commands so that they take a number in decimal
> instead of hex?
> 
> 
>          e.mac[index][i] = simple_strtoul(p, &p, 16);
> 
> ...
> 
> 	e.mac_count = simple_strtoul(argv[2], NULL, 16);
> 
> I know U-Boot uses hex for everything, but it doesn't make sense for
> this command.

change it to 0 and then both should work
-mike
York Sun - Aug. 11, 2011, 2:35 p.m.
On Wed, 2011-08-10 at 20:27 -0500, Tabi Timur-B04825 wrote:
> York Sun wrote:
> > Change the help message to be more helpful. Print argument format.
> > Fix MAX_NUM_PORTS to comply with v1 NXID format.
> >
> > Signed-off-by: York Sun<yorksun@freescale.com>
> 
> Could you also fix the commands so that they take a number in decimal 
> instead of hex?
> 
> 
>          e.mac[index][i] = simple_strtoul(p, &p, 16);
> 
> ...
> 
> 	e.mac_count = simple_strtoul(argv[2], NULL, 16);
> 
> I know U-Boot uses hex for everything, but it doesn't make sense for 
> this command.


Yes, I can change it. But not all of them. We use hexadecimal for mac
address but not the count of ports. Please comment on my next version.

York

Patch

diff --git a/board/freescale/common/sys_eeprom.c b/board/freescale/common/sys_eeprom.c
index d2ed036..ebcdfd8 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
 
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
 );