[U-Boot-Users] bootloader MAC

NZG ngustavson at emacinc.com
Fri Jun 9 00:31:49 CEST 2006


On Thursday 08 June 2006 4:40 pm, Wolfgang Denk wrote:
> Nobody is talking about about dynamical assignemnt.
>
> It's just that the *Linux* *driver* is responsible to initialize  it,
> no matter which boot loader you use and what the boot loader is doing
> or not doing.
In some cases that would amount to dynamic reassignment, such as in the 
Coldfire fec, which does not provide the typical load from eeprom 
functionality for it's MAC. It must be assigned by software somewhere, I am 
of the opinion that the bootloader should do it.
Why?
Because when we ship a board, we have to program the bootloader into it so 
customers can load an OS, the MAC goes into a protected region of flash, 
which it's not likely to be accidentally removed. We buy chunks of MAC 
addresses and assign them to boards we ship in quantity.
I look at the bootloader like the BIOS of a PC without the system calls. It 
initializes the hardware to a minimal point (you've at least got to turn on 
the DRAM, an IMHO make sure the MAC is valid) and loads the OS.
The OS will probably change with time, but the BIOS/bootloader is less likely 
too. 

> This has been discussed many
> times before.
I know, I lurk, but I have yet to see any real discussion other than quick 
fixes.
I've pulled out the most relevant ones I can find below, if you know of a 
better one please send a link.

I see:
http://lists.arm.linux.org.uk/pipermail/linux-arm/2005-July/010246.html
Which discusses using gen_eth_addrl for generating MAC address, but of course 
this is only useful for testing
http://www.denx.de/wiki/bin/view/DULG/EthernetDoesNotWork

I see:
http://lists.arm.linux.org.uk/pipermail/linux-arm-kernel/2004-July/023572.html
Which was never resolved on list

I see:
http://lists.arm.linux.org.uk/pipermail/linux-arm/2004-December/008936.html
In which using ifconfig to set the MAC is recommended in conjunction with 
purchasing a block of MAC addresses for at least $550.
This is pretty non-standard. We manufacture boards here and all of them are 
shipped with a pre-programmed valid address, Advantech and Aeon and every 
other major board manufacturer I know of, do the same.
I also have never seen a Linux distribution that set's it's MAC on bootup 
through ifconfig, usually it's set on bootup by reading an EEPROM.

And finally:
http://lists.arm.linux.org.uk/pipermail/linux-arm/2002-October/004300.html
In which the solution was to contact the board manufacturer (rightfully so as 
they should be providing the MAC)

NZG









More information about the U-Boot mailing list