diff options
author | wdenk <wdenk> | 2003-05-30 12:48:29 +0000 |
---|---|---|
committer | wdenk <wdenk> | 2003-05-30 12:48:29 +0000 |
commit | 3b57fe0a70b903f4db66c558bb9828bc58acf06b (patch) | |
tree | b8e415f6a1ff4e519534c8f7154307977e38b8db /cpu/mpc5xx | |
parent | f07771cc288eb86cad8f8a5c1aa593caf2ba26f8 (diff) | |
download | bootable_bootloader_goldelico_gta04-3b57fe0a70b903f4db66c558bb9828bc58acf06b.zip bootable_bootloader_goldelico_gta04-3b57fe0a70b903f4db66c558bb9828bc58acf06b.tar.gz bootable_bootloader_goldelico_gta04-3b57fe0a70b903f4db66c558bb9828bc58acf06b.tar.bz2 |
* Get (mostly) rid of CFG_MONITOR_LEN definition; compute real length
instead CFG_MONITOR_LEN is now only used to determine _at_compile_
_time_ (!) if the environment is embedded within the U-Boot image,
or in a separate flash sector.
* Cleanup CFG_DER #defines in config files (wd maintained only)
Diffstat (limited to 'cpu/mpc5xx')
-rw-r--r-- | cpu/mpc5xx/start.S | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/cpu/mpc5xx/start.S b/cpu/mpc5xx/start.S index d8a8bec..4d7c716 100644 --- a/cpu/mpc5xx/start.S +++ b/cpu/mpc5xx/start.S @@ -66,6 +66,7 @@ GOT_ENTRY(_end_of_vectors) GOT_ENTRY(transfer_to_handler) + GOT_ENTRY(__init_end) GOT_ENTRY(_end) GOT_ENTRY(__bss_start) END_GOT @@ -432,8 +433,8 @@ relocate_code: mr r3, r5 /* Destination Address */ lis r4, CFG_MONITOR_BASE@h /* Source Address */ ori r4, r4, CFG_MONITOR_BASE@l - lis r5, CFG_MONITOR_LEN@h /* Length in Bytes */ - ori r5, r5, CFG_MONITOR_LEN@l + lwz r5, GOT(__init_end) + sub r5, r5, r4 /* * Fix GOT pointer: @@ -544,12 +545,6 @@ clear_bss: mr r4, r10 /* Destination Address */ bl board_init_r - /* Problems accessing "end" in C, so do it here */ - .globl get_endaddr -get_endaddr: - lwz r3,GOT(_end) - blr - /* * Copy exception vector code to low memory * |