diff options
author | patacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679> | 2011-06-15 19:47:06 +0000 |
---|---|---|
committer | patacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679> | 2011-06-15 19:47:06 +0000 |
commit | 3271bd609cbfe0a109fec51524d55d273a6d038c (patch) | |
tree | d17d74b865c60640b39079776a24c11e010b4149 /nuttx/arch/avr/src | |
parent | e300da65e46e20600975ce67c8ba68e07ebd55d9 (diff) |
Need to control watchdog timer on AT90USB
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@3706 7fd9a85b-ad96-42d3-883c-3090e2eb8679
Diffstat (limited to 'nuttx/arch/avr/src')
-rw-r--r-- | nuttx/arch/avr/src/at90usb/at90usb_lowinit.c | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/nuttx/arch/avr/src/at90usb/at90usb_lowinit.c b/nuttx/arch/avr/src/at90usb/at90usb_lowinit.c index f7e7cfb69b..5f8b2e4329 100644 --- a/nuttx/arch/avr/src/at90usb/at90usb_lowinit.c +++ b/nuttx/arch/avr/src/at90usb/at90usb_lowinit.c @@ -38,6 +38,7 @@ **************************************************************************/ #include <nuttx/config.h> +#include <avr/wdt.h> #include "at90usb_config.h" #include "up_internal.h" @@ -47,6 +48,28 @@ * Private Definitions **************************************************************************/ +#if defined(CONFIG_WDTO_15MS) +# define WDTO_VALUE WDTO_15MS +#elif defined(CONFIG_WDTO_30MS) +# define WDTO_VALUE WDTO_30MS +#elif defined(CONFIG_WDTO_60MS) +# define WDTO_VALUE WDTO_60MS +#elif defined(CONFIG_WDTO_120MS) +# define WDTO_VALUE WDTO_120MS +#elif defined(CONFIG_WDTO_1250MS) +# define WDTO_VALUE WDTO_250MS +#elif defined(CONFIG_WDTO_500MS) +# define WDTO_VALUE WDTO_500MS +#elif defined(CONFIG_WDTO_1S) +# define WDTO_VALUE WDTO_1S +#elif defined(CONFIG_WDTO_2S) +# define WDTO_VALUE WDTO_2S +#elif defined(CONFIG_WDTO_4S) +# define WDTO_VALUE WDTO_4S +#else /* if defined(CONFIG_WDTO_8S) */ +# define WDTO_VALUE WDTO_8S +#endif + /************************************************************************** * Private Types **************************************************************************/ @@ -68,6 +91,23 @@ **************************************************************************/ /************************************************************************** + * Name: up_wdtinit + * + * Description: + * Initialize the watchdog per the NuttX configuration. + * + **************************************************************************/ + +static inline void up_wdtinit(void) +{ +#ifndef CONFIG_AVR_WDT + wdt_disable(); +#else + wdt_enable(WDTO_VALUE); +#endif +} + +/************************************************************************** * Public Functions **************************************************************************/ @@ -83,6 +123,10 @@ void up_lowinit(void) { + /* Initialize the watchdog timer */ + + up_wdtinit(); + /* Initialize a console (probably a serial console) */ up_consoleinit(); |