[rtems commit] score: Introduce <rtems/score/watchdogticks.h>

Sebastian Huber sebh at rtems.org
Mon Nov 12 14:40:06 UTC 2018


Module:    rtems
Branch:    master
Commit:    ccc6695c843e8cb83df4dd8e6b1dc43c9df33216
Changeset: http://git.rtems.org/rtems/commit/?id=ccc6695c843e8cb83df4dd8e6b1dc43c9df33216

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Thu Nov  8 11:50:24 2018 +0100

score: Introduce <rtems/score/watchdogticks.h>

Separate the definitions related to watchdog ticks from the watchdog
structures.

Update #3598.

---

 cpukit/headers.am                          |  1 +
 cpukit/include/rtems/config.h              |  2 +-
 cpukit/include/rtems/rtems/clock.h         |  1 -
 cpukit/include/rtems/rtems/ratemon.h       |  1 -
 cpukit/include/rtems/rtems/types.h         |  2 +-
 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 ++++++++++++++++++++++++++++++
 cpukit/score/src/watchdogtickssinceboot.c  |  2 +-
 11 files changed, 85 insertions(+), 43 deletions(-)

diff --git a/cpukit/headers.am b/cpukit/headers.am
index 3a85f29..fa51f8d 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 b8422d6..a6b918c 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 f3f406d..77b379f 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 747d967..095cab3 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 13adf17..ba90453 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 573abf5..d6d4126 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 3e618bf..5ddc2a1 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 71126d3..9db87ad 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 6fe9d5a..17ef130 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 0000000..8a69a28
--- /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 668348c..0857d0e 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




More information about the vc mailing list