On Mon, 2009-09-14 at 23:26 +0200, Wolfgang Denk wrote: > Dear Peter Tyser, > > In message <1252709159-22326-1-git-send-email-pty...@xes-inc.com> you wrote: > > ** This patch is only meant to allow others to test relocation, it > > should not be applied!! ** > > > > This patch is a quick hack to enable proper relocation on powerpc > > boards. I tested on some mpc85xx-based boards. > > > > I updated the common ppc config.mk and u-boot.lds in cpu/ as needed, but > > didn't bother to update board-specific ones. CONFIG_RELOC_FIXUP_WORKS > > has also been hacked into common.h unconditionally. > > > > So if you want to try out this patch, make sure that you > > 1. Remove the *(.fixup) entry from the text section in your board's > > linker script. > > > > 2. Make sure your board's config.mk file includes: > > PLATFORM_RELFLAGS += -mrelocatable > > > > I'm hoping that relocation will work for all powerpc boards assuming you > > use a semi-recent version. I think at least gcc >= 3.4.6 (or maybe even > > 3.4.5) should work. > > > > It'd be great if people could give feedback if this patch works for > > them, and if not, how their board breaks. > > I have tested this patch on the following boards / tool chains: > > > Tool Chain: ELDK 3.1.1 ELDK 4.0 ELDK 4.2 > gcc-3.3.3 gcc-4.0.0 gcc-4.2.2 > Board: binutils-2.14 binutils-2.16.1 binutils-2.17.50.0 > TQM834x OK OK OK > Canyonlands NOK1 OK OK > MPC5121ADS OK OK OK > Haleakala OK OK OK > Ocotea NOK1 OK OK > > NOK1: build error because old compiler does not accept "-m440" option
When preparing the ppc relocation patches I noticed that the gcc -mrelocatable compiler flag increases the .reloc section by 3 or 4 Kbytes. I did a compile test, and this increase pushes the ALPR board back over 256K (it recently had the same size issue, see "ppc4xx: Remove some features from ALPR to fit into 256k again"). No other boards appear to break size-wise. So I guess I had 2 questions: 1. Is enabling proper relocation worth the 3/4KB that will be added to every ppc binary? I personally think so as the manual relocation fixups that currently litter the code can be removed and true relocation is much less hokey in the long run. X-ES's U-Boot binaries also are generally much smaller than their allocated 512KB, so this increase doesn't affect me much:) 2. Assuming we do want proper relocation, what should be done to decrease the size of the ALPR binary? Pieter had mentioned getting rid of CONFIG_CMD_PCI was OK in a previous email thread. Making this change puts the ALPR binary at around 253KB. I can roll this change in the relocation fixup changeset if he is OK with it. Thanks, Peter _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot