summaryrefslogtreecommitdiff
path: root/common/board_r.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/board_r.c')
-rw-r--r--common/board_r.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/common/board_r.c b/common/board_r.c
index 48fa4ee5240..8077280de41 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -737,7 +737,7 @@ static int run_main_loop(void)
*
* TODO: perhaps reset the watchdog in the initcall function after each call?
*/
-init_fnc_t init_sequence_r[] = {
+static init_fnc_t init_sequence_r[] = {
initr_trace,
initr_reloc,
/* TODO: could x86/PPC have this also perhaps? */
@@ -947,6 +947,16 @@ init_fnc_t init_sequence_r[] = {
void board_init_r(gd_t *new_gd, ulong dest_addr)
{
+ /*
+ * Set up the new global data pointer. So far only x86 does this
+ * here.
+ * TODO(sjg@chromium.org): Consider doing this for all archs, or
+ * dropping the new_gd parameter.
+ */
+#if CONFIG_IS_ENABLED(X86_64)
+ arch_setup_gd(new_gd);
+#endif
+
#ifdef CONFIG_NEEDS_MANUAL_RELOC
int i;
#endif