[U-Boot-Users] MAC address question...

Wolfgang Denk wd at denx.de
Thu Aug 26 21:38:21 CEST 2004

In message < at wheresmymailserver.com> you wrote:
> Since this will eventually sold at Digikey & Farnell, it will be used by a 
> variety of people at different skill levels (from pros to beginners), I 
> want to ensure that if someone erases the entire Flash, it will still have 
> a valid MAC address. Therefore, it will ship to people with valid MAC 
> addresses (purchased from the IEEE) in the EEPROM connected to the 
> SMC91111, and no environment variable (ethaddr) set.

OK. This is fine.

> If someone wants to change the MAC address, they add the environment 
> variable (ethaddr), and this will be used. (but it will print warning 
> messages that the MACs do not match).

OK again. All this is exactly what the README says.

> I have had a few beta users who had to change the MAC address, (to get DHCP 
> working on their networks), but then started calling for help when they get 

Why do you need to change a MAC address  to  get  DHCP  working???  I
never  heard  such  a  thing before - of course I assume that you are
distributing your boxes with valid MAC addresses only!?

> The "solution" was add some functionality somewhere, to change the MAC 
> address in the SROM. I thought U-boot might be the best bet - because that 
> is where MAC addresses should be managed - in the boot loader. I know that 
> this should be programmed during manufacturing (and it is), but there is no 
> way to re-program the SROM MAC. (unless I am missing something?)

Such functionality has been added  before,  but  not  as  (statically
linked)  part  of  U-Boot.  Please  see  examples/82559_eeprom.c  and
examples/eepro100_eeprom.c for examples.

> Today on my board, I have 4 Meg of Flash - If I define things as 4Meg + 6 
> bytes, in the board/specific/flash.c in write_buff() - I can trap these +6 
> bytes, and actually program the MAC in the SROM. This is bad form because I 
> know I should not be accessing a device outside the /driver/smc9111.c file.

I will not allow such dirty hacks in the public U-Boot source tree.

> The other option I had was make a similar patch to what Ladis did (thanks 
> by the way) - but I expected Wolfgang to have a similar reaction to what he 
> did.


Best regards,

Wolfgang Denk

Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-4596-87  Fax: (+49)-8142-4596-88  Email: wd at denx.de
Karl's version of Parkinson's Law: Work expands to  exceed  the  time
alloted it.

More information about the U-Boot mailing list