[U-Boot-Users] [PATCH] Fixup relocation patch.

Txema Lopez tlopez at aotek.es
Tue Feb 13 10:25:12 CET 2007


Hi all,
This is a patch to make relocation simpler and more reliable. It's for a 
1.1.6 U-Boot version.

The FIXUP section in U-Boot is empty so when U-Boot is relocated from 
flash to sdram these lines in the file start.S have no effect:
   /*
    * Now adjust the fixups and the pointers to the fixups
    * in case we need to move ourselves again.
    */
2:    li    r0,__fixup_entries at sectoff@l
   lwz    r3,GOT(_FIXUP_TABLE_)
   cmpwi    r0,0
   mtctr    r0
   addi    r3,r3,-4
   beq    4f
3:    lwzu    r4,4(r3)
   lwzux    r0,r4,r11
   add    r0,r0,r11
   stw    r10,0(r3)
   stw    r0,0(r4)
   bdnz    3b
4:
Because of it, in some places of U-Boot the relocation must be done 
manually: i.e malloc_bin_reloc().

I submit the patch only for the Lite5200 boards and the rest of boards 
will be not affected. If someone want to use or test the fixup 
relocation for his board only has to do two changes:
    - cleanup the fixup section from the text section in  the u-boot.lds 
file.
    - define CFG_FIXUP_RELOCATION in the board configuration file.

I'm not sure if this patch could work for not PowerPC based 
architectures. By example, taking a look in the U-Boot starting files 
for mips and bf533 cpu's, it seems that only the GOT section is 
relocated in ram, so the patch probably won't work.

Signed-off-by: Jose Maria Lopez <tlopez at aotek.es>

CHANGELOG

* Make relocation simpler and more reliable for Lite5200 boards:
    Patch by Jose Maria Lopez, 13 February 2007




Best regards,

-------------- next part --------------
A non-text attachment was scrubbed...
Name: fixup.patch
Type: text/x-patch
Size: 6074 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20070213/330e7104/attachment.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: tlopez.vcf
Type: text/x-vcard
Size: 324 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20070213/330e7104/attachment.vcf 


More information about the U-Boot mailing list