The smc911x_halt gets called after completion of network opration and resets the chip. When there is no SROM attached to the SMSC, MAC address gets reset as well. Add CONFIG_SMC911X_KEEP_MAC option to allow boards with no SROM instruct the SMSC driver to keep mac address after the reset
Signed-off-by: Mike Rapoport <m...@compulab.co.il> --- README | 5 +++++ drivers/net/smc911x.c | 4 ++++ 2 files changed, 9 insertions(+), 0 deletions(-) diff --git a/README b/README index 84d7f16..a5956b2 100644 --- a/README +++ b/README @@ -857,6 +857,11 @@ The following options need to be configured: automatically converts one 32 bit word to two 16 bit words you may also try CONFIG_SMC911X_32_BIT. + CONFIG_SMC911X_KEEP_MAC + Define this if your board does not have SROM + attached to SMC chip and the MAC address is + stored elsewhere + - USB Support: At the moment only the UHCI host controller is supported (PIP405, MIP405, MPC5200); define diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c index f5d984d..eee34f0 100644 --- a/drivers/net/smc911x.c +++ b/drivers/net/smc911x.c @@ -206,6 +206,10 @@ static int smc911x_send(struct eth_device *dev, static void smc911x_halt(struct eth_device *dev) { smc911x_reset(dev); + +#ifdef CONFIG_SMC911X_KEEP_MAC + smc911x_handle_mac_address(dev); +#endif } static int smc911x_rx(struct eth_device *dev) -- 1.6.0.6 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot