X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fdrv%2Fwdt.h;h=578e145dcfff83b34cacf2d615dd232dc4085d38;hb=d5099d19c0fcaa2837a01abbd1b9dbd9c01add42;hp=85f33f8249b544d86bf5012c4f90e57e0dac0570;hpb=1260bb120279dc22498c875ac4239bf44b5917bd;p=bertos.git diff --git a/bertos/drv/wdt.h b/bertos/drv/wdt.h index 85f33f82..578e145d 100644 --- a/bertos/drv/wdt.h +++ b/bertos/drv/wdt.h @@ -35,13 +35,18 @@ * \author Bernie Innocenti * * \brief Watchdog interface + * + * $WIZARD_MODULE = { + * "name" : "wdt", + * "depends" : [], + * "configuration" : "bertos/cfg/cfg_wdt.h" + * } */ #ifndef DRV_WDT_H #define DRV_WDT_H #include "cfg/cfg_wdt.h" -#include "cfg/cfg_arch.h" #include // INLINE @@ -50,7 +55,7 @@ #error CONFIG_WATCHDOG must be defined to either 0 or 1 #endif -#if OS_HOSTED || !CONFIG_WATCHDOG +#if OS_HOSTED #include #include @@ -61,10 +66,13 @@ #else #error unknown CPU #endif +#elif CONFIG_WATCHDOG + #include CPU_HEADER(wdt) #endif /* CONFIG_WATCHDOG */ #if OS_HOSTED || !CONFIG_WATCHDOG + /** * Reset the watchdog timer. */ @@ -83,11 +91,13 @@ } /** - * Set watchdog timer timeout. + * Start the watchdog timer that fire at the select + * timeout. * - * \param timeout 0: 16.3ms, 7: 2.1s + * \param timeout this value is target dependant. + * See the target documentation for more details. */ - INLINE void wdt_init(uint8_t timeout) + INLINE void wdt_start(uint32_t timeout) { #if CONFIG_WATCHDOG #if OS_QT @@ -100,29 +110,14 @@ (void)timeout; #elif OS_POSIX (void)timeout; // NOP - #else - #error unknown CPU #endif #endif /* CONFIG_WATCHDOG */ - (void)timeout; - } - - INLINE void wdt_start(void) - { -#if CONFIG_WATCHDOG - #if OS_QT - // NOP - #elif OS_POSIX - // NOP - #else - #error unknown CPU - #endif -#endif /* CONFIG_WATCHDOG */ + (void)timeout; // NOP } INLINE void wdt_stop(void) { -#if CONFIG_WATCHDOG + #if CONFIG_WATCHDOG #if OS_QT // NOP #elif OS_POSIX @@ -130,7 +125,7 @@ #else #error unknown CPU #endif -#endif /* CONFIG_WATCHDOG */ + #endif /* CONFIG_WATCHDOG */ } #endif /* OS_HOSTED || !CONFIG_WATCHDOG */