Hi Joe, On Fri, Sep 11, 2015 at 6:32 AM, Joe Hershberger <joe.hershber...@gmail.com> wrote: > Hi Bin, > > On Thu, Sep 10, 2015 at 4:29 AM, Bin Meng <bmeng...@gmail.com> wrote: >> When removing an Ethernet device, the MAC address saved in the dev's >> platdata should be cleared. > > Why is this important to do? Test case?
platdata->enetaddr was assigned to a value in last dev_probe(). If we don't clear it, for dev_probe() the second time, dm eth will end up treating it as a MAC address from ROM no matter where it came from originally (maybe env, ROM, or even random) I don't think we need a test case to test this, but I can update commit message to include the reason above. > >> Signed-off-by: Bin Meng <bmeng...@gmail.com> >> >> --- >> >> Changes in v2: >> - New patch to clear MAC address in eth_pre_remove() >> >> net/eth.c | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/net/eth.c b/net/eth.c >> index 26520d3..35f9641 100644 >> --- a/net/eth.c >> +++ b/net/eth.c >> @@ -564,8 +564,13 @@ static int eth_post_probe(struct udevice *dev) >> >> static int eth_pre_remove(struct udevice *dev) >> { >> + struct eth_pdata *pdata = dev->platdata; >> + >> eth_get_ops(dev)->stop(dev); >> >> + /* clear the MAC address */ >> + memset(pdata->enetaddr, 0, 6); >> + >> return 0; >> } >> Regards, Bin _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot