diff options
author | Lukasz Majewski <lukma@denx.de> | 2018-05-11 16:51:09 +0200 |
---|---|---|
committer | Stefano Babic <sbabic@denx.de> | 2018-06-18 15:44:21 +0200 |
commit | 76d1d169f302b533249aa1fb84b765af0722a629 (patch) | |
tree | 4780339354c2f2ffb56adf3329888eef4f39b4aa | |
parent | 27aede24bcdec3777da7b23efc0a8cb777d83d6a (diff) | |
download | u-boot-76d1d169f302b533249aa1fb84b765af0722a629.tar.gz |
display5: wdt: Enable WDT support (both SPL and u-boot)
Test case:
The fitImage gets corrupted:
truncate -c -s 3M fitImage
run tftp_mmc_fitImg
setenv boot_os y
reset
[board shall hang in SPL with
"Trying to boot from MMC1" information]
Then after X seconds WDT is causing board to reset. After N boot attempts
we enter recovery mode.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
-rw-r--r-- | board/liebherr/display5/spl.c | 5 | ||||
-rw-r--r-- | configs/display5_defconfig | 1 | ||||
-rw-r--r-- | configs/display5_factory_defconfig | 1 | ||||
-rw-r--r-- | include/configs/display5.h | 5 |
4 files changed, 12 insertions, 0 deletions
diff --git a/board/liebherr/display5/spl.c b/board/liebherr/display5/spl.c index 551a14347d..5c6b8bff38 100644 --- a/board/liebherr/display5/spl.c +++ b/board/liebherr/display5/spl.c @@ -21,6 +21,7 @@ #include <fsl_esdhc.h> #include <netdev.h> #include <bootcount.h> +#include <watchdog.h> #include "common.h" DECLARE_GLOBAL_DATA_PTR; @@ -197,6 +198,10 @@ void board_init_f(ulong dummy) displ5_set_iomux_misc_spl(); + /* Initialize and reset WDT in SPL */ + hw_watchdog_init(); + WATCHDOG_RESET(); + /* load/boot image from boot device */ board_init_r(NULL, 0); } diff --git a/configs/display5_defconfig b/configs/display5_defconfig index 04671abfeb..aaf8529628 100644 --- a/configs/display5_defconfig +++ b/configs/display5_defconfig @@ -10,6 +10,7 @@ CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y CONFIG_SPL_SPI_FLASH_SUPPORT=y CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_DEFAULT_DEVICE_TREE="imx6q-display5" CONFIG_FIT=y CONFIG_SPL_LOAD_FIT=y diff --git a/configs/display5_factory_defconfig b/configs/display5_factory_defconfig index e23948b932..14df849fb7 100644 --- a/configs/display5_factory_defconfig +++ b/configs/display5_factory_defconfig @@ -9,6 +9,7 @@ CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y CONFIG_SPL_SPI_FLASH_SUPPORT=y CONFIG_SPL_SPI_SUPPORT=y +CONFIG_SPL_WATCHDOG_SUPPORT=y CONFIG_FIT=y CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg,MX6Q" diff --git a/include/configs/display5.h b/include/configs/display5.h index c4cd2ff6f9..929741dedd 100644 --- a/include/configs/display5.h +++ b/include/configs/display5.h @@ -383,6 +383,11 @@ #define CONFIG_MTD_PARTITIONS #define CONFIG_MTD_DEVICE +/* Watchdog */ +#define CONFIG_HW_WATCHDOG +#define CONFIG_IMX_WATCHDOG +#define CONFIG_WATCHDOG_TIMEOUT_MSECS 15000 + /* ENV config */ #ifdef CONFIG_ENV_IS_IN_SPI_FLASH #define CONFIG_ENV_SIZE (SZ_64K) |