
On 7/13/07, Wolfgang Denk wd@denx.de wrote:
U-Boot shall initialize a device only when it uses it. If Ethernet is not used by U-Boot itself, it shall not touch any parts of the Ethernet controller.
Ok, now I'm confused.
When I submitted the macb ethernet driver, which works on both avr32 and at91sam926x devices, for inclusion in the LInux kernel, I was told to remove the mac address from the platform data. This was because ARM relied on u-boot initializing the mac address of all ethernet controllers before booting Linux, so AVR32 should do the same as well.
So I did this and added some code to the avr32 board setup to initialize the mac address registers as a temporary measure until I could be sure that u-boot did in fact always set up the mac address on all interfaces.
Now, it seems like the situation is: a) Other architectures rely on mac registers being initialized by u-boot as well. b) This is not how things are supposed to work.
I'd be happy to go back to passing mac addresses through the tagged list (in fact, u-boot never stopped doing that on avr32) but this needs to be resolved on ARM before I can change the driver.
Håvard