From ccc6695c843e8cb83df4dd8e6b1dc43c9df33216 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 8 Nov 2018 11:50:24 +0100 Subject: score: Introduce Separate the definitions related to watchdog ticks from the watchdog structures. Update #3598. --- cpukit/include/rtems/score/mppkt.h | 2 +- cpukit/include/rtems/score/threadq.h | 4 +- cpukit/include/rtems/score/watchdog.h | 39 ++-------------- cpukit/include/rtems/score/watchdogimpl.h | 1 + cpukit/include/rtems/score/watchdogticks.h | 73 ++++++++++++++++++++++++++++++ 5 files changed, 81 insertions(+), 38 deletions(-) create mode 100644 cpukit/include/rtems/score/watchdogticks.h (limited to 'cpukit/include/rtems/score') 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 #include -#include +#include #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 #include #include -#include +#include #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 * @@ -45,18 +47,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. * @@ -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 - * . - */ -extern const uint32_t _Watchdog_Nanoseconds_per_tick; - -/** - * @brief The watchdog ticks per second. - * - * This constant is defined by the application configuration via - * . - */ -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 +#include #include #include #include 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 + +#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 + * . + */ +extern const uint32_t _Watchdog_Nanoseconds_per_tick; + +/** + * @brief The watchdog ticks per second. + * + * This constant is defined by the application configuration via + * . + */ +extern const uint32_t _Watchdog_Ticks_per_second; + +/** @} */ + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ -- cgit v1.2.3