arm: mvebu: turris_omnia: disable MCU watchdog in SPL when booting over UART

When booting over UART, sending U-Boot proper may take too much time and
MCU watchdog will reset the board before U-Boot proper is loaded.

Better disable MCU watchdog in SPL when booting over UART.

Signed-off-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Stefan Roese <sr@denx.de>
This commit is contained in:
Marek Behún 2021-08-16 15:19:39 +02:00 committed by Stefan Roese
parent 008a069b89
commit aeb0ca64db
2 changed files with 17 additions and 1 deletions

View File

@ -419,12 +419,27 @@ int board_early_init_f(void)
return 0;
}
void spl_board_init(void)
{
/*
* If booting from UART, disable MCU watchdog in SPL, since uploading
* U-Boot proper can take too much time and trigger it.
*/
if (get_boot_device() == BOOT_DEVICE_UART)
disable_mcu_watchdog();
}
int board_init(void)
{
/* address of boot parameters */
gd->bd->bi_boot_params = mvebu_sdram_bar(0) + 0x100;
disable_mcu_watchdog();
/*
* If not booting from UART, MCU watchdog was not disabled in SPL,
* disable it now.
*/
if (get_boot_device() != BOOT_DEVICE_UART)
disable_mcu_watchdog();
return 0;
}

View File

@ -33,6 +33,7 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
# CONFIG_DISPLAY_BOARDINFO is not set
CONFIG_DISPLAY_BOARDINFO_LATE=y
CONFIG_MISC_INIT_R=y
CONFIG_SPL_BOARD_INIT=y
CONFIG_SPL_I2C=y
CONFIG_CMD_MEMTEST=y
CONFIG_SYS_ALT_MEMTEST=y