[U-Boot] net, kirkwood_egiga: init mac address before using network commands
Heiko Schocher
hs at denx.de
Tue Mar 30 07:38:39 CEST 2010
initialize mac address with the value from "ethaddr", before
doing some network commands. This is not in line with u-boot
design principle "not to initalize not used devices", and
maybe should go away, if there is a solution for passing
the mac address to arm linux kernels.
Tested on the suen3 board.
Signed-off-by: Heiko Schocher <hs at denx.de>
---
posting this patch as a result of this discussion:
http://lists.denx.de/pipermail/u-boot/2010-March/069025.html
drivers/net/kirkwood_egiga.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/net/kirkwood_egiga.c b/drivers/net/kirkwood_egiga.c
index 2ad7fea..e8b3777 100644
--- a/drivers/net/kirkwood_egiga.c
+++ b/drivers/net/kirkwood_egiga.c
@@ -678,7 +678,7 @@ int kirkwood_egiga_initialize(bd_t * bis)
return -1;
}
- while (!eth_getenv_enetaddr(s, dev->enetaddr)) {
+ if (!eth_getenv_enetaddr(s, dev->enetaddr)) {
/* Generate Random Private MAC addr if not set */
dev->enetaddr[0] = 0x02;
dev->enetaddr[1] = 0x50;
@@ -688,6 +688,7 @@ int kirkwood_egiga_initialize(bd_t * bis)
dev->enetaddr[5] = get_random_hex();
eth_setenv_enetaddr(s, dev->enetaddr);
}
+ port_uc_addr_set(dkwgbe->regs, dev->enetaddr);
dev->init = (void *)kwgbe_init;
dev->halt = (void *)kwgbe_halt;
--
1.6.2.5
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
More information about the U-Boot
mailing list