On Wed, Sep 26, 2007 at 05:02:33PM -0400, Tom Sylla wrote: > On 9/26/07, Robert Millan <[EMAIL PROTECTED]> wrote: > > unsigned long mac_pos; > > mac_pos = 0xffffffd0; // refer to romstrap.inc and > > romstrap.lds > > mac_l = readl(mac_pos) + nic_index; > > mac_h = readl(mac_pos + 4); > > > > and can't understand what is this romstrap and why it retrieves the MAC from > > it in runtime. Is this some kind of legacy interface? Wouldn't it be > > simpler > > to just hardcode it during build? E.g. see attached patch. > > Maybe simpler, but not really correct. What if you have 2 of your > boards? With your patch, you have to compile twice. That's not > elegant. If you can make just one ROM image, and then automatically > change the MAC at a specified location inside of it for each > individual motherboard, things work better. (AMI/award/etc do this, > when you use their flash utilities, it does not overwrite the MAC so > you don't lose it) > > Your solution is ok if you want to just support your single board on > your desktop, but for anybody trying to make a commercial product with > LB, they won't want to be recompiling for each unit shipped.
Agreed. MACs are a bit of a pain (also on the MCP55), and we currently do not have a good way to deal with them. I have MCP55-based LinuxBIOS machines in production that have 00:00:00:00:00:00 as MAC address for each interface, and I need to force the MAC manually in /etc/network/interfaces. Not elegant, and not ideal. The kernel does not like it either, on startup it says 'complain to your bios vendor' ;) I would like a way to change the MAC address for a rom image with some tool - ideally as an option to flashrom, I guess. Keep in mind that there can be multiple addresses on a board! Thanks, Ward. -- Ward Vandewege <[EMAIL PROTECTED]> Free Software Foundation - Senior System Administrator -- linuxbios mailing list [email protected] http://www.linuxbios.org/mailman/listinfo/linuxbios
