diff options
| author | Kumar Gala <[email protected]> | 2009-09-09 11:40:41 -0500 |
|---|---|---|
| committer | Tom Rix <[email protected]> | 2009-10-03 09:04:17 -0500 |
| commit | bbff2d2861a1210cc6ab2a871cdd82f195905b2f (patch) | |
| tree | fd74dde1ffbf7a18afe87d161837a283ef43f0bc /cpu | |
| parent | 5079ae4a203c8deb6fe58584ef151d5113ea1b54 (diff) | |
ppc/85xx: Introduce RESET_VECTOR_ADDRESS to handle non-standard link address
Some board ports place TEXT_BASE at a location that would cause the
RESET_VECTOR_ADDRESS not to be at 0xfffffffc when we link. By default
we assume RESET_VECTOR_ADDRESS will be 0xfffffffc if the board doesn't
explicitly set it.
Signed-off-by: Kumar Gala <[email protected]>
Acked-by: Wolfgang Denk <[email protected]>
Diffstat (limited to 'cpu')
| -rw-r--r-- | cpu/mpc85xx/u-boot.lds | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/cpu/mpc85xx/u-boot.lds b/cpu/mpc85xx/u-boot.lds index d6e22a7210e..ec4787157cc 100644 --- a/cpu/mpc85xx/u-boot.lds +++ b/cpu/mpc85xx/u-boot.lds @@ -20,6 +20,10 @@ * MA 02111-1307 USA */ +#ifndef RESET_VECTOR_ADDRESS +#define RESET_VECTOR_ADDRESS 0xfffffffc +#endif + OUTPUT_ARCH(powerpc) /* Do we need any of these for elf? __DYNAMIC = 0; */ @@ -116,17 +120,17 @@ SECTIONS . = ALIGN(256); __init_end = .; - .bootpg ADDR(.text) + 0x7f000 : + .bootpg RESET_VECTOR_ADDRESS - 0xffc : { cpu/mpc85xx/start.o (.bootpg) } :text = 0xffff - .resetvec ADDR(.text) + 0x7fffc : + .resetvec RESET_VECTOR_ADDRESS : { *(.resetvec) } :text = 0xffff - . = ADDR(.text) + 0x80000; + . = RESET_VECTOR_ADDRESS + 0x4; __bss_start = .; .bss (NOLOAD) : |
