Fix a couple of bugs in the STM32 IWDG driver
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4620 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
parent
ca34a1bc4d
commit
c18cc5aec5
@ -223,6 +223,9 @@ static void parse_args(FAR struct wdog_example_s *wdog, int argc, FAR char **arg
|
||||
int wdog_main(int argc, char *argv[])
|
||||
{
|
||||
struct wdog_example_s wdog;
|
||||
#ifdef CONFIG_DEBUG_WATCHDOG
|
||||
struct watchdog_status_s status;
|
||||
#endif
|
||||
long elapsed;
|
||||
int fd;
|
||||
int ret;
|
||||
@ -278,6 +281,21 @@ int wdog_main(int argc, char *argv[])
|
||||
|
||||
usleep(wdog.pingdelay * 1000);
|
||||
|
||||
/* Show watchdog status. Only if debug is enabled because this
|
||||
* could interfere with the timer.
|
||||
*/
|
||||
|
||||
#ifdef CONFIG_DEBUG_WATCHDOG
|
||||
ret = ioctl(fd, WDIOC_GETSTATUS, (unsigned long)&status);
|
||||
if (ret < 0)
|
||||
{
|
||||
message("wdog_main: ioctl(WDIOC_GETSTATUS) failed: %d\n", errno);
|
||||
goto errout_with_dev;
|
||||
}
|
||||
message("wdog_main: flags=%08x timeout=%d timeleft=%d\n",
|
||||
status.flags, status.timeout, status.timeleft);
|
||||
#endif
|
||||
|
||||
/* Then ping */
|
||||
|
||||
ret = ioctl(fd, WDIOC_KEEPALIVE, 0);
|
||||
@ -299,6 +317,21 @@ int wdog_main(int argc, char *argv[])
|
||||
|
||||
usleep(wdog.pingdelay * 1000);
|
||||
|
||||
/* Show watchdog status. Only if debug is enabled because this
|
||||
* could interfere with the timer.
|
||||
*/
|
||||
|
||||
#ifdef CONFIG_DEBUG_WATCHDOG
|
||||
ret = ioctl(fd, WDIOC_GETSTATUS, (unsigned long)&status);
|
||||
if (ret < 0)
|
||||
{
|
||||
message("wdog_main: ioctl(WDIOC_GETSTATUS) failed: %d\n", errno);
|
||||
goto errout_with_dev;
|
||||
}
|
||||
message("wdog_main: flags=%08x timeout=%d timeleft=%d\n",
|
||||
status.flags, status.timeout, status.timeleft);
|
||||
#endif
|
||||
|
||||
message(" NO ping elapsed=%ld\n", elapsed);
|
||||
msgflush();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user