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.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/common/board_r.c b/common/board_r.c
index 84d2b251f8..6d6adc13a9 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -54,6 +54,9 @@
#include <linux/compiler.h>
#include <linux/err.h>
#include <efi_loader.h>
+#ifdef CONFIG_FSL_FASTBOOT
+#include <fsl_fastboot.h>
+#endif
DECLARE_GLOBAL_DATA_PTR;
@@ -659,6 +662,20 @@ static int initr_avbkey(void)
}
#endif
+#ifdef CONFIG_FSL_FASTBOOT
+static int initr_fastboot_setup(void)
+{
+ fastboot_setup();
+ return 0;
+}
+
+static int initr_check_fastboot(void)
+{
+ fastboot_run_bootmode();
+ return 0;
+}
+#endif
+
static int run_main_loop(void)
{
#ifdef CONFIG_SANDBOX
@@ -831,6 +848,9 @@ static init_fnc_t init_sequence_r[] = {
#ifdef CONFIG_BOARD_LATE_INIT
board_late_init,
#endif
+#ifdef CONFIG_FSL_FASTBOOT
+ initr_fastboot_setup,
+#endif
#if defined(CONFIG_SCSI) && !defined(CONFIG_DM_SCSI)
INIT_FUNC_WATCHDOG_RESET
initr_scsi,
@@ -873,6 +893,9 @@ static init_fnc_t init_sequence_r[] = {
#ifdef AVB_RPMB
initr_avbkey,
#endif
+#ifdef CONFIG_FSL_FASTBOOT
+ initr_check_fastboot,
+#endif
run_main_loop,
};