On Thursday, August 25, 2011 01:10:30 Ajay Bhargav wrote: > ----- "Mike Frysinger" <[email protected]> wrote: > > On Wednesday, August 24, 2011 09:07:18 Ajay Bhargav wrote: > > > + /* Read mac from env if available */ > > > + eth_getenv_enetaddr("ethaddr", dev->enetaddr); > > > > you shouldnt need to do this. the higher layers will take care of > > this for > > you when you set write_hwaddr > > I do not have a hardware storage for MAC on my controller. write_hwaddr > is not needed for me.
ok, but you should not be touching dev->enetaddr in your registration
function. the main net/eth.c:eth_initialize() takes care of this for you.
> > > +int armada100_fec_initialize()
> > > +{
> > > ...
> > > + darmdfec->regs = (void *) ARMD1_FEC_BASE;
> >
> > make the reg base a parameter to armada100_fec_initialize()
>
> This driver is for Armada100 series and base address is same for
> the whole series, so i did not feel passing it as a parameter. Can
> you please tell me if there is any specific reason for the same?
drivers should be written for the IP they control, not for specific SoCs or
boards. and what people often start off with "this SoC only has one MAC so
screw multi-instance" quite frequently turns into "this next SoC supports
multiple MACs!".
i'm not familiar with the Armada100, or the MAC IP that is in that SoC, but
this story repeats itself constantly in the SoC world because people focus on
the one specific SoC they have in their hand and not the bigger picture.
simply witness the ARM hell that Linux is currently in and is being cleaned up
through the Linaro organization.
-mike
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

