[U-Boot] [PATCH] mtd: Update MTD infrastructure to support 64bit device size
Dirk Behme
dirk.behme at googlemail.com
Sat Jun 20 19:45:40 CEST 2009
Jean-Christophe PLAGNIOL-VILLARD wrote:
>> 2. C++ style comment. Found by Wolfgang ;)
>>
>> 3. The major one: By the new 64bit variables, depending on tool chain,
>> there are now calls to libgcc introduced. Depending on tool chain,
>> this might work, or fail. As it does with one of my tool chains, which
>> worked totally fine until here. It was my understanding that U-Boot
>> shall not rely on libgcc, i.e. proper tool chain libraries.
>>
>> Having CONFIG_SYS_64BIT_VSPRINTF not defined, the linker needs
>> "_lshrdi3", which comes from nand_base.o and nand_bbt.o. E.g. from
>> "len = mtd->size >> (this->bbt_erase_shift + 2);" from nand_bbt.c.
>>
>> Having CONFIG_SYS_64BIT_VSPRINTF enabled, the linker requests
>> _lshrdi3, _udivdi3, _umoddi3 and _clz from libgcc.
>>
>> Looking into U-Boot's lib_arm/ directory, we have already some low
>> level math functions there to avoid libgcc. E.g. nand_bbt.c has
>> references to _ashrdi3, too, but this is resolved by lib_arm's version
>> what is fine.
>>
>> I'd like that NAND code is modified that only math is used which
>> U-Boot provides and no libgcc is needed.
> this is a already known problem by Stefan and I and solved
>
> two patchs was send to the ML
Thanks for the hint! Do you kindly have the subjects or better links
to mailing list archive?
Many thanks
Dirk
> and now we are independant of the libgcc
>
> please test the testing branch of the u-boot-arm tree
>
> Best Regards,
> J.
>
More information about the U-Boot
mailing list