net: kirkwood: updates: used eth_setenv_enetaddr api
PATCH 1/1 net: kirkwood: updates: used eth_setenv_enetaddr api
eth_setenv_enetaddr is avaible by upper layer
using this saves 204 bytes on total image size
--- drivers/net/kirkwood_egiga.c | 13 ++++++++----- 1 files changed, 8 insertions(+), 5 deletions(-)
drivers/net/kirkwood_egiga.c +8 -5
@@ -606,7 +606,7 @@ int kirkwood_egiga_initialize(bd_t * bis)struct kwgbe_device *dkwgbe;struct eth_device *dev;int devnum; -char *s, buf[NAMESIZE *2 ]; +char *s;u8 used_ports[MAX_KWGBE_DEVS ] =CONFIG_KIRKWOOD_EGIGA_PORTS ;for (devnum =0 ; devnum <MAX_KWGBE_DEVS ; devnum++) {
@@ -665,10 +665,13 @@ int kirkwood_egiga_initialize(bd_t * bis)while (!eth_getenv_enetaddr (s, dev->enetaddr)) {/* Generate Ramdom MAC addresses if not set */ -sprintf (buf,"00:50:43:%02x:%02x:%02x" , -get_random_hex (),get_random_hex (), -get_random_hex ()); -setenv (s, buf); + dev->enetaddr[0 ] =0x00 ; + dev->enetaddr[1 ] =0x50 ; + dev->enetaddr[2 ] =0x43 ; + dev->enetaddr[3 ] =get_random_hex (); + dev->enetaddr[4 ] =get_random_hex (); + dev->enetaddr[5 ] =get_random_hex (); +eth_setenv_enetaddr (s, dev->enetaddr); } dev->init = (void *)kwgbe_init;
Signature · 1 line
1.5.3.3
PATCH 1/1 net: kirkwood: updates: used eth_setenv_enetaddr api
Quoted 26 lines · Prafulla Wadaskar
eth_setenv_enetaddris avaible by upper layer
using this saves 204 bytes on total image sizeSigned-off-by Prafulla Wadaskar <[email protected]>--- drivers/net/kirkwood_egiga.c | 13 ++++++++----- 1 files changed, 8 insertions(+), 5 deletions(-)drivers/net/kirkwood_egiga.c +1
-2@@ -606,7 +606,7 @@ int kirkwood_egiga_initialize(bd_t * bis)struct kwgbe_device *dkwgbe;struct eth_device *dev;int devnum; -char *s, buf[NAMESIZE *2 ]; +char *s;u8 used_ports[MAX_KWGBE_DEVS ] =CONFIG_KIRKWOOD_EGIGA_PORTS ;for (devnum =0 ; devnum <MAX_KWGBE_DEVS ; devnum++) {@@ -665,10 +665,13 @@ int kirkwood_egiga_initialize(bd_t * bis)while (!eth_getenv_enetaddr (s, dev->enetaddr)) {/* Generate Ramdom MAC addresses if not set */ - sprintf(buf, "00:50:43:%02x:%02x:%02x",
drivers/net/kirkwood_egiga.c int kirkwood_egiga_initialize(bd_t * bis) · line 674
Quoted 10 lines
drivers/net/kirkwood_egiga.c +7
-3-get_random_hex (),get_random_hex (), - get_random_hex()); -setenv (s, buf); + dev->enetaddr[0 ] =0x00 ; + dev->enetaddr[1 ] =0x50 ; + dev->enetaddr[2 ] =0x43 ; + dev->enetaddr[3 ] =get_random_hex (); + dev->enetaddr[4 ] =get_random_hex (); + dev->enetaddr[5 ] =get_random_hex (); +eth_setenv_enetaddr (s, dev->enetaddr);
it will be also good to use a private mac address
dev->enetaddr[0] = 0x02;
Best Regards,
J.
PATCH 1/1 net: kirkwood: updates: used eth_setenv_enetaddr api
Quoted 40 lines · Jean-Christophe PLAGNIOL-VILLARD
Quoted 27 lines · Prafulla Wadaskar
eth_setenv_enetaddris avaible by upper layer
using this saves 204 bytes on total image sizeSigned-off-by Prafulla Wadaskar <[email protected]>--- drivers/net/kirkwood_egiga.c | 13 ++++++++----- 1 files changed, 8 insertions(+), 5 deletions(-)drivers/net/kirkwood_egiga.c +1
-3@@ -606,7 +606,7 @@ int kirkwood_egiga_initialize(bd_t * bis)struct kwgbe_device *dkwgbe;struct eth_device *dev;int devnum; -char *s, buf[NAMESIZE *2 ]; +char *s;u8 used_ports[MAX_KWGBE_DEVS ] =CONFIG_KIRKWOOD_EGIGA_PORTS ;for (devnum =0 ; devnum <MAX_KWGBE_DEVS ; devnum++) {@@ -665,10 +665,13 @@ int kirkwood_egiga_initialize(bd_t * bis)while (!eth_getenv_enetaddr (s, dev->enetaddr)) {/* Generate Ramdom MAC addresses if not set */ - sprintf(buf, "00:50:43:%02x:%02x:%02x", - get_random_hex(), get_random_hex(),drivers/net/kirkwood_egiga.c int kirkwood_egiga_initialize(bd_t * bis) · line 675
Quoted 10 lines
drivers/net/kirkwood_egiga.c +7
-2- get_random_hex()); -setenv (s, buf); + dev->enetaddr[0 ] =0x00 ; + dev->enetaddr[1 ] =0x50 ; + dev->enetaddr[2 ] =0x43 ; + dev->enetaddr[3 ] =get_random_hex (); + dev->enetaddr[4 ] =get_random_hex (); + dev->enetaddr[5 ] =get_random_hex (); +eth_setenv_enetaddr (s, dev->enetaddr);it will be also good to use a private mac address
Quoted 3 lines
dev->enetaddr[0] = 0x02;
Full ACK. If you're generating something random, it MUST have the private bit. Unless Marvell owns this block and is giving it away and is keeping track of all used numbers and ...
regards,
Ben
PATCH v2 1/1 net: kirkwood: updates: used eth_setenv_enetaddr api
eth_setenv_enetaddr is avaible by upper layer using this saves 204 bytes on total image size
used Local OUI instead of Marvell OUI for random MAC address generation logic
---
Change log
v2: updated as per feedback for v1 private MAC address used
typos corrected
drivers/net/kirkwood_egiga.c | 15 +++++++++------ 1 files changed, 9 insertions(+), 6 deletions(-)
drivers/net/kirkwood_egiga.c +9 -6
@@ -592,7 +592,7 @@ int kirkwood_egiga_initialize(bd_t * bis)struct kwgbe_device *dkwgbe;struct eth_device *dev;int devnum; -char *s, buf[NAMESIZE *2 ]; +char *s;u8 used_ports[MAX_KWGBE_DEVS ] =CONFIG_KIRKWOOD_EGIGA_PORTS ;for (devnum =0 ; devnum <MAX_KWGBE_DEVS ; devnum++) {
@@ -650,11 +650,14 @@ int kirkwood_egiga_initialize(bd_t * bis) }while (!eth_getenv_enetaddr (s, dev->enetaddr)) { -/* Generate Ramdom MAC addresses if not set */ -sprintf (buf,"00:50:43:%02x:%02x:%02x" , -get_random_hex (),get_random_hex (), -get_random_hex ()); -setenv (s, buf); +/* Generate Random Private MAC addr if not set */ + dev->enetaddr[0 ] =0x02 ; + dev->enetaddr[1 ] =0x50 ; + dev->enetaddr[2 ] =0x43 ; + dev->enetaddr[3 ] =get_random_hex (); + dev->enetaddr[4 ] =get_random_hex (); + dev->enetaddr[5 ] =get_random_hex (); +eth_setenv_enetaddr (s, dev->enetaddr); } dev->init = (void *)kwgbe_init;
Signature · 1 line
1.5.3.3
Ben Warren
AppliedPATCH v2 1/1 net: kirkwood: updates: used eth_setenv_enetaddr api
Prafulla,
Quoted 8 lines · Prafulla Wadaskar
eth_setenv_enetaddris avaible by upper layer
using this saves 204 bytes on total image sizeused Local OUI instead of Marvell OUI for
random MAC address generation logicSigned-off-by Prafulla Wadaskar <[email protected]>---
Applied to net repo.
thanks,
Ben
PATCH 1/1 net: kirkwood: updates: used eth_setenv_enetaddr api
In reply to Ben WarrenQuoted 42 lines · On Friday 07 August 2009 17:37:51 Ben Warren wrote:
Quoted 39 lines · Jean-Christophe PLAGNIOL-VILLARD
Quoted 26 lines · Prafulla Wadaskar
eth_setenv_enetaddris avaible by upper layer
using this saves 204 bytes on total image sizeSigned-off-by Prafulla Wadaskar <[email protected]>--- drivers/net/kirkwood_egiga.c | 13 ++++++++----- 1 files changed, 8 insertions(+), 5 deletions(-)drivers/net/kirkwood_egiga.c +1
-2@@ -606,7 +606,7 @@ int kirkwood_egiga_initialize(bd_t * bis)struct kwgbe_device *dkwgbe;struct eth_device *dev;int devnum; -char *s, buf[NAMESIZE *2 ]; +char *s;u8 used_ports[MAX_KWGBE_DEVS ] =CONFIG_KIRKWOOD_EGIGA_PORTS ;for (devnum =0 ; devnum <MAX_KWGBE_DEVS ; devnum++) {@@ -665,10 +665,13 @@ int kirkwood_egiga_initialize(bd_t * bis)while (!eth_getenv_enetaddr (s, dev->enetaddr)) {/* Generate Ramdom MAC addresses if not set */ - sprintf(buf, "00:50:43:%02x:%02x:%02x",drivers/net/kirkwood_egiga.c int kirkwood_egiga_initialize(bd_t * bis) · line 674
Quoted 10 lines
drivers/net/kirkwood_egiga.c +7
-3-get_random_hex (),get_random_hex (), - get_random_hex()); -setenv (s, buf); + dev->enetaddr[0 ] =0x00 ; + dev->enetaddr[1 ] =0x50 ; + dev->enetaddr[2 ] =0x43 ; + dev->enetaddr[3 ] =get_random_hex (); + dev->enetaddr[4 ] =get_random_hex (); + dev->enetaddr[5 ] =get_random_hex (); +eth_setenv_enetaddr (s, dev->enetaddr);it will be also good to use a private mac address
Quoted 1 line
dev->enetaddr[0] = 0x02;
Quoted 3 lines
Full ACK. If you're generating something random, it MUST have the private bit. Unless Marvell owns this block and is giving it away and is keeping track of all used numbers and ...
really we should add a new common eth function that generates a random local mac address ... and have each arch implement a random function. you can see the one i use for Blackfin systems in asm-blackfin/net.h ...
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.denx.de/pipermail/u-boot/attachments/20090813/f95b5a9e/attachment.pgp
PATCH 1/1 net: kirkwood: updates: used eth_setenv_enetaddr api
Quoted 61 lines
-----Original Message-----
From: u-boot-bounces at lists.denx.de [mailto:u-boot-bounces at lists.denx.de] On Behalf Of Mike Frysinger
Sent: Thursday, August 13, 2009 10:47 AM
To: u-boot at lists.denx.de
Cc: Ashish Karkare; Prabhanjan Sarnaik; Ben Warren
Subject: Re: [U-Boot] [PATCH] net: kirkwood: updates: usedeth_setenv_enetaddrapiQuoted 3 lines · On Friday 07 August 2009 17:37:51 Ben Warren wrote:
Quoted 2 lines · Jean-Christophe PLAGNIOL-VILLARD
Quoted 1 line · Prafulla Wadaskar
eth_setenv_enetaddris avaible by upper layer using thissaves 204
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
bytes on total image size
Signed-off-by Prafulla Wadaskar <[email protected]>--- drivers/net/kirkwood_egiga.c | 13 ++++++++----- 1 files changed, 8 insertions(+), 5 deletions(-)Quoted 11 lines
Quoted 11 lines
drivers/net/kirkwood_egiga.c int kirkwood_egiga_initialize(bd_t * bis) · line 610
Quoted 11 lines
(quoted diff) +0
-0
b/drivers/net/kirkwood_egiga.cindex 3d908f8..1a208f2 100644drivers/net/kirkwood_egiga.c +1
-1@@ -606,7 +606,7 @@ int kirkwood_egiga_initialize(bd_t * bis)struct kwgbe_device *dkwgbe;struct eth_device *dev;int devnum; -char *s, buf[NAMESIZE *2 ]; +char *s; u8 used_ports[MAX_KWGBE_DEVS] =
CONFIG_KIRKWOOD_EGIGA_PORTS;Quoted 2 lines
Quoted 2 lines
drivers/net/kirkwood_egiga.c int kirkwood_egiga_initialize(bd_t * bis) · line 611
Quoted 2 lines
drivers/net/kirkwood_egiga.c +0
-0for (devnum = 0; devnum < MAX_KWGBE_DEVS;devnum++) { @@ -665,10
Quoted 4 lines
Quoted 4 lines
drivers/net/kirkwood_egiga.c int kirkwood_egiga_initialize(bd_t * bis)
Quoted 4 lines
drivers/net/kirkwood_egiga.c +1
-0+665,13 @@ int kirkwood_egiga_initialize(bd_t * bis) while (!eth_getenv_enetaddr(s, dev->enetaddr)) {/* Generate Ramdom MAC addresses if not set */
Quoted 2 lines
Quoted 2 lines
drivers/net/kirkwood_egiga.c
Quoted 2 lines
drivers/net/kirkwood_egiga.c +0
-2- sprintf(buf, "00:50:43:%02x:%02x:%02x", - get_random_hex(),
get_random_hex(),Quoted 13 lines
Quoted 11 lines
drivers/net/kirkwood_egiga.c int kirkwood_egiga_initialize(bd_t * bis) · line 674
Quoted 9 lines
drivers/net/kirkwood_egiga.c +7
-2- get_random_hex()); -setenv (s, buf); + dev->enetaddr[0 ] =0x00 ; + dev->enetaddr[1 ] =0x50 ; + dev->enetaddr[2 ] =0x43 ; + dev->enetaddr[3 ] =get_random_hex (); + dev->enetaddr[4 ] =get_random_hex (); + dev->enetaddr[5 ] =get_random_hex (); +eth_setenv_enetaddr (s, dev->enetaddr);it will be also good to use a private mac address
Quoted 1 line
dev->enetaddr[0] = 0x02;Quoted 2 lines
Full ACK. If you're generating something random, it MUST have the private bit. Unless Marvell owns this block and is giving
Quoted 7 lines
it away and
Quoted 1 line
is keeping track of all used numbers and ...
really we should add a new common eth function that generates a random local mac address ... and have each arch implement a random function. you can see the one i use for Blackfin systems in
asm-blackfin/net.h...
Good Idea,
I hope each arch will have support to generate random values :-)
Regards..
Prafulla . .
Quoted 2 lines
-mike