From: Prafulla Wadaskar Date: Mon, 10 Aug 2009 14:13:06 +0000 (+0530) Subject: net: kirkwood: updates: used eth_setenv_enetaddr api X-Git-Tag: v2009.08-rc3~25^2~2 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=9fd38a01cbc0ce4a8db41f72677103ed04b23db5;p=oweals%2Fu-boot.git 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 Signed-off-by: Prafulla Wadaskar Signed-off-by: Ben Warren --- diff --git a/drivers/net/kirkwood_egiga.c b/drivers/net/kirkwood_egiga.c index 701812bf1c..f31fefcb09 100644 --- a/drivers/net/kirkwood_egiga.c +++ b/drivers/net/kirkwood_egiga.c @@ -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;