How to test watchdog timer values and ensuring it is working as intended
Hello,
I am using an Freescale/nxp mx6solo and I want to test that the watchdog timer is working as intended. I have enabled it on my board and have confirmed it during boot
Quoted 8 lines
U-Boot SPL 2015.04-g0f11429-dirty (Jan 18 2017 - 05:42:24)
Part number: VSM-SOLO-102
Assembly: AS151004858
Date of production: 2016 Feb 08 NAND : 512 MiB
Quoted 7 lines
U-Boot 2015.04-g0f11429-dirty (Jan 18 2017 - 05:42:24)
CPU: Freescale i.MX6SOLO rev1.2 at 792 MHz CPU: Temperature 53 C Reset cause: POR Board: Variscite VAR-SOM-MX6 SOM-Solo 792 MHz
*
Quoted 1 line
Watchdog enabled
*
Quoted 13 lines
I2C: ready DRAM: 1 GiB NAND: 512 MiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 auto-detected panel VAR-WVGA MX6CB-R Display: VAR-WVGA MX6CB-R (800x480) UBI init error 22 Error: no valid bmp image at 18100000 In: serial Out: serial Err: serial eMMC: 3.5 GiB Net: using phy at 7
Quoted 3 lines
FEC [PRIME]
Normal Boot
Hit any key to stop autoboot: 0
I have just initialised the watchdog and using the provided timeout values in /drivers/watchdog/imx_watchdog.c which are
Quoted 13 lines
void
hw_watchdog_init(void)
{
structwatchdog_regs*wdog = (structwatchdog_regs
*)WDOG1_BASE_ADDR;
u16 timeout;/*
* The timer watchdog can be set between
* 0.5 and 128 Seconds. If not defined
* in configuration file, sets 128 Seconds */
#ifndefCONFIG_WATCHDOG_TIMEOUT_MSECS#defineCONFIG_WATCHDOG_TIMEOUT_MSECS128000
Quoted 7 lines
#endif timeout = (CONFIG_WATCHDOG_TIMEOUT_MSECS / 500) - 1; writew(WCR_WDZST | WCR_WDBG | WCR_WDE | WCR_WDT | WCR_SRS | SET_WCR_WT(timeout), &wdog->wcr); hw_watchdog_reset(); }#endif
I want to confirm that this is working so I was wondering how I am able to test that the system is not kicking the watchdog.
Thanks
--
View this message in context: http://u-boot.10912.n7.nabble.com/How-to-test-watchdog-timer-values-and-ensuring-it-is-working-as-intended-tp279083.html
Sent from the U-Boot mailing list archive at Nabble.com.