On Tuesday, March 01, 2011 03:19:12 Michal Simek wrote: > >> +static void setup_mac(struct eth_device *dev) > >> +{ > >> + /* Set the MAC address */ > >> + int val = ((dev->enetaddr[3] << 24) | (dev->enetaddr[2] << 16) | > >> + (dev->enetaddr[1] << 8) | (dev->enetaddr[0])); > >> + out_be32(dev->iobase + XAE_UAW0_OFFSET, val); > >> + > >> + val = (dev->enetaddr[5] << 8) | dev->enetaddr[4] ; > >> + val |= in_be32(dev->iobase + XAE_UAW1_OFFSET) > >> + & ~XAE_UAW1_UNICASTADDR_MASK; > >> + out_be32(dev->iobase + XAE_UAW1_OFFSET, val); > >> +} > >> ... > >> +static int axiemac_init(struct eth_device *dev, bd_t * bis) > >> +{ > >> ... > >> + setup_mac(dev); > > > > this should be moved to eth_device.write_hwaddr in the initialize > > function. then the common layers will call setup_mac for you as needed. > > I am not going to use write_hwaddr function because axi emac needs some > initialization before you can write a mac addr that's why I will keep it > in the same location as is.
please add explicit comments to the setup_mac() func then so someone else doesnt go changing things without taking this into consideration first -mike
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot