[U-Boot] [PATCH 1/3] board: engicam: Add watchdog support on Engicam

This patch adds watchdog support for engicam imx6 family of boards.
Signed-off-by: Shyam Saini shyam.saini@amarulasolutions.com --- board/engicam/common/board.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/board/engicam/common/board.c b/board/engicam/common/board.c index 5dccb17cb271..7486f0ac2d9c 100644 --- a/board/engicam/common/board.c +++ b/board/engicam/common/board.c @@ -8,6 +8,7 @@ #include <common.h> #include <mmc.h> #include <asm/arch/sys_proto.h> +#include <watchdog.h>
#include "board.h"
@@ -88,6 +89,10 @@ int board_late_init(void)
setenv_fdt_file();
+#ifdef CONFIG_HW_WATCHDOG + hw_watchdog_init(); +#endif + return 0; }

Enable watchdog and bootcounter support on imx6qdl board
Signed-off-by: Shyam Saini shyam.saini@amarulasolutions.com --- configs/imx6qdl_icore_mmc_defconfig | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig index f22e5ea81996..68ad1c6d2028 100644 --- a/configs/imx6qdl_icore_mmc_defconfig +++ b/configs/imx6qdl_icore_mmc_defconfig @@ -12,6 +12,13 @@ CONFIG_DEBUG_UART_BASE=0x021f0000 CONFIG_DEBUG_UART_CLOCK=24000000 CONFIG_SPL_LIBDISK_SUPPORT=y # CONFIG_CMD_BMODE is not set +CONFIG_CMD_BOOTCOUNT=y +CONFIG_BOOTCOUNT_LIMIT=y +CONFIG_BOOTCOUNT_BOOTLIMIT=3 +CONFIG_SYS_BOOTCOUNT_SINGLEWORD=y +CONFIG_SYS_BOOTCOUNT_ADDR=0x00900000 +CONFIG_SYS_BOOTCOUNT_MAGIC=0x0B01C041 +CONFIG_IMX_WATCHDOG=y CONFIG_DEBUG_UART=y CONFIG_NR_DRAM_BANKS=1 CONFIG_FIT=y

Combined with watchdog board reset mechanism, this can be used as recovery boot option after bootlimit exceeds the configured value.
Signed-off-by: Shyam Saini shyam.saini@amarulasolutions.com --- include/configs/imx6-engicam.h | 11 +++++++++++ 1 file changed, 11 insertions(+)
diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h index 7baa265934fb..571852d803ad 100644 --- a/include/configs/imx6-engicam.h +++ b/include/configs/imx6-engicam.h @@ -43,19 +43,30 @@ "fdt_addr=" FDT_ADDR "\0" \ "boot_fdt=try\0" \ "mmcpart=1\0" \ + "recovery_device=0\0" \ + "recovery_part=2\0" \ + "recovery_root=/dev/mmcblk0p2 rootwait rw\0" \ "nandroot=ubi0:rootfs rootfstype=ubifs\0" \ "mmcautodetect=yes\0" \ "mmcargs=setenv bootargs console=${console},${baudrate} " \ "root=${mmcroot}\0" \ + "recovery_mmcargs= setenv bootargs console=${console},${baudrate} "\ + "root=${recovery_root}\0" \ "ubiargs=setenv bootargs console=${console},${baudrate} " \ "ubi.mtd=5 root=${nandroot} ${mtdparts}\0" \ "loadbootscript=" \ "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ "bootscript=echo Running bootscript from mmc ...; " \ "source\0" \ + "recovery_loadimage=ext2load mmc ${recovery_device}:${recovery_part} ${loadaddr} ${image}\0" \ + "recovery_loadfdt=ext2load mmc ${recovery_device}:${recovery_part} ${fdt_addr} ${fdt_file}\0" \ "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ "loadfit=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${fit_image}\0" \ + "altbootcmd=run recovery_boot\0"\ + "recovery_boot=echo Recovery Boot from mmc ...; " \ + "run recovery_loadimage ; run recovery_loadfdt; run recovery_mmcargs; "\ + "bootm ${loadaddr} - ${fdt_addr}\0" \ "fitboot=echo Booting FIT image from mmc ...; " \ "run mmcargs; " \ "bootm ${loadaddr}\0" \
participants (1)
-
Shyam Saini