mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 10:26:10 +01:00 
			
		
		
		
	console: Use flush() before panic and reset
To make sure the panic and the reset messages will go out, console flush() should be used. Sleep periods do not work in early u-boot phase when timer driver is not initialized yet. Reference: https://lists.denx.de/pipermail/u-boot/2023-March/512233.html Signed-off-by: Tony Dinh <mibodhi@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
This commit is contained in:
		| @@ -25,6 +25,7 @@ | ||||
| #include <cpu_func.h> | ||||
| #include <irq_func.h> | ||||
| #include <linux/delay.h> | ||||
| #include <stdio.h> | ||||
|  | ||||
| __weak void reset_misc(void) | ||||
| { | ||||
| @@ -33,8 +34,7 @@ __weak void reset_misc(void) | ||||
| int do_reset(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) | ||||
| { | ||||
| 	puts ("resetting ...\n"); | ||||
|  | ||||
| 	mdelay(50);				/* wait 50 ms */ | ||||
| 	flush(); | ||||
|  | ||||
| 	disable_interrupts(); | ||||
|  | ||||
|   | ||||
| @@ -15,6 +15,7 @@ | ||||
| #include <command.h> | ||||
| #endif | ||||
| #include <linux/delay.h> | ||||
| #include <stdio.h> | ||||
|  | ||||
| static void panic_finish(void) __attribute__ ((noreturn)); | ||||
|  | ||||
| @@ -24,7 +25,8 @@ static void panic_finish(void) | ||||
| #if defined(CONFIG_PANIC_HANG) | ||||
| 	hang(); | ||||
| #else | ||||
| 	udelay(100000);	/* allow messages to go out */ | ||||
| 	flush();  /* flush the panic message before reset */ | ||||
|  | ||||
| 	do_reset(NULL, 0, 0, NULL); | ||||
| #endif | ||||
| 	while (1) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user