Hi all, I have seen a wrong behaviour about Mac Address handling when the DM9000 controller is connected to an external serial eeprom. The eeprom contains the Mac Address and the configuration data for the controller.
If the ethaddr variable is set, u-boot uses this variable and sets with this value the ethernet controller. Only if the ethaddr is not set, the Mac Address is read from Eeprom. However, the driver in the linux kernel uses a different approach : it takes the Mac address first from the eeprom, if it is valid. This generates a strange phenomen: 1. The target works in u-boot with a mac address, and with this address for example loads the kernel from network. 2. When the kernel boots, the system takes a different mac address, because the mac address passed by u-boot is not used. This behavior is wrong, at least we have wrong values in the arp cache for some systems on the lan. I understand that this happens until the arp cache is renewed, however it can produce failures in the network. IMHO we should synchronize the two values, writing down the Eeprom in the case the ethaddr is set. I think this is congruent with all other boards in u-boot (ethaddr has the highest priority). In this way, the kernel will use the same Mac address as u-boot. However, I do not know if this behavior is always acceptable (for example, if the mac address is written in the factory and the component has a label reporting the mac address) and it is not so easy to find in u-boot which boards with the DM9000 controller have a serial eeprom attached to it. Any opinion about it ? Regards, Stefano Babic -- ===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: off...@denx.de ===================================================================== _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot