summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib_arm/board.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/lib_arm/board.c b/lib_arm/board.c
index 80b149b..a093860 100644
--- a/lib_arm/board.c
+++ b/lib_arm/board.c
@@ -233,6 +233,18 @@ static int init_func_i2c (void)
}
#endif
+#ifdef CONFIG_SKIP_RELOCATE_UBOOT
+/*
+ * This routine sets the relocation done flag, because even if
+ * relocation is skipped, the flag is used by other generic code.
+ */
+static int reloc_init(void)
+{
+ gd->flags |= GD_FLG_RELOC;
+ return 0;
+}
+#endif
+
/*
* Breathe some life into the board...
*
@@ -262,6 +274,11 @@ int print_cpuinfo (void); /* test-only */
init_fnc_t *init_sequence[] = {
cpu_init, /* basic cpu dependent setup */
+#if defined(CONFIG_SKIP_RELOCATE_UBOOT)
+ reloc_init, /* Set the relocation done flag, must
+ do this AFTER cpu_init(), but as soon
+ as possible */
+#endif
board_init, /* basic board dependent setup */
interrupt_init, /* set up exceptions */
env_init, /* initialize environment */