[U-Boot] Can u-boot access Linux's mtd partition?

Joe Culler joe.culler at gmail.com
Tue Mar 2 18:24:19 CET 2010


On Wed, Mar 3, 2010 at 12:22 AM, Wolfgang Denk  wrote:
> Dear Joe Culler,
>
> In message <67a3f13e1003020733p5459c999r1f7346fd9cd8a92d at 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.

Dear Wolfgang,

Thank you very much for your quick reply and ideas.
I'll try to both ways you provided, thanks again!! ;-)

> 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: wd at 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_

Best regards,
Joe.


More information about the U-Boot mailing list