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.c25
1 files changed, 15 insertions, 10 deletions
diff --git a/common/board_r.c b/common/board_r.c
index b9217b2e27f..29dd7d26d90 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -73,6 +73,9 @@
#if defined(CONFIG_GPIO_HOG)
#include <asm/gpio.h>
#endif
+#ifdef CONFIG_EFI_SETUP_EARLY
+#include <efi_loader.h>
+#endif
DECLARE_GLOBAL_DATA_PTR;
@@ -296,20 +299,21 @@ static int initr_noncached(void)
}
#endif
-#ifdef CONFIG_OF_LIVE
static int initr_of_live(void)
{
- int ret;
+ if (CONFIG_IS_ENABLED(OF_LIVE)) {
+ int ret;
- bootstage_start(BOOTSTAGE_ID_ACCUM_OF_LIVE, "of_live");
- ret = of_live_build(gd->fdt_blob, (struct device_node **)&gd->of_root);
- bootstage_accum(BOOTSTAGE_ID_ACCUM_OF_LIVE);
- if (ret)
- return ret;
+ bootstage_start(BOOTSTAGE_ID_ACCUM_OF_LIVE, "of_live");
+ ret = of_live_build(gd->fdt_blob,
+ (struct device_node **)gd_of_root_ptr());
+ bootstage_accum(BOOTSTAGE_ID_ACCUM_OF_LIVE);
+ if (ret)
+ return ret;
+ }
return 0;
}
-#endif
#ifdef CONFIG_DM
static int initr_dm(void)
@@ -713,9 +717,7 @@ static init_fnc_t init_sequence_r[] = {
#ifdef CONFIG_SYS_NONCACHED_MEMORY
initr_noncached,
#endif
-#ifdef CONFIG_OF_LIVE
initr_of_live,
-#endif
#ifdef CONFIG_DM
initr_dm,
#endif
@@ -890,6 +892,9 @@ static init_fnc_t init_sequence_r[] = {
#if defined(CONFIG_PRAM)
initr_mem,
#endif
+#ifdef CONFIG_EFI_SETUP_EARLY
+ (init_fnc_t)efi_init_obj_list,
+#endif
run_main_loop,
};