summaryrefslogtreecommitdiff
path: root/common/cmd_bootm.c
diff options
context:
space:
mode:
authorPeter Tyser <ptyser@xes-inc.com>2009-09-21 11:20:36 -0500
committerWolfgang Denk <wd@denx.de>2009-10-03 10:17:57 +0200
commit521af04d853361b49344b61892eb0618f9f713c5 (patch)
treeb5168e8f89074a797761a03c6bcf0c95ddfc5f12 /common/cmd_bootm.c
parent3cbcfa70b116df1bbdc90ba31c61adcaec058a8a (diff)
Conditionally perform common relocation fixups
Add #ifdefs where necessary to not perform relocation fixups. This allows boards/architectures which support relocation to trim a decent chunk of code. Note that this patch doesn't add #ifdefs to architecture-specific code which does not support relocation. Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Diffstat (limited to 'common/cmd_bootm.c')
-rw-r--r--common/cmd_bootm.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index 365ceebdf..8f8359856 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -561,7 +561,6 @@ int do_bootm_subcommand (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
/*******************************************************************/
/* bootm - boot application image from image in memory */
/*******************************************************************/
-static int relocated = 0;
int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
{
@@ -569,6 +568,8 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
ulong load_end = 0;
int ret;
boot_os_fn *boot_fn;
+#ifndef CONFIG_RELOC_FIXUP_WORKS
+ static int relocated = 0;
/* relocate boot function table */
if (!relocated) {
@@ -578,6 +579,7 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
boot_os[i] += gd->reloc_off;
relocated = 1;
}
+#endif
/* determine if we have a sub command */
if (argc > 1) {