[PATCH] spl: spl_nor: use panic instead of hang if booting fails
Mario Kicherer
dev at kicherer.org
Mon Jan 30 11:03:03 CET 2023
On systems without a watchdog, using hang() prevents a system to
recover from an error. For example, a board could implement a boot
counter to switch to an alternative load address after some failed
tries.
Signed-off-by: Mario Kicherer <dev at kicherer.org>
---
common/spl/spl.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/common/spl/spl.c b/common/spl/spl.c
index 2855cdd117..d1aa2fb8a9 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -822,11 +822,10 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
if (ret) {
if (CONFIG_IS_ENABLED(SHOW_ERRORS) &&
CONFIG_IS_ENABLED(LIBCOMMON_SUPPORT))
- printf(SPL_TPL_PROMPT "failed to boot from all boot devices (err=%d)\n",
- ret);
+ panic(SPL_TPL_PROMPT "failed to boot from all boot devices (err=%d)\n",
+ ret);
else
- puts(SPL_TPL_PROMPT "failed to boot from all boot devices\n");
- hang();
+ panic_str(SPL_TPL_PROMPT "failed to boot from all boot devices\n");
}
spl_perform_fixups(&spl_image);
--
2.34.1
More information about the U-Boot
mailing list