[PATCH 12/18] bootm: Adjust how the board is reset

Simon Glass sjg at chromium.org
Mon Dec 4 01:26:28 CET 2023


Use reset_cpu() to reset the board, copying the logic from the 'reset'
command. This makes more sense than directly calling the do_reset()
function with the arguments passsed to the bootm command.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

 boot/bootm.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/boot/bootm.c b/boot/bootm.c
index d2448f6306dc..de5c32099ceb 100644
--- a/boot/bootm.c
+++ b/boot/bootm.c
@@ -1138,10 +1138,12 @@ err:
 	if (iflag)
 		enable_interrupts();
 
-	if (ret == BOOTM_ERR_UNIMPLEMENTED)
+	if (ret == BOOTM_ERR_UNIMPLEMENTED) {
 		bootstage_error(BOOTSTAGE_ID_DECOMP_UNIMPL);
-	else if (ret == BOOTM_ERR_RESET)
-		do_reset(cmdtp, flag, argc, argv);
+	} else if (ret == BOOTM_ERR_RESET) {
+		printf("Resetting the board...\n");
+		reset_cpu();
+	}
 
 	return ret;
 }
-- 
2.43.0.rc2.451.g8631bc7472-goog



More information about the U-Boot mailing list