[U-Boot] [PATCH 1/4] net: extend the netdev to have a common way to set the hw mac address
Jean-Christophe PLAGNIOL-VILLARD
plagnioj at jcrosoft.com
Mon May 11 16:24:54 CEST 2009
On 15:26 Mon 11 May , Wolfgang Denk wrote:
> Dear Jean-Christophe PLAGNIOL-VILLARD,
>
> In message <20090511120809.GA1812 at game.jcrosoft.org> you wrote:
> >
> > > there is no need for that on purpose. the network layer will recheck the
> > > environment every time it gets initialized, and it gets initialized with every
> > > network step. this is already documented in doc/README.enetaddr.
> > Unfortunatly we need it to set the enetaddr in the register of the soc evenif
> > there is no ethernet transfer as for the macb on at91 or the dm9000.
> > This how the kernel pass the mac address for the bootloader.
>
> You mean, this is how U-Boot is supposed to pass the MAC address to
> the Kernel, right?
>
> Well, strictly speaking this is (1) in direct violation of U-Boot's
> design principles which say NOT to initialize things it does not use
> itself, and (2) a bug in the Linux kernel that should be fixed there.
>
> In this case it may be just writing to a register without further
> initialization of the hardware, but if we allow for that you can bet
> that tomorrow someone will try and add code that requires more
> extensive initialization of the hardware for the same purpose, and he
> will argue that his code must go in because there is preexisting code
> that does the same.
this exactly what is done only write mac hw register
without init the eth stack
before we do need to init the mac and detect the phy if we want to store
now we have to call the set_hw_enetaddr
Best Regards,
J.
More information about the U-Boot
mailing list