From: Neil Armstrong <narmstr...@baylibre.com>

If bootloader was updated without running oem format, reboot will cause
boot loop because the SYSTEM stage fails.

Add a final PANIC stage running fastboot to permit recovery.

Signed-off-by: Neil Armstrong <narmstr...@baylibre.com>
Signed-off-by: Mattijs Korpershoek <mkorpersh...@baylibre.com>
---
 include/configs/meson64_android.h | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/include/configs/meson64_android.h 
b/include/configs/meson64_android.h
index 93d8f8ec99de..7cd1ab034118 100644
--- a/include/configs/meson64_android.h
+++ b/include/configs/meson64_android.h
@@ -233,16 +233,24 @@
                        "echo Running Android...;" \
                        BOOT_CMD \
                "fi;" \
-               "echo Failed to boot Android...;" \
-               "reset\0"
+               "echo Failed to boot Android...;\0"
 
 #define BOOTENV_DEV_NAME_SYSTEM(devtypeu, devtypel, instance)  \
                "system "
 
+#define BOOTENV_DEV_PANIC(devtypeu, devtypel, instance) \
+       "bootcmd_panic=" \
+               "fastboot " __stringify(CONFIG_FASTBOOT_USB_DEV) "; " \
+               "reset\0"
+
+#define BOOTENV_DEV_NAME_PANIC(devtypeu, devtypel, instance)   \
+               "panic "
+
 #define BOOT_TARGET_DEVICES(func) \
        func(FASTBOOT, fastboot, na) \
        func(RECOVERY, recovery, na) \
        func(SYSTEM, system, na) \
+       func(PANIC, panic, na) \
 
 #define PREBOOT_LOAD_LOGO \
        "if test \"${boot_source}\" != \"usb\" && " \
-- 
2.32.0

Reply via email to