diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-11-08 11:50:24 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-11-12 13:25:41 +0100 |
commit | ccc6695c843e8cb83df4dd8e6b1dc43c9df33216 (patch) | |
tree | f90f1077a504adc8a32a10d022d75f66fe77bea0 | |
parent | rtems: Avoid <rtems/score/timecounter.h> in API (diff) | |
download | rtems-ccc6695c843e8cb83df4dd8e6b1dc43c9df33216.tar.bz2 |
score: Introduce <rtems/score/watchdogticks.h>
Separate the definitions related to watchdog ticks from the watchdog
structures.
Update #3598.
-rw-r--r-- | cpukit/headers.am | 1 | ||||
-rw-r--r-- | cpukit/include/rtems/config.h | 2 | ||||
-rw-r--r-- | cpukit/include/rtems/rtems/clock.h | 1 | ||||
-rw-r--r-- | cpukit/include/rtems/rtems/ratemon.h | 1 | ||||
-rw-r--r-- | cpukit/include/rtems/rtems/types.h | 2 | ||||
-rw-r--r-- | cpukit/include/rtems/score/mppkt.h | 2 | ||||
-rw-r--r-- | cpukit/include/rtems/score/threadq.h | 4 | ||||
-rw-r--r-- | cpukit/include/rtems/score/watchdog.h | 39 | ||||
-rw-r--r-- | cpukit/include/rtems/score/watchdogimpl.h | 1 | ||||
-rw-r--r-- | cpukit/include/rtems/score/watchdogticks.h | 73 | ||||
-rw-r--r-- | cpukit/score/src/watchdogtickssinceboot.c | 2 |
11 files changed, 85 insertions, 43 deletions
diff --git a/cpukit/headers.am b/cpukit/headers.am index 3a85f29782..fa51f8dcee 100644 --- a/cpukit/headers.am +++ b/cpukit/headers.am @@ -395,6 +395,7 @@ include_rtems_score_HEADERS += include/rtems/score/userext.h include_rtems_score_HEADERS += include/rtems/score/userextimpl.h include_rtems_score_HEADERS += include/rtems/score/watchdog.h include_rtems_score_HEADERS += include/rtems/score/watchdogimpl.h +include_rtems_score_HEADERS += include/rtems/score/watchdogticks.h include_rtems_score_HEADERS += include/rtems/score/wkspace.h include_rtems_trace_HEADERS += include/rtems/trace/rtems-trace-buffer-vars.h include_sys_HEADERS += include/sys/_ffcounter.h diff --git a/cpukit/include/rtems/config.h b/cpukit/include/rtems/config.h index b8422d67cd..a6b918c09b 100644 --- a/cpukit/include/rtems/config.h +++ b/cpukit/include/rtems/config.h @@ -29,7 +29,7 @@ #include <rtems/score/object.h> #include <rtems/score/isr.h> -#include <rtems/score/watchdog.h> +#include <rtems/score/watchdogticks.h> #include <rtems/rtems/config.h> #include <rtems/posix/config.h> #include <rtems/extension.h> diff --git a/cpukit/include/rtems/rtems/clock.h b/cpukit/include/rtems/rtems/clock.h index f3f406d2e6..77b379f285 100644 --- a/cpukit/include/rtems/rtems/clock.h +++ b/cpukit/include/rtems/rtems/clock.h @@ -29,7 +29,6 @@ #ifndef _RTEMS_RTEMS_CLOCK_H #define _RTEMS_RTEMS_CLOCK_H -#include <rtems/score/watchdog.h> #include <rtems/rtems/status.h> #include <rtems/rtems/types.h> #include <rtems/config.h> diff --git a/cpukit/include/rtems/rtems/ratemon.h b/cpukit/include/rtems/rtems/ratemon.h index 747d967af2..095cab31eb 100644 --- a/cpukit/include/rtems/rtems/ratemon.h +++ b/cpukit/include/rtems/rtems/ratemon.h @@ -35,7 +35,6 @@ #include <rtems/rtems/types.h> #include <rtems/rtems/status.h> -#include <rtems/score/watchdog.h> struct rtems_printer; diff --git a/cpukit/include/rtems/rtems/types.h b/cpukit/include/rtems/rtems/types.h index 13adf175a6..ba904536ee 100644 --- a/cpukit/include/rtems/rtems/types.h +++ b/cpukit/include/rtems/rtems/types.h @@ -28,7 +28,7 @@ #include <rtems/score/heap.h> #include <rtems/score/object.h> #include <rtems/score/priority.h> -#include <rtems/score/watchdog.h> +#include <rtems/score/watchdogticks.h> #include <rtems/rtems/modes.h> #if defined(RTEMS_MULTIPROCESSING) #include <rtems/score/mpci.h> diff --git a/cpukit/include/rtems/score/mppkt.h b/cpukit/include/rtems/score/mppkt.h index 573abf574b..d6d41261f6 100644 --- a/cpukit/include/rtems/score/mppkt.h +++ b/cpukit/include/rtems/score/mppkt.h @@ -24,7 +24,7 @@ #include <rtems/score/object.h> #include <rtems/score/priority.h> -#include <rtems/score/watchdog.h> +#include <rtems/score/watchdogticks.h> #ifdef __cplusplus extern "C" { diff --git a/cpukit/include/rtems/score/threadq.h b/cpukit/include/rtems/score/threadq.h index 3e618bf5af..5ddc2a10bb 100644 --- a/cpukit/include/rtems/score/threadq.h +++ b/cpukit/include/rtems/score/threadq.h @@ -25,12 +25,14 @@ #include <rtems/score/priority.h> #include <rtems/score/rbtree.h> #include <rtems/score/states.h> -#include <rtems/score/watchdog.h> +#include <rtems/score/watchdogticks.h> #ifdef __cplusplus extern "C" { #endif +struct Per_CPU_Control; + struct Scheduler_Node; /** diff --git a/cpukit/include/rtems/score/watchdog.h b/cpukit/include/rtems/score/watchdog.h index 71126d3508..9db87adae8 100644 --- a/cpukit/include/rtems/score/watchdog.h +++ b/cpukit/include/rtems/score/watchdog.h @@ -1,5 +1,7 @@ /** - * @file rtems/score/watchdog.h + * @file + * + * @ingroup ScoreWatchdog * * @brief Constants and Structures Associated with Watchdog Timers * @@ -46,18 +48,6 @@ extern "C" { typedef struct Watchdog_Control Watchdog_Control; /** - * @brief Type is used to specify the length of intervals. - * - * This type is used to specify the length of intervals. - */ -typedef uint32_t Watchdog_Interval; - -/** - * @brief Special watchdog ticks value to indicate an infinite wait. - */ -#define WATCHDOG_NO_TIMEOUT 0 - -/** * @brief Return type from a Watchdog Service Routine. * * This type defines the return type from a Watchdog Service Routine. @@ -124,29 +114,6 @@ struct Watchdog_Control { uint64_t expire; }; -/** - * @brief The watchdog ticks counter. - * - * With a 1ms watchdog tick, this counter overflows after 50 days since boot. - */ -extern volatile Watchdog_Interval _Watchdog_Ticks_since_boot; - -/** - * @brief The watchdog nanoseconds per tick. - * - * This constant is defined by the application configuration via - * <rtems/confdefs.h>. - */ -extern const uint32_t _Watchdog_Nanoseconds_per_tick; - -/** - * @brief The watchdog ticks per second. - * - * This constant is defined by the application configuration via - * <rtems/confdefs.h>. - */ -extern const uint32_t _Watchdog_Ticks_per_second; - /**@}*/ #ifdef __cplusplus diff --git a/cpukit/include/rtems/score/watchdogimpl.h b/cpukit/include/rtems/score/watchdogimpl.h index 6fe9d5acf5..17ef130d3a 100644 --- a/cpukit/include/rtems/score/watchdogimpl.h +++ b/cpukit/include/rtems/score/watchdogimpl.h @@ -20,6 +20,7 @@ #define _RTEMS_SCORE_WATCHDOGIMPL_H #include <rtems/score/watchdog.h> +#include <rtems/score/watchdogticks.h> #include <rtems/score/assert.h> #include <rtems/score/isrlock.h> #include <rtems/score/percpu.h> diff --git a/cpukit/include/rtems/score/watchdogticks.h b/cpukit/include/rtems/score/watchdogticks.h new file mode 100644 index 0000000000..8a69a288fc --- /dev/null +++ b/cpukit/include/rtems/score/watchdogticks.h @@ -0,0 +1,73 @@ +/** + * @file + * + * @ingroup ScoreWatchdog + */ + +/* + * COPYRIGHT (c) 1989-2009. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.org/license/LICENSE. + */ + +#ifndef _RTEMS_SCORE_WATCHDOGTICKS_H +#define _RTEMS_SCORE_WATCHDOGTICKS_H + +#include <rtems/score/basedefs.h> + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @addtogroup ScoreWatchdog + * + * @{ + */ + +/** + * @brief Type is used to specify the length of intervals. + * + * This type is used to specify the length of intervals. + */ +typedef uint32_t Watchdog_Interval; + +/** + * @brief Special watchdog ticks value to indicate an infinite wait. + */ +#define WATCHDOG_NO_TIMEOUT 0 + +/** + * @brief The watchdog ticks counter. + * + * With a 1ms watchdog tick, this counter overflows after 50 days since boot. + */ +extern volatile Watchdog_Interval _Watchdog_Ticks_since_boot; + +/** + * @brief The watchdog nanoseconds per tick. + * + * This constant is defined by the application configuration via + * <rtems/confdefs.h>. + */ +extern const uint32_t _Watchdog_Nanoseconds_per_tick; + +/** + * @brief The watchdog ticks per second. + * + * This constant is defined by the application configuration via + * <rtems/confdefs.h>. + */ +extern const uint32_t _Watchdog_Ticks_per_second; + +/** @} */ + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ diff --git a/cpukit/score/src/watchdogtickssinceboot.c b/cpukit/score/src/watchdogtickssinceboot.c index 668348c0d5..0857d0ef73 100644 --- a/cpukit/score/src/watchdogtickssinceboot.c +++ b/cpukit/score/src/watchdogtickssinceboot.c @@ -18,7 +18,7 @@ #include "config.h" #endif -#include <rtems/score/watchdog.h> +#include <rtems/score/watchdogticks.h> /* * This is defined in a separate module to allow the new network to define it |