Dear Joe Culler, In message <67a3f13e1003020733p5459c999r1f7346fd9cd8a...@mail.gmail.com> you wrote: > > Thanks for the reply. Let me explain why I do this way in details. > I work for the system integration company, the board I have is no > eeprom, that means I have to burn the mac address before shipping the > product. So the following steps are what I do before shipping: > > 1. First, I set default CONFIG_ETHADDR(for example, 02:80:ad:20:31:e8) > in u-boot, then use flash writer to burn the flash on each board. > 2. I have a program for burning mac address on Linux. > After booting linux kernel, my program can burn the mac address. > Reboot the system if burning the mac address successfully. > 3. Since the mac address is already stored in mtd2, for example. > I want u-boot to detect the correct mac address I burned in mtd2 > partition rather than the default setting 02:80:ad:20:31:e8. > > Is it the correct way I do or do you have any better idea? Thank you.
As usual, TIMTOWTDI. The quickest approach to me seems to use the flash writer (as in your step 1) to program first the U-Boot image (common for all boards, without any MAC address setting), and then additionally program a small information block that contains vital product data like MAC address, serial number etc. [This block is usually dynamically generated by a database query during prodution of the board.] This second part will probably just require a few bytes which probably will fit at a well-known address in the last (only partially filled) block used for the U-Boot image. See for example the code in board/tqc/tqm8xx/load_sernum_ethaddr.c On theother hand, if you really want to jump through all the loops and boot Linux to program the MAC address, you could as well use the fw_setenv program (see tools/env/) to store the MAC address directly in the U-Boot environment, where U-Boot will pick it up without any special measures. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de It became apparent that one reason why the Ice Giants were known as the Ice Giants was because they were, well, giants. The other was that they were made of ice. -Terry Pratchett, _Sourcery_ _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot