fix compilation issue in arm cortex a8
RFC PATCH 1/1 fix compilation issue in arm cortex a8
Hi,
this patch fix the compilation issue. Step to reproduce:
add CONFIG_YAFFS2 in overo defconfig and compile u-boot
Regards
Michael
-------------- next part --------------
A non-text attachment was scrubbed...
Name: compilation.patch
Type: text/x-diff
Size: 754 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20100105/eda00e71/attachment.patch
RFC PATCH 1/1 fix compilation issue in arm cortex a8
Quoted 10 lines · Michael Trimarchi
Hi,
this patch fix the compilation issue. Step to reproduce:
add
CONFIG_YAFFS2in overo defconfig and compile u-bootRegards
Michael
This is not an OMAP specific problem.
This problem will happen on all ARM platforms.
It would be better to understand why these unwind calls are being made and to just not do them.
As this is an eabi problem.
Adding
void *__exidx_start;
void *__exidx_end;
To eabi_compat.c also "fixes" the link problem.
This may be a better place for the change than all the linker scripts
In general cases where libgcc is problem, you can build with
USE_PRIVATE_LIBGCC=yes
Trying this unfortunately has another link problem
fs/yaffs2/libyaffs2.a(yaffscfg.o): In function `yaffs_StartUp':
fs/yaffs2/yaffscfg.c:185: undefined reference to `__aeabi_uldivmod'
This function could be added to lib_arm/_udivsi3.S or a new file if you feel it is appropriate.
Tom
RFC PATCH 1/1 fix compilation issue in arm cortex a8
Quoted 32 lines · Tom
Quoted 10 lines · Michael Trimarchi
Hi,
this patch fix the compilation issue. Step to reproduce:
add
CONFIG_YAFFS2in overo defconfig and compile u-bootRegards
MichaelThis is not an OMAP specific problem.
This problem will happen on all ARM platforms.It would be better to understand why these unwind calls are being made and
to just not do them.As this is an eabi problem.
Addingvoid
*__exidx_start;
void*__exidx_end;To
eabi_compat.calso "fixes" the link problem.
This may be a better place for the change than all the linker scriptsIn general cases where libgcc is problem, you can build with
USE_PRIVATE_LIBGCC=yes
Quoted 8 lines
Trying this unfortunately has another link problem
fs/yaffs2/libyaffs2.a(yaffscfg.o): In function `yaffs_StartUp':
fs/yaffs2/yaffscfg.c:185: undefined reference to `__aeabi_uldivmod'This function could be added to
lib_arm/_udivsi3.Sor a new file if you feel it is appropriate.
Ok,
I'm going to provide a better patch.
Quoted 2 lines
Tom
Best regards
Michael Trimarchi
Quoted 4 lines
RFC PATCH 1/1 fix compilation issue in arm cortex a8
In reply to TomQuoted 32 lines · Tom
Quoted 10 lines · Michael Trimarchi
Hi,
this patch fix the compilation issue. Step to reproduce:
add
CONFIG_YAFFS2in overo defconfig and compile u-bootRegards
MichaelThis is not an OMAP specific problem.
This problem will happen on all ARM platforms.It would be better to understand why these unwind calls are being made and
to just not do them.As this is an eabi problem.
Addingvoid
*__exidx_start;
void*__exidx_end;To
eabi_compat.calso "fixes" the link problem.
This may be a better place for the change than all the linker scriptsIn general cases where libgcc is problem, you can build with
USE_PRIVATE_LIBGCC=yes
Quoted 7 lines
Trying this unfortunately has another link problem
fs/yaffs2/libyaffs2.a(yaffscfg.o): In function `yaffs_StartUp':
fs/yaffs2/yaffscfg.c:185: undefined reference to `__aeabi_uldivmod'This function could be added to
lib_arm/_udivsi3.Sor a new file if you feel it is appropriate.
The problem is only releated to yaffs2 so I propose to use the do_div in that code
when the division is releated to mtd->size / <some> and add the two function in eabi file
Michael
Quoted 7 lines
Tom