[U-Boot] Defer net initialization

Alexander Stein
2010-06-01T14:55:13Z

Ho Ben,

Am Dienstag, 1. Juni 2010 16:46:48 schrieb Ben Warren:
> > This macb driver is fine so far. eth_initialize doesn't startup the
> > hardware
> > e.g. checking for link etc.
> > The problem was a defined CONFIG_RESET_PHY_R. Inside reset_phy
> >
> > > eth_init(gd->bd);
> >
> > is called which actually starts the hardwre resulting in timeouts as
> > described. According to the comment above this line (seems to be copied
> > to every at91 board implementation) this is only needed if linux has a
> > NFS root
> > which needs a preinitialized ethernet device.
> > But as we have a jffs2 rootfs this could be ignored.
>
> Yes, you've found the root cause. Some (maybe all) AT91 boards call call
> eth_init() during their initialization, which can take time. My
> understanding is that this was done to ensure a programmed MAC address.
>
> I added code recently to always program MAC addresses, hoping that we could
> then get rid of all these calls. I encourage you to either try to make the
> changes yourself, or I can build you an untested patch to try.

I would try your patch if you send it to me (and the list maybe too).

Best regards
Alexander