
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@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);