[U-Boot] MAKEALL ml507_flash return "Not enough room forprogramheaders" error
Benny Chen
benny.chen at groundprobe.com
Tue Nov 11 00:03:15 CET 2008
Hi Guys,
The above error message was resolved by using the ELDK cross compiler.
Previously I was using Xilinxs powerpc-eabi-xx cross compiler to build
U-Boot.
Cheers,
Benny
-----Original Message-----
From: u-boot-bounces at lists.denx.de [mailto:u-boot-bounces at lists.denx.de]
On Behalf Of Benny Chen
Sent: Wednesday, 5 November 2008 3:10 PM
To: Ricardo
Cc: u-boot at lists.denx.de
Subject: Re: [U-Boot] MAKEALL ml507_flash return "Not enough room
forprogramheaders" error
Hi Ricardo,
Thanks for helping with this issue. My real option is to do a long jump
to the _start code. However, I am not familiar with the PPC assembler
hence, I am not able to get the longcall working.
_start is written in assembler in cpu/ppc_4xx/start.S therefore, I need
to do a longcall from assembler which I am not sure how to do. Could
you please help advise on how I can do a longcall in assembler?
Further, investigation I found that the other option is to do a function
pointer call to _start. When written in C this should force the use of
the CTR register which is 32-bit to hold the _start address. But I
don't know how to do this in assembler. If you have any idea on this it
would be much appreciated.
Thanks once again mate.
Regards,
Benny
-----Original Message-----
From: Ricardo [mailto:ricardo.ribalda at gmail.com]
Sent: Tue 04/11/2008 19:13
To: Benny Chen
Cc: u-boot at lists.denx.de
Subject: Re: [U-Boot] MAKEALL ml507_flash return "Not enough room for
programheaders" error
Hello Benny
Maybe if you move your _start to the booptg section you will solve
your problem.... or you can also modify the jump to be a long jump.
Best regards
On Tue, Nov 4, 2008 at 06:11, Benny Chen <benny.chen at groundprobe.com>
wrote:
> Hi Ricardo,
> Changing my tool chain to the ELDK 4.2 ppc-linux-x86 does build the
> default ml507_flash project. However, because my hardware design does
> not map the FLASH chip to 0xFE000000 but to 0x86000000 the build
failed
> with the following error.
>
> /******************************/
> cpu/ppc4xx/start.o: In function `rsttlb':
>
> /usr/local/groundprobe/src/Bootloader/u-boot/cpu/ppc4xx/start.S:493:
> relocation truncated to fit: R_PPC_REL24 against symbol `_start'
defined
> in .text section in cpu/ppc4xx/start.o
> /*****************************/
>
> I think this issue maybe to do with the 24bit branch address limit
with
> the PPC440x5 core. Here the _start_440 function calls a "b _start" and
> in this case the _start is mapped to flash in address 0x8600xxxx.
> Meaning we now need to branch from 0xFFFFFxxx to 0x8600xxxx. I think
> this is why the linker failed at the last stage.
>
> Does anyone have any idea with this issue?
>
> Regards,
> Benny
>
> -----Original Message-----
> From: Ricardo [mailto:ricardo.ribalda at gmail.com]
> Sent: Monday, 3 November 2008 6:26 PM
> To: Benny Chen
> Cc: u-boot at lists.denx.de
> Subject: Re: [U-Boot] MAKEALL ml507_flash return "Not enough room for
> programheaders" error
>
> Hello Benny
>
> I have just checkout the build of the ml507_flash and works ok for me
>
> ricardo at aragorn:~/curro/qtec/u-boot$ ./MAKEALL ml507_flash
> Configuring for ml507 board...
> text data bss dec hex filename
> 202132 10476 30032 242640 3b3d0 ./u-boot
>
>
> I remember that when I was using another toolchain the final link
> failed (but showing different error). Try with another toochain, I am
> using one produced by OpenEmbedded, but you will get the same results
> with the ELDK
>
>
> Best regards
>
>
>
> On Mon, Nov 3, 2008 at 07:59, Benny Chen <benny.chen at groundprobe.com>
> wrote:
>> Hi there,
>>
>> I am trying to build a U-Boot image for the ML507 board running from
>> FLASH and got the "Not enough room for program headers" error.
>>
>>
>>
>> The main difference for my setup is the toolchain. I am using the
>> powerpc-eabi-ld linker from Xilinx's EDK tool chain to build the
>> ml507_flash design for U-Boot.
>>
>>
>>
>> I have seen a patch on the linker script for the mpc8555cds board and
>> tried adding the patch to the Xilinx/ppc440-generic/u-boot-rom.lds
but
>> got the "relocation truncated to fit R_PPC_REL24" error.
>>
>> Before going further with debugging this problem, I would like to
> check
>> if this problem is due to the powerpc-eabi tool chain from Xilinx?
>>
>>
>>
>> Thanks for your help.
>>
>>
>>
>> Regards,
>>
>> Benny
>>
>>
>>
>> $ ./MAKEALL ml507_flash
>>
>> Configuring for ml507 board...
>>
>> powerpc-eabi-ld: u-boot: Not enough room for program headers
> (allocated
>> 2, need 5)
>>
>> powerpc-eabi-ld: final link failed: Bad value
>>
>> make: *** [u-boot] Error 1
>>
>> size: './u-boot': No such file
>>
>>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> U-Boot mailing list
>> U-Boot at lists.denx.de
>> http://lists.denx.de/mailman/listinfo/u-boot
>>
>>
>
>
>
> --
> Ricardo Ribalda
> http://www.eps.uam.es/~rribalda/
>
--
Ricardo Ribalda
http://www.eps.uam.es/~rribalda/
More information about the U-Boot
mailing list