Implement ethernet halt() by putting MAC0 in reset. If we do not do this, we will get memory corruption when ethernet frames are received during early OS boot.
Signed-off-by: Thomas Lange <[email protected]> --- cpu/mips/au1x00_eth.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/cpu/mips/au1x00_eth.c b/cpu/mips/au1x00_eth.c index 6272a3a..5074997 100644 --- a/cpu/mips/au1x00_eth.c +++ b/cpu/mips/au1x00_eth.c @@ -276,6 +276,10 @@ static int au1x00_init(struct eth_device* dev, bd_t * bd){ } static void au1x00_halt(struct eth_device* dev){ + volatile u32 *macen = (volatile u32*)MAC0_ENABLE; + + /* Put MAC0 in reset */ + *macen = 0; } int au1x00_enet_initialize(bd_t *bis){ -- 1.5.6.5 _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

