
Dear Stefan and Jean-Christophe,
Jean-Christophe PLAGNIOL-VILLARD wrote:
This patch allows to override the libgcc Makefile inclusion from the toplevel Makefile by the arch config.mk files. This is in preparation for the ARM architecture to move away from including libgcc functions and only using self-contained U-Boot functions as done in Linux.
Currently all the ARM boards that use NAND are broken due to the addition of 64 Bit device size support. In the past we have seen similar problems with different tool chains due to EABI and FPU for example.
With this patch and this one: "ARM: Don't include libgcc anymore" we move away from all these problems on ARM since we don't include any functions from libgcc anymore.
You know, I'm a big fan of these two patches and like to see them in mainline asap ;)
I applied them locally. Now, I'm preparing a patch to enable CONFIG_SYS_64BIT_VSPRINTF for all OMAP3 boards to get rid of these annoying "warning: #warning Please define CONFIG_SYS_64BIT_VSPRINTF for correct output!".
While without CONFIG_SYS_64BIT_VSPRINTF everything compiles fine with both libgcc patches applied, enabling CONFIG_SYS_64BIT_VSPRINTF still results in
lib_generic/libgeneric.a(vsprintf.o): In function `put_dec':
lib_generic/vsprintf.c:242: undefined reference to `__umoddi3'
lib_generic/vsprintf.c:242: undefined reference to `__udivdi3'
Any idea why this still happens *with* libgcc patches? Any idea how to fix this? Add __umoddi3 and __udivdi3 to libgcc patch, too?
Many thanks and best regards
Dirk