[U-Boot] Weird issues with u-boot on Microblaze
Michal Simek
monstr at monstr.eu
Tue Aug 25 00:04:21 CEST 2009
Hi,
Dana Goyette wrote:
> Michal Simek wrote:
>> this code can't be compiled - you have bad setting. MONITOR_BASE is always on lower address then
>> FLASH address. Check that your ram on lower address than your flash - this is check by u-boot.bsp too.
>>
>>
>>
>> Regards,
>> Michal
>>
>>
>>
>>
>>
>
> Thanks for that help, and thanks for updating your git repository. I
> had previously forgotten about the "flash must be above RAM" limitation.
> I had forgotten, and had rebuilt the project without re-running the BSP,
> after making the mistake of doing "generate addresses".
>
> I've now rebuild the project and BSP with RAM at 0x10000000 and Flash at
> 0x20000000, but I'm now getting a linking error:
>
> u-boot-microblaze/net/eth.c:202: relocation truncated to fit:
> R_MICROBLAZE_32_PCREL_LO against symbol `board_eth_init' defined in text
> section in
> board/xilinx/microblaze-generic/libmicroblaze-generic.a(microblaze-generic.o)
There is problem with weak symbols in toolchain. Simple solution is go to net/eth.c
and comment line with board_eth_init (weak is on the same line). Then you can build
u-boot without any problem.
>
> I've looked up the error, and about the closest thing I could find was
> this -- something about "longcall" attribute:
I really don't know - the problem is with toolchain and I think I sent this issue to Xilinx - they
should solve it or you can debug it and find out where the problem is.
>
> http://www.mail-archive.com/u-boot@lists.denx.de/msg04518.html
it was around ppc
> http://fixunix.com/vxworks/48336-how-solve-error-relocation-truncated-fit-r_arm_pc24.html
Have you tried to compile u-boot with "-mlongcall" or "-mlong-call"?
>
> In Microblaze, do the absolute address values matter, or just the
> relative positioning?
More information about the U-Boot
mailing list