summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2013-07-22 10:21:03 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2013-07-22 16:57:25 +0200
commit4b48ece07d4aef3d43cf1865944f0cd1ca4a7b6c (patch)
treebb37e9f3b6b76d31db394cac5e036900d5cc0cc7 /cpukit
parentscore: Create chain implementation header (diff)
downloadrtems-4b48ece07d4aef3d43cf1865944f0cd1ca4a7b6c.tar.bz2
score: Create watchdog implementation header
Move implementation specific parts of watchdog.h and watchdog.inl into new header file watchdogimpl.h. The watchdog.h contains now only the application visible API.
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/libmisc/capture/capture-cli.c2
-rw-r--r--cpukit/libmisc/capture/capture.c2
-rw-r--r--cpukit/libmisc/cpuuse/cpuusagereport.c1
-rw-r--r--cpukit/libmisc/cpuuse/cpuusagereset.c1
-rw-r--r--cpukit/posix/src/alarm.c1
-rw-r--r--cpukit/posix/src/nanosleep.c1
-rw-r--r--cpukit/posix/src/psignal.c1
-rw-r--r--cpukit/posix/src/psignalunblockthread.c1
-rw-r--r--cpukit/posix/src/pthread.c1
-rw-r--r--cpukit/posix/src/pthreadcreate.c1
-rw-r--r--cpukit/posix/src/pthreadsetschedparam.c1
-rw-r--r--cpukit/posix/src/timercreate.c1
-rw-r--r--cpukit/posix/src/timerdelete.c1
-rw-r--r--cpukit/posix/src/timergettime.c1
-rw-r--r--cpukit/posix/src/timerinserthelper.c2
-rw-r--r--cpukit/posix/src/timersettime.c1
-rw-r--r--cpukit/posix/src/ualarm.c1
-rw-r--r--cpukit/rtems/src/clockgettickssinceboot.c2
-rw-r--r--cpukit/rtems/src/clocksetnsecshandler.c2
-rw-r--r--cpukit/rtems/src/clocktick.c2
-rw-r--r--cpukit/rtems/src/eventseize.c1
-rw-r--r--cpukit/rtems/src/eventsurrender.c1
-rw-r--r--cpukit/rtems/src/ratemoncancel.c1
-rw-r--r--cpukit/rtems/src/ratemoncreate.c1
-rw-r--r--cpukit/rtems/src/ratemondelete.c1
-rw-r--r--cpukit/rtems/src/ratemonperiod.c1
-rw-r--r--cpukit/rtems/src/ratemontimeout.c1
-rw-r--r--cpukit/rtems/src/taskwakeafter.c1
-rw-r--r--cpukit/rtems/src/taskwakewhen.c1
-rw-r--r--cpukit/rtems/src/timercancel.c2
-rw-r--r--cpukit/rtems/src/timercreate.c2
-rw-r--r--cpukit/rtems/src/timerdelete.c2
-rw-r--r--cpukit/rtems/src/timerfireafter.c2
-rw-r--r--cpukit/rtems/src/timerfirewhen.c2
-rw-r--r--cpukit/rtems/src/timerreset.c2
-rw-r--r--cpukit/rtems/src/timerserver.c2
-rw-r--r--cpukit/rtems/src/timerserverfireafter.c2
-rw-r--r--cpukit/rtems/src/timerserverfirewhen.c2
-rw-r--r--cpukit/sapi/src/exinit.c2
-rw-r--r--cpukit/score/Makefile.am2
-rw-r--r--cpukit/score/include/rtems/score/watchdog.h243
-rw-r--r--cpukit/score/include/rtems/score/watchdogimpl.h476
-rw-r--r--cpukit/score/inline/rtems/score/watchdog.inl262
-rw-r--r--cpukit/score/preinstall.am8
-rw-r--r--cpukit/score/src/corespinlockwait.c1
-rw-r--r--cpukit/score/src/coretodget.c2
-rw-r--r--cpukit/score/src/coretodset.c2
-rw-r--r--cpukit/score/src/coretodtickle.c2
-rw-r--r--cpukit/score/src/schedulercbsreleasejob.c1
-rw-r--r--cpukit/score/src/schedulercbsunblock.c1
-rw-r--r--cpukit/score/src/scheduleredfprioritycompare.c1
-rw-r--r--cpukit/score/src/scheduleredfreleasejob.c1
-rw-r--r--cpukit/score/src/threadblockingoperationcancel.c1
-rw-r--r--cpukit/score/src/threadclose.c1
-rw-r--r--cpukit/score/src/threadinitialize.c2
-rw-r--r--cpukit/score/src/threadqdequeuefifo.c1
-rw-r--r--cpukit/score/src/threadqdequeuepriority.c1
-rw-r--r--cpukit/score/src/threadqenqueue.c1
-rw-r--r--cpukit/score/src/threadqextractfifo.c1
-rw-r--r--cpukit/score/src/threadqextractpriority.c1
-rw-r--r--cpukit/score/src/threadreset.c1
-rw-r--r--cpukit/score/src/watchdog.c2
-rw-r--r--cpukit/score/src/watchdogadjust.c2
-rw-r--r--cpukit/score/src/watchdogadjusttochain.c2
-rw-r--r--cpukit/score/src/watchdoginsert.c2
-rw-r--r--cpukit/score/src/watchdognanoseconds.c2
-rw-r--r--cpukit/score/src/watchdogremove.c2
-rw-r--r--cpukit/score/src/watchdogreport.c2
-rw-r--r--cpukit/score/src/watchdogreportchain.c2
-rw-r--r--cpukit/score/src/watchdogtickle.c2
70 files changed, 561 insertions, 524 deletions
diff --git a/cpukit/libmisc/capture/capture-cli.c b/cpukit/libmisc/capture/capture-cli.c
index a0326b7489..4cf9b6b4c0 100644
--- a/cpukit/libmisc/capture/capture-cli.c
+++ b/cpukit/libmisc/capture/capture-cli.c
@@ -233,7 +233,7 @@ rtems_capture_cli_task_list (int argc __attribute__((un
capture_timestamp (&ticks, &tick_offset);
else
{
- ticks = _Watchdog_Ticks_since_boot;
+ ticks = rtems_clock_get_ticks_since_boot();
tick_offset = 0;
}
diff --git a/cpukit/libmisc/capture/capture.c b/cpukit/libmisc/capture/capture.c
index d3f8c5b39c..c31a0790fc 100644
--- a/cpukit/libmisc/capture/capture.c
+++ b/cpukit/libmisc/capture/capture.c
@@ -121,7 +121,7 @@ static inline void rtems_capture_get_time (uint32_t* ticks,
capture_timestamp (ticks, tick_offset);
else
{
- *ticks = _Watchdog_Ticks_since_boot;
+ *ticks = rtems_clock_get_ticks_since_boot();
*tick_offset = 0;
}
}
diff --git a/cpukit/libmisc/cpuuse/cpuusagereport.c b/cpukit/libmisc/cpuuse/cpuusagereport.c
index 238d91a21d..5579b1bff2 100644
--- a/cpukit/libmisc/cpuuse/cpuusagereport.c
+++ b/cpukit/libmisc/cpuuse/cpuusagereport.c
@@ -25,6 +25,7 @@
#include <inttypes.h>
#include <rtems/cpuuse.h>
+#include <rtems/score/watchdogimpl.h>
#ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__
static bool is_executing_on_a_core(
diff --git a/cpukit/libmisc/cpuuse/cpuusagereset.c b/cpukit/libmisc/cpuuse/cpuusagereset.c
index 749eae2628..77bd095ffa 100644
--- a/cpukit/libmisc/cpuuse/cpuusagereset.c
+++ b/cpukit/libmisc/cpuuse/cpuusagereset.c
@@ -23,6 +23,7 @@
#include <inttypes.h>
#include <rtems/cpuuse.h>
+#include <rtems/score/watchdogimpl.h>
static void CPU_usage_Per_thread_handler(
Thread_Control *the_thread
diff --git a/cpukit/posix/src/alarm.c b/cpukit/posix/src/alarm.c
index 98edcb7a15..190a7fbd5b 100644
--- a/cpukit/posix/src/alarm.c
+++ b/cpukit/posix/src/alarm.c
@@ -24,6 +24,7 @@
#include <pthread.h>
#include <rtems/system.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/posix/pthreadimpl.h>
#include <rtems/posix/psignalimpl.h>
diff --git a/cpukit/posix/src/nanosleep.c b/cpukit/posix/src/nanosleep.c
index 7d37480218..1476c17c51 100644
--- a/cpukit/posix/src/nanosleep.c
+++ b/cpukit/posix/src/nanosleep.c
@@ -26,6 +26,7 @@
#include <rtems/score/scheduler.h>
#include <rtems/score/thread.h>
#include <rtems/score/tod.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/seterr.h>
#include <rtems/score/timespec.h>
diff --git a/cpukit/posix/src/psignal.c b/cpukit/posix/src/psignal.c
index 0f0c5e7758..a8f1a28b22 100644
--- a/cpukit/posix/src/psignal.c
+++ b/cpukit/posix/src/psignal.c
@@ -32,6 +32,7 @@
#include <rtems/score/isr.h>
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/score/wkspace.h>
#include <rtems/seterr.h>
#include <rtems/posix/threadsup.h>
diff --git a/cpukit/posix/src/psignalunblockthread.c b/cpukit/posix/src/psignalunblockthread.c
index 34816fa889..cbdbd38c66 100644
--- a/cpukit/posix/src/psignalunblockthread.c
+++ b/cpukit/posix/src/psignalunblockthread.c
@@ -26,6 +26,7 @@
#include <rtems/score/isr.h>
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/score/wkspace.h>
#include <rtems/seterr.h>
#include <rtems/posix/threadsup.h>
diff --git a/cpukit/posix/src/pthread.c b/cpukit/posix/src/pthread.c
index a82b0363eb..3df7478779 100644
--- a/cpukit/posix/src/pthread.c
+++ b/cpukit/posix/src/pthread.c
@@ -29,6 +29,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
#include <rtems/score/userextimpl.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/score/wkspace.h>
#include <rtems/posix/cancel.h>
#include <rtems/posix/pthreadimpl.h>
diff --git a/cpukit/posix/src/pthreadcreate.c b/cpukit/posix/src/pthreadcreate.c
index 0414fd7603..fcac8d4e91 100644
--- a/cpukit/posix/src/pthreadcreate.c
+++ b/cpukit/posix/src/pthreadcreate.c
@@ -30,6 +30,7 @@
#include <rtems/posix/priorityimpl.h>
#include <rtems/posix/time.h>
#include <rtems/score/apimutex.h>
+#include <rtems/score/watchdogimpl.h>
static inline size_t _POSIX_Threads_Ensure_minimum_stack (
size_t size
diff --git a/cpukit/posix/src/pthreadsetschedparam.c b/cpukit/posix/src/pthreadsetschedparam.c
index 393c41f3d7..a8ac4458dd 100644
--- a/cpukit/posix/src/pthreadsetschedparam.c
+++ b/cpukit/posix/src/pthreadsetschedparam.c
@@ -26,6 +26,7 @@
#include <errno.h>
#include <rtems/system.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/posix/pthreadimpl.h>
#include <rtems/posix/priorityimpl.h>
#include <rtems/posix/time.h>
diff --git a/cpukit/posix/src/timercreate.c b/cpukit/posix/src/timercreate.c
index 8316e58398..3af7fc4459 100644
--- a/cpukit/posix/src/timercreate.c
+++ b/cpukit/posix/src/timercreate.c
@@ -30,6 +30,7 @@
#include <rtems/posix/sigset.h>
#include <rtems/posix/time.h>
#include <rtems/posix/timerimpl.h>
+#include <rtems/score/watchdogimpl.h>
int timer_create(
clockid_t clock_id,
diff --git a/cpukit/posix/src/timerdelete.c b/cpukit/posix/src/timerdelete.c
index 686dc78f1d..eaf7369d8c 100644
--- a/cpukit/posix/src/timerdelete.c
+++ b/cpukit/posix/src/timerdelete.c
@@ -27,6 +27,7 @@
#include <rtems/system.h>
#include <rtems/seterr.h>
#include <rtems/score/thread.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/posix/time.h>
#include <rtems/posix/timerimpl.h>
diff --git a/cpukit/posix/src/timergettime.c b/cpukit/posix/src/timergettime.c
index b000ed4b47..40f0f610fa 100644
--- a/cpukit/posix/src/timergettime.c
+++ b/cpukit/posix/src/timergettime.c
@@ -28,6 +28,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/tod.h>
#include <rtems/score/timespec.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/posix/timerimpl.h>
/*
diff --git a/cpukit/posix/src/timerinserthelper.c b/cpukit/posix/src/timerinserthelper.c
index 66b3e9b007..3c900db9c2 100644
--- a/cpukit/posix/src/timerinserthelper.c
+++ b/cpukit/posix/src/timerinserthelper.c
@@ -25,7 +25,7 @@
#include <rtems/system.h>
#include <rtems/seterr.h>
#include <rtems/score/isr.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/posix/timerimpl.h>
#include <rtems/posix/ptimer.h>
diff --git a/cpukit/posix/src/timersettime.c b/cpukit/posix/src/timersettime.c
index ae29e3d582..2b7f07403f 100644
--- a/cpukit/posix/src/timersettime.c
+++ b/cpukit/posix/src/timersettime.c
@@ -27,6 +27,7 @@
#include <rtems/seterr.h>
#include <rtems/score/thread.h>
#include <rtems/score/tod.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/posix/time.h>
#include <rtems/posix/ptimer.h>
#include <rtems/posix/timerimpl.h>
diff --git a/cpukit/posix/src/ualarm.c b/cpukit/posix/src/ualarm.c
index 01b842344b..74bfe8f557 100644
--- a/cpukit/posix/src/ualarm.c
+++ b/cpukit/posix/src/ualarm.c
@@ -22,6 +22,7 @@
/* #include <errno.h> */
#include <rtems/system.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/posix/pthreadimpl.h>
#include <rtems/posix/psignalimpl.h>
#include <rtems/posix/time.h>
diff --git a/cpukit/rtems/src/clockgettickssinceboot.c b/cpukit/rtems/src/clockgettickssinceboot.c
index cfd91b5c57..340b4bc385 100644
--- a/cpukit/rtems/src/clockgettickssinceboot.c
+++ b/cpukit/rtems/src/clockgettickssinceboot.c
@@ -24,7 +24,7 @@
#include <rtems/score/isr.h>
#include <rtems/score/thread.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
rtems_interval rtems_clock_get_ticks_since_boot(void)
{
diff --git a/cpukit/rtems/src/clocksetnsecshandler.c b/cpukit/rtems/src/clocksetnsecshandler.c
index 80cf1dd8e6..8b79d0c228 100644
--- a/cpukit/rtems/src/clocksetnsecshandler.c
+++ b/cpukit/rtems/src/clocksetnsecshandler.c
@@ -24,7 +24,7 @@
#include <rtems/score/isr.h>
#include <rtems/score/thread.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
/*
* rtems_clock_set_nanoseconds_extension
diff --git a/cpukit/rtems/src/clocktick.c b/cpukit/rtems/src/clocktick.c
index 8467fd6cf0..5e46e94ee5 100644
--- a/cpukit/rtems/src/clocktick.c
+++ b/cpukit/rtems/src/clocktick.c
@@ -24,7 +24,7 @@
#include <rtems/score/isr.h>
#include <rtems/score/thread.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_clock_tick( void )
{
diff --git a/cpukit/rtems/src/eventseize.c b/cpukit/rtems/src/eventseize.c
index 4cb1f80d69..f7a98adcdf 100644
--- a/cpukit/rtems/src/eventseize.c
+++ b/cpukit/rtems/src/eventseize.c
@@ -19,6 +19,7 @@
#endif
#include <rtems/rtems/event.h>
+#include <rtems/score/watchdogimpl.h>
/*
* INTERRUPT LATENCY:
diff --git a/cpukit/rtems/src/eventsurrender.c b/cpukit/rtems/src/eventsurrender.c
index bfa29c425a..0f72f5ab3c 100644
--- a/cpukit/rtems/src/eventsurrender.c
+++ b/cpukit/rtems/src/eventsurrender.c
@@ -19,6 +19,7 @@
#endif
#include <rtems/rtems/event.h>
+#include <rtems/score/watchdogimpl.h>
void _Event_Surrender(
Thread_Control *the_thread,
diff --git a/cpukit/rtems/src/ratemoncancel.c b/cpukit/rtems/src/ratemoncancel.c
index 4a2e49c9c1..d50f80177e 100644
--- a/cpukit/rtems/src/ratemoncancel.c
+++ b/cpukit/rtems/src/ratemoncancel.c
@@ -25,6 +25,7 @@
#include <rtems/score/object.h>
#include <rtems/rtems/ratemon.h>
#include <rtems/score/thread.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_rate_monotonic_cancel(
rtems_id id
diff --git a/cpukit/rtems/src/ratemoncreate.c b/cpukit/rtems/src/ratemoncreate.c
index 2e5e975d5d..ae60514ab9 100644
--- a/cpukit/rtems/src/ratemoncreate.c
+++ b/cpukit/rtems/src/ratemoncreate.c
@@ -25,6 +25,7 @@
#include <rtems/score/object.h>
#include <rtems/rtems/ratemon.h>
#include <rtems/score/thread.h>
+#include <rtems/score/watchdogimpl.h>
/*
* rtems_rate_monotonic_create
diff --git a/cpukit/rtems/src/ratemondelete.c b/cpukit/rtems/src/ratemondelete.c
index 35ee9c4ff6..e1d732ea3c 100644
--- a/cpukit/rtems/src/ratemondelete.c
+++ b/cpukit/rtems/src/ratemondelete.c
@@ -25,6 +25,7 @@
#include <rtems/score/object.h>
#include <rtems/rtems/ratemon.h>
#include <rtems/score/thread.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_rate_monotonic_delete(
rtems_id id
diff --git a/cpukit/rtems/src/ratemonperiod.c b/cpukit/rtems/src/ratemonperiod.c
index 2018123e25..fc74aa2c8b 100644
--- a/cpukit/rtems/src/ratemonperiod.c
+++ b/cpukit/rtems/src/ratemonperiod.c
@@ -25,6 +25,7 @@
#include <rtems/score/object.h>
#include <rtems/rtems/ratemon.h>
#include <rtems/score/thread.h>
+#include <rtems/score/watchdogimpl.h>
bool _Rate_monotonic_Get_status(
Rate_monotonic_Control *the_period,
diff --git a/cpukit/rtems/src/ratemontimeout.c b/cpukit/rtems/src/ratemontimeout.c
index 59461d1526..70d119af88 100644
--- a/cpukit/rtems/src/ratemontimeout.c
+++ b/cpukit/rtems/src/ratemontimeout.c
@@ -25,6 +25,7 @@
#include <rtems/score/object.h>
#include <rtems/rtems/ratemon.h>
#include <rtems/score/thread.h>
+#include <rtems/score/watchdogimpl.h>
void _Rate_monotonic_Timeout(
Objects_Id id,
diff --git a/cpukit/rtems/src/taskwakeafter.c b/cpukit/rtems/src/taskwakeafter.c
index 665423409b..7bf4c88f1f 100644
--- a/cpukit/rtems/src/taskwakeafter.c
+++ b/cpukit/rtems/src/taskwakeafter.c
@@ -33,6 +33,7 @@
#include <rtems/score/wkspace.h>
#include <rtems/score/apiext.h>
#include <rtems/score/sysstate.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_task_wake_after(
rtems_interval ticks
diff --git a/cpukit/rtems/src/taskwakewhen.c b/cpukit/rtems/src/taskwakewhen.c
index ffa5ddcaeb..4f6204ac25 100644
--- a/cpukit/rtems/src/taskwakewhen.c
+++ b/cpukit/rtems/src/taskwakewhen.c
@@ -33,6 +33,7 @@
#include <rtems/score/wkspace.h>
#include <rtems/score/apiext.h>
#include <rtems/score/sysstate.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_task_wake_when(
rtems_time_of_day *time_buffer
diff --git a/cpukit/rtems/src/timercancel.c b/cpukit/rtems/src/timercancel.c
index 01f583d0b2..84eaee040d 100644
--- a/cpukit/rtems/src/timercancel.c
+++ b/cpukit/rtems/src/timercancel.c
@@ -21,7 +21,7 @@
#include <rtems/score/thread.h>
#include <rtems/rtems/timer.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
/*
* rtems_timer_cancel
diff --git a/cpukit/rtems/src/timercreate.c b/cpukit/rtems/src/timercreate.c
index f37b9e18c0..5968fb0316 100644
--- a/cpukit/rtems/src/timercreate.c
+++ b/cpukit/rtems/src/timercreate.c
@@ -25,7 +25,7 @@
#include <rtems/score/thread.h>
#include <rtems/rtems/timer.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_timer_create(
rtems_name name,
diff --git a/cpukit/rtems/src/timerdelete.c b/cpukit/rtems/src/timerdelete.c
index a9e4e3245b..7d3a722ad7 100644
--- a/cpukit/rtems/src/timerdelete.c
+++ b/cpukit/rtems/src/timerdelete.c
@@ -25,7 +25,7 @@
#include <rtems/score/thread.h>
#include <rtems/rtems/timer.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_timer_delete(
rtems_id id
diff --git a/cpukit/rtems/src/timerfireafter.c b/cpukit/rtems/src/timerfireafter.c
index 2c34797126..62cc2172e2 100644
--- a/cpukit/rtems/src/timerfireafter.c
+++ b/cpukit/rtems/src/timerfireafter.c
@@ -25,7 +25,7 @@
#include <rtems/score/thread.h>
#include <rtems/rtems/timer.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_timer_fire_after(
rtems_id id,
diff --git a/cpukit/rtems/src/timerfirewhen.c b/cpukit/rtems/src/timerfirewhen.c
index 9bd786b5b3..2cdfc9842a 100644
--- a/cpukit/rtems/src/timerfirewhen.c
+++ b/cpukit/rtems/src/timerfirewhen.c
@@ -25,7 +25,7 @@
#include <rtems/score/thread.h>
#include <rtems/rtems/timer.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_timer_fire_when(
rtems_id id,
diff --git a/cpukit/rtems/src/timerreset.c b/cpukit/rtems/src/timerreset.c
index 23ebb46744..4afcbb2762 100644
--- a/cpukit/rtems/src/timerreset.c
+++ b/cpukit/rtems/src/timerreset.c
@@ -25,7 +25,7 @@
#include <rtems/score/thread.h>
#include <rtems/rtems/timer.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
/*
* rtems_timer_reset
diff --git a/cpukit/rtems/src/timerserver.c b/cpukit/rtems/src/timerserver.c
index c7570985d8..ef32f00f70 100644
--- a/cpukit/rtems/src/timerserver.c
+++ b/cpukit/rtems/src/timerserver.c
@@ -33,7 +33,7 @@
#include <rtems/score/thread.h>
#include <rtems/rtems/timer.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/rtems/tasks.h>
#include <rtems/rtems/support.h>
diff --git a/cpukit/rtems/src/timerserverfireafter.c b/cpukit/rtems/src/timerserverfireafter.c
index 27d52c2c00..c34a7e3bc0 100644
--- a/cpukit/rtems/src/timerserverfireafter.c
+++ b/cpukit/rtems/src/timerserverfireafter.c
@@ -25,7 +25,7 @@
#include <rtems/score/thread.h>
#include <rtems/rtems/timer.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
rtems_status_code rtems_timer_server_fire_after(
rtems_id id,
diff --git a/cpukit/rtems/src/timerserverfirewhen.c b/cpukit/rtems/src/timerserverfirewhen.c
index a27095fb48..228c75dd76 100644
--- a/cpukit/rtems/src/timerserverfirewhen.c
+++ b/cpukit/rtems/src/timerserverfirewhen.c
@@ -25,7 +25,7 @@
#include <rtems/score/thread.h>
#include <rtems/rtems/timer.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
/*
* rtems_timer_server_fire_when
diff --git a/cpukit/sapi/src/exinit.c b/cpukit/sapi/src/exinit.c
index 5d1419cdb2..f83bf30c61 100644
--- a/cpukit/sapi/src/exinit.c
+++ b/cpukit/sapi/src/exinit.c
@@ -52,7 +52,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/tod.h>
#include <rtems/score/userextimpl.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/score/wkspace.h>
#include <rtems/sptables.h>
diff --git a/cpukit/score/Makefile.am b/cpukit/score/Makefile.am
index 9417227e3f..cb5628ab63 100644
--- a/cpukit/score/Makefile.am
+++ b/cpukit/score/Makefile.am
@@ -62,6 +62,7 @@ include_rtems_score_HEADERS += include/rtems/score/tqdata.h
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/wkspace.h
include_rtems_score_HEADERS += include/rtems/score/cpuopts.h
include_rtems_score_HEADERS += include/rtems/score/basedefs.h
@@ -106,7 +107,6 @@ include_rtems_score_HEADERS += inline/rtems/score/thread.inl
include_rtems_score_HEADERS += inline/rtems/score/threadq.inl
include_rtems_score_HEADERS += inline/rtems/score/tod.inl
include_rtems_score_HEADERS += inline/rtems/score/tqdata.inl
-include_rtems_score_HEADERS += inline/rtems/score/watchdog.inl
include_rtems_score_HEADERS += inline/rtems/score/wkspace.inl
if HAS_MP
diff --git a/cpukit/score/include/rtems/score/watchdog.h b/cpukit/score/include/rtems/score/watchdog.h
index 6dd0b5d0ce..b67e5ca28c 100644
--- a/cpukit/score/include/rtems/score/watchdog.h
+++ b/cpukit/score/include/rtems/score/watchdog.h
@@ -20,6 +20,12 @@
#ifndef _RTEMS_SCORE_WATCHDOG_H
#define _RTEMS_SCORE_WATCHDOG_H
+#include <rtems/score/object.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/**
* @defgroup ScoreWatchdog Watchdog Handler
*
@@ -33,20 +39,6 @@
*/
/**@{*/
-#include <rtems/score/object.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * @brief Control block used to manage intervals.
- *
- * The following type defines the control block used to manage
- * intervals.
- */
-#define WATCHDOG_MAXIMUM_INTERVAL ((Watchdog_Interval) 0xffffffff)
-
/**
* @brief Type is used to specify the length of intervals.
*
@@ -55,15 +47,6 @@ extern "C" {
typedef uint32_t Watchdog_Interval;
/**
- * @brief Pointer to the BSP plugin to obtain the number
- * of nanoseconds since the last clock tick.
- *
- * This type defines a pointer to the BSP plugin to obtain the number
- * of nanoseconds since the last clock tick.
- */
-typedef uint32_t (*Watchdog_Nanoseconds_since_last_tick_routine)(void);
-
-/**
* @brief Return type from a Watchdog Service Routine.
*
* This type defines the return type from a Watchdog Service Routine.
@@ -81,6 +64,15 @@ typedef Watchdog_Service_routine ( *Watchdog_Service_routine_entry )(
);
/**
+ * @brief Pointer to the BSP plugin to obtain the number
+ * of nanoseconds since the last clock tick.
+ *
+ * This type defines a pointer to the BSP plugin to obtain the number
+ * of nanoseconds since the last clock tick.
+ */
+typedef uint32_t (*Watchdog_Nanoseconds_since_last_tick_routine)(void);
+
+/**
* @brief The constant for indefinite wait.
*
* This is the constant for indefinite wait. It is actually an
@@ -111,22 +103,6 @@ typedef enum {
} Watchdog_States;
/**
- * @brief the manner in which a watchdog chain may
- * be adjusted by the @ref _Watchdog_Adjust routine.
- *
- * The following enumerated type details the manner in which
- * a watchdog chain may be adjusted by the @ref _Watchdog_Adjust
- * routine. The direction indicates a movement FORWARD
- * or BACKWARD in time.
- */
-typedef enum {
- /** adjust delta value forward */
- WATCHDOG_FORWARD,
- /** adjust delta value backward */
- WATCHDOG_BACKWARD
-} Watchdog_Adjust_directions;
-
-/**
* @brief The control block used to manage each watchdog timer.
*
* The following record defines the control block used
@@ -157,198 +133,11 @@ typedef struct {
void *user_data;
} Watchdog_Control;
-/**
- * @brief Watchdog synchronization level.
- *
- * This used for synchronization purposes
- * during an insert on a watchdog delta chain.
- */
-SCORE_EXTERN volatile uint32_t _Watchdog_Sync_level;
-
-/**
- * @brief Watchdog synchronization count.
- *
- * This used for synchronization purposes
- * during an insert on a watchdog delta chain.
- */
-SCORE_EXTERN volatile uint32_t _Watchdog_Sync_count;
-
-/**
- * @brief The number of ticks since the system was booted.
- *
- * This contains the number of ticks since the system was booted.
- */
-
-SCORE_EXTERN volatile Watchdog_Interval _Watchdog_Ticks_since_boot;
-
-/**
- * @brief The number of nanoseconds since the last clock tick.
- *
- * This is a pointer to the optional BSP plugin to obtain the number
- * of nanoseconds since the last clock tick.
- */
-extern Watchdog_Nanoseconds_since_last_tick_routine
- _Watchdog_Nanoseconds_since_tick_handler;
-
-/**
- * @brief Watchdog chain which is managed at ticks.
- *
- * This is the watchdog chain which is managed at ticks.
- */
-SCORE_EXTERN Chain_Control _Watchdog_Ticks_chain;
-
-/**
- * @brief Watchdog chain which is managed at second boundaries.
- *
- * This is the watchdog chain which is managed at second boundaries.
- */
-SCORE_EXTERN Chain_Control _Watchdog_Seconds_chain;
-
-/**
- * @brief Initialize the watchdog handler.
- *
- * This routine initializes the watchdog handler. The watchdog
- * synchronization flag is initialized and the watchdog chains are
- * initialized and emptied.
- */
-void _Watchdog_Handler_initialization( void );
-
-/**
- * @brief Removes @a the_watchdog from the watchdog chain.
- *
- * This routine removes @a the_watchdog from the watchdog chain on which
- * it resides and returns the state @a the_watchdog timer was in.
- *
- * @param[in] the_watchdog will be removed
- * @retval the state in which @a the_watchdog was in when removed
- */
-Watchdog_States _Watchdog_Remove (
- Watchdog_Control *the_watchdog
-);
-
-/**
- * @brief Adjusts the @a header watchdog chain in the forward
- * or backward @a direction for @a units ticks.
- *
- * This routine adjusts the @a header watchdog chain in the forward
- * or backward @a direction for @a units ticks.
- *
- * @param[in] header is the watchdog chain to adjust
- * @param[in] direction is the direction to adjust @a header
- * @param[in] units is the number of units to adjust @a header
- */
-void _Watchdog_Adjust (
- Chain_Control *header,
- Watchdog_Adjust_directions direction,
- Watchdog_Interval units
-);
-
-/**
- * @brief Adjusts the @a header watchdog chain in the forward
- * @a direction for @a units_arg ticks.
- *
- * This routine adjusts the @a header watchdog chain in the forward
- * @a direction for @a units_arg ticks.
- *
- * @param[in] header is the watchdog chain to adjust
- * @param[in] units_arg is the number of units to adjust @a header
- * @param[in] to_fire is a pointer to an initialized Chain_Control to which
- * all watchdog instances that are to be fired will be placed.
- *
- * @note This always adjusts forward.
- */
-void _Watchdog_Adjust_to_chain(
- Chain_Control *header,
- Watchdog_Interval units_arg,
- Chain_Control *to_fire
-
-);
-
-/**
- * @brief Inserts @a the_watchdog into the @a header watchdog chain
- * for a time of @a units.
- *
- * This routine inserts @a the_watchdog into the @a header watchdog chain
- * for a time of @a units.
- * Update the delta interval counters.
- *
- * @param[in] header is @a the_watchdog list to insert @a the_watchdog on
- * @param[in] the_watchdog is the watchdog to insert
- */
-void _Watchdog_Insert (
- Chain_Control *header,
- Watchdog_Control *the_watchdog
-);
-
-/**
- * @brief This routine is invoked at appropriate intervals to update
- * the @a header watchdog chain.
- *
- * This routine is invoked at appropriate intervals to update
- * the @a header watchdog chain.
- * This routine decrements the delta counter in response to a tick.
- *
- * @param[in] header is the watchdog chain to tickle
- */
-void _Watchdog_Tickle (
- Chain_Control *header
-);
-
-/**
- * @brief Report information on a single watchdog instance.
- *
- * This method prints a one line report on the watchdog instance
- * provided. The @a name may be used to identify the watchdog and
- * a space will be printed after @a name if it is not NULL.
- *
- * @param[in] name is a string to prefix the line with. If NULL,
- * nothing is printed.
- * @param[in] watch is the watchdog instance to be printed.
- *
- * @note This is a debug routine. It uses printk() and prudence should
- * exercised when using it.
- */
-void _Watchdog_Report(
- const char *name,
- Watchdog_Control *watch
-);
-
-/**
- * @brief Report information on a watchdog chain.
- *
- * This method prints report on the watchdog chain provided.
- * The @a name may be used to identify the watchdog chain and
- * a space will be printed after @a name if it is not NULL.
- *
- * @param[in] name is a string to prefix the line with. If NULL,
- * nothing is printed.
- * @param[in] header is the watchdog chain to be printed.
- *
- * @note This is a debug routine. It uses printk() and prudence should
- * exercised when using it. It also disables interrupts so the
- * chain can be traversed in a single atomic pass.
- */
-void _Watchdog_Report_chain(
- const char *name,
- Chain_Control *header
-);
-
-/**
- * @brief Handler for default nanoseconds since last tick.
- *
- * @retval 0 Always.
- */
-uint32_t _Watchdog_Nanoseconds_since_tick_default_handler( void );
-
-#ifndef __RTEMS_APPLICATION__
-#include <rtems/score/watchdog.inl>
-#endif
+/**@}*/
#ifdef __cplusplus
}
#endif
-/**@}*/
-
#endif
/* end of include file */
diff --git a/cpukit/score/include/rtems/score/watchdogimpl.h b/cpukit/score/include/rtems/score/watchdogimpl.h
new file mode 100644
index 0000000000..e0324ff257
--- /dev/null
+++ b/cpukit/score/include/rtems/score/watchdogimpl.h
@@ -0,0 +1,476 @@
+/**
+ * @file
+ *
+ * @brief Inlined Routines in the Watchdog Handler
+ *
+ * This file contains the static inline implementation of all inlined
+ * routines in the Watchdog Handler.
+ */
+
+/*
+ * COPYRIGHT (c) 1989-2004.
+ * 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.com/license/LICENSE.
+ */
+
+#ifndef _RTEMS_SCORE_WATCHDOGIMPL_H
+#define _RTEMS_SCORE_WATCHDOGIMPL_H
+
+#include <rtems/score/watchdog.h>
+#include <rtems/score/chainimpl.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * @addtogroup ScoreWatchdog
+ * @{
+ */
+
+/**
+ * @brief Control block used to manage intervals.
+ *
+ * The following type defines the control block used to manage
+ * intervals.
+ */
+#define WATCHDOG_MAXIMUM_INTERVAL ((Watchdog_Interval) 0xffffffff)
+
+/**
+ * @brief the manner in which a watchdog chain may
+ * be adjusted by the @ref _Watchdog_Adjust routine.
+ *
+ * The following enumerated type details the manner in which
+ * a watchdog chain may be adjusted by the @ref _Watchdog_Adjust
+ * routine. The direction indicates a movement FORWARD
+ * or BACKWARD in time.
+ */
+typedef enum {
+ /** adjust delta value forward */
+ WATCHDOG_FORWARD,
+ /** adjust delta value backward */
+ WATCHDOG_BACKWARD
+} Watchdog_Adjust_directions;
+
+/**
+ * @brief Watchdog synchronization level.
+ *
+ * This used for synchronization purposes
+ * during an insert on a watchdog delta chain.
+ */
+SCORE_EXTERN volatile uint32_t _Watchdog_Sync_level;
+
+/**
+ * @brief Watchdog synchronization count.
+ *
+ * This used for synchronization purposes
+ * during an insert on a watchdog delta chain.
+ */
+SCORE_EXTERN volatile uint32_t _Watchdog_Sync_count;
+
+/**
+ * @brief The number of ticks since the system was booted.
+ *
+ * This contains the number of ticks since the system was booted.
+ */
+
+SCORE_EXTERN volatile Watchdog_Interval _Watchdog_Ticks_since_boot;
+
+/**
+ * @brief The number of nanoseconds since the last clock tick.
+ *
+ * This is a pointer to the optional BSP plugin to obtain the number
+ * of nanoseconds since the last clock tick.
+ */
+extern Watchdog_Nanoseconds_since_last_tick_routine
+ _Watchdog_Nanoseconds_since_tick_handler;
+
+/**
+ * @brief Watchdog chain which is managed at ticks.
+ *
+ * This is the watchdog chain which is managed at ticks.
+ */
+SCORE_EXTERN Chain_Control _Watchdog_Ticks_chain;
+
+/**
+ * @brief Watchdog chain which is managed at second boundaries.
+ *
+ * This is the watchdog chain which is managed at second boundaries.
+ */
+SCORE_EXTERN Chain_Control _Watchdog_Seconds_chain;
+
+/**
+ * @brief Initialize the watchdog handler.
+ *
+ * This routine initializes the watchdog handler. The watchdog
+ * synchronization flag is initialized and the watchdog chains are
+ * initialized and emptied.
+ */
+void _Watchdog_Handler_initialization( void );
+
+/**
+ * @brief Removes @a the_watchdog from the watchdog chain.
+ *
+ * This routine removes @a the_watchdog from the watchdog chain on which
+ * it resides and returns the state @a the_watchdog timer was in.
+ *
+ * @param[in] the_watchdog will be removed
+ * @retval the state in which @a the_watchdog was in when removed
+ */
+Watchdog_States _Watchdog_Remove (
+ Watchdog_Control *the_watchdog
+);
+
+/**
+ * @brief Adjusts the @a header watchdog chain in the forward
+ * or backward @a direction for @a units ticks.
+ *
+ * This routine adjusts the @a header watchdog chain in the forward
+ * or backward @a direction for @a units ticks.
+ *
+ * @param[in] header is the watchdog chain to adjust
+ * @param[in] direction is the direction to adjust @a header
+ * @param[in] units is the number of units to adjust @a header
+ */
+void _Watchdog_Adjust (
+ Chain_Control *header,
+ Watchdog_Adjust_directions direction,
+ Watchdog_Interval units
+);
+
+/**
+ * @brief Adjusts the @a header watchdog chain in the forward
+ * @a direction for @a units_arg ticks.
+ *
+ * This routine adjusts the @a header watchdog chain in the forward
+ * @a direction for @a units_arg ticks.
+ *
+ * @param[in] header is the watchdog chain to adjust
+ * @param[in] units_arg is the number of units to adjust @a header
+ * @param[in] to_fire is a pointer to an initialized Chain_Control to which
+ * all watchdog instances that are to be fired will be placed.
+ *
+ * @note This always adjusts forward.
+ */
+void _Watchdog_Adjust_to_chain(
+ Chain_Control *header,
+ Watchdog_Interval units_arg,
+ Chain_Control *to_fire
+
+);
+
+/**
+ * @brief Inserts @a the_watchdog into the @a header watchdog chain
+ * for a time of @a units.
+ *
+ * This routine inserts @a the_watchdog into the @a header watchdog chain
+ * for a time of @a units.
+ * Update the delta interval counters.
+ *
+ * @param[in] header is @a the_watchdog list to insert @a the_watchdog on
+ * @param[in] the_watchdog is the watchdog to insert
+ */
+void _Watchdog_Insert (
+ Chain_Control *header,
+ Watchdog_Control *the_watchdog
+);
+
+/**
+ * @brief This routine is invoked at appropriate intervals to update
+ * the @a header watchdog chain.
+ *
+ * This routine is invoked at appropriate intervals to update
+ * the @a header watchdog chain.
+ * This routine decrements the delta counter in response to a tick.
+ *
+ * @param[in] header is the watchdog chain to tickle
+ */
+void _Watchdog_Tickle (
+ Chain_Control *header
+);
+
+/**
+ * @brief Report information on a single watchdog instance.
+ *
+ * This method prints a one line report on the watchdog instance
+ * provided. The @a name may be used to identify the watchdog and
+ * a space will be printed after @a name if it is not NULL.
+ *
+ * @param[in] name is a string to prefix the line with. If NULL,
+ * nothing is printed.
+ * @param[in] watch is the watchdog instance to be printed.
+ *
+ * @note This is a debug routine. It uses printk() and prudence should
+ * exercised when using it.
+ */
+void _Watchdog_Report(
+ const char *name,
+ Watchdog_Control *watch
+);
+
+/**
+ * @brief Report information on a watchdog chain.
+ *
+ * This method prints report on the watchdog chain provided.
+ * The @a name may be used to identify the watchdog chain and
+ * a space will be printed after @a name if it is not NULL.
+ *
+ * @param[in] name is a string to prefix the line with. If NULL,
+ * nothing is printed.
+ * @param[in] header is the watchdog chain to be printed.
+ *
+ * @note This is a debug routine. It uses printk() and prudence should
+ * exercised when using it. It also disables interrupts so the
+ * chain can be traversed in a single atomic pass.
+ */
+void _Watchdog_Report_chain(
+ const char *name,
+ Chain_Control *header
+);
+
+/**
+ * @brief Handler for default nanoseconds since last tick.
+ *
+ * @retval 0 Always.
+ */
+uint32_t _Watchdog_Nanoseconds_since_tick_default_handler( void );
+
+/**
+ * This routine initializes the specified watchdog. The watchdog is
+ * made inactive, the watchdog id and handler routine are set to the
+ * specified values.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Initialize(
+ Watchdog_Control *the_watchdog,
+ Watchdog_Service_routine_entry routine,
+ Objects_Id id,
+ void *user_data
+)
+{
+ the_watchdog->state = WATCHDOG_INACTIVE;
+ the_watchdog->routine = routine;
+ the_watchdog->id = id;
+ the_watchdog->user_data = user_data;
+}
+
+/**
+ * This routine returns true if the watchdog timer is in the ACTIVE
+ * state, and false otherwise.
+ */
+
+RTEMS_INLINE_ROUTINE bool _Watchdog_Is_active(
+ Watchdog_Control *the_watchdog
+)
+{
+
+ return ( the_watchdog->state == WATCHDOG_ACTIVE );
+
+}
+
+/**
+ * This routine activates THE_WATCHDOG timer which is already
+ * on a watchdog chain.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Activate(
+ Watchdog_Control *the_watchdog
+)
+{
+
+ the_watchdog->state = WATCHDOG_ACTIVE;
+
+}
+
+/**
+ * This routine deactivates THE_WATCHDOG timer which will remain
+ * on a watchdog chain.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Deactivate(
+ Watchdog_Control *the_watchdog
+)
+{
+
+ the_watchdog->state = WATCHDOG_REMOVE_IT;
+
+}
+
+/**
+ * This routine is invoked at each clock tick to update the ticks
+ * watchdog chain.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Tickle_ticks( void )
+{
+
+ _Watchdog_Tickle( &_Watchdog_Ticks_chain );
+
+}
+
+/**
+ * This routine is invoked at each clock tick to update the seconds
+ * watchdog chain.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Tickle_seconds( void )
+{
+
+ _Watchdog_Tickle( &_Watchdog_Seconds_chain );
+
+}
+
+/**
+ * This routine inserts THE_WATCHDOG into the ticks watchdog chain
+ * for a time of UNITS ticks. The INSERT_MODE indicates whether
+ * THE_WATCHDOG is to be activated automatically or later, explicitly
+ * by the caller.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Insert_ticks(
+ Watchdog_Control *the_watchdog,
+ Watchdog_Interval units
+)
+{
+
+ the_watchdog->initial = units;
+
+ _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );
+
+}
+
+/**
+ * This routine inserts THE_WATCHDOG into the seconds watchdog chain
+ * for a time of UNITS seconds. The INSERT_MODE indicates whether
+ * THE_WATCHDOG is to be activated automatically or later, explicitly
+ * by the caller.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Insert_seconds(
+ Watchdog_Control *the_watchdog,
+ Watchdog_Interval units
+)
+{
+
+ the_watchdog->initial = units;
+
+ _Watchdog_Insert( &_Watchdog_Seconds_chain, the_watchdog );
+
+}
+
+/**
+ * This routine adjusts the seconds watchdog chain in the forward
+ * or backward DIRECTION for UNITS seconds. This is invoked when the
+ * current time of day is changed.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Adjust_seconds(
+ Watchdog_Adjust_directions direction,
+ Watchdog_Interval units
+)
+{
+
+ _Watchdog_Adjust( &_Watchdog_Seconds_chain, direction, units );
+
+}
+
+/**
+ * This routine adjusts the ticks watchdog chain in the forward
+ * or backward DIRECTION for UNITS ticks.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Adjust_ticks(
+ Watchdog_Adjust_directions direction,
+ Watchdog_Interval units
+)
+{
+
+ _Watchdog_Adjust( &_Watchdog_Ticks_chain, direction, units );
+
+}
+
+/**
+ * This routine resets THE_WATCHDOG timer to its state at INSERT
+ * time. This routine is valid only on interval watchdog timers
+ * and is used to make an interval watchdog timer fire "every" so
+ * many ticks.
+ */
+
+RTEMS_INLINE_ROUTINE void _Watchdog_Reset(
+ Watchdog_Control *the_watchdog
+)
+{
+
+ (void) _Watchdog_Remove( the_watchdog );
+
+ _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );
+
+}
+
+/**
+ * This routine returns a pointer to the watchdog timer following
+ * THE_WATCHDOG on the watchdog chain.
+ */
+
+RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_Next(
+ Watchdog_Control *the_watchdog
+)
+{
+
+ return ( (Watchdog_Control *) the_watchdog->Node.next );
+
+}
+
+/**
+ * This routine returns a pointer to the watchdog timer preceding
+ * THE_WATCHDOG on the watchdog chain.
+ */
+
+RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_Previous(
+ Watchdog_Control *the_watchdog
+)
+{
+
+ return ( (Watchdog_Control *) the_watchdog->Node.previous );
+
+}
+
+/**
+ * This routine returns a pointer to the first watchdog timer
+ * on the watchdog chain HEADER.
+ */
+
+RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_First(
+ Chain_Control *header
+)
+{
+
+ return ( (Watchdog_Control *) _Chain_First( header ) );
+
+}
+
+/**
+ * This routine returns a pointer to the last watchdog timer
+ * on the watchdog chain HEADER.
+ */
+
+RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_Last(
+ Chain_Control *header
+)
+{
+
+ return ( (Watchdog_Control *) _Chain_Last( header ) );
+
+}
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+/* end of include file */
diff --git a/cpukit/score/inline/rtems/score/watchdog.inl b/cpukit/score/inline/rtems/score/watchdog.inl
deleted file mode 100644
index cfee466df2..0000000000
--- a/cpukit/score/inline/rtems/score/watchdog.inl
+++ /dev/null
@@ -1,262 +0,0 @@
-/**
- * @file
- *
- * @brief Inlined Routines in the Watchdog Handler
- *
- * This file contains the static inline implementation of all inlined
- * routines in the Watchdog Handler.
- */
-
-/*
- * COPYRIGHT (c) 1989-2004.
- * 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.com/license/LICENSE.
- */
-
-#ifndef _RTEMS_SCORE_WATCHDOG_H
-# error "Never use <rtems/score/watchdog.inl> directly; include <rtems/score/watchdog.h> instead."
-#endif
-
-#ifndef _RTEMS_SCORE_WATCHDOG_INL
-#define _RTEMS_SCORE_WATCHDOG_INL
-
-/**
- * @addtogroup ScoreWatchdog
- * @{
- */
-
-/**
- * This routine initializes the specified watchdog. The watchdog is
- * made inactive, the watchdog id and handler routine are set to the
- * specified values.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Initialize(
- Watchdog_Control *the_watchdog,
- Watchdog_Service_routine_entry routine,
- Objects_Id id,
- void *user_data
-)
-{
- the_watchdog->state = WATCHDOG_INACTIVE;
- the_watchdog->routine = routine;
- the_watchdog->id = id;
- the_watchdog->user_data = user_data;
-}
-
-/**
- * This routine returns true if the watchdog timer is in the ACTIVE
- * state, and false otherwise.
- */
-
-RTEMS_INLINE_ROUTINE bool _Watchdog_Is_active(
- Watchdog_Control *the_watchdog
-)
-{
-
- return ( the_watchdog->state == WATCHDOG_ACTIVE );
-
-}
-
-/**
- * This routine activates THE_WATCHDOG timer which is already
- * on a watchdog chain.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Activate(
- Watchdog_Control *the_watchdog
-)
-{
-
- the_watchdog->state = WATCHDOG_ACTIVE;
-
-}
-
-/**
- * This routine deactivates THE_WATCHDOG timer which will remain
- * on a watchdog chain.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Deactivate(
- Watchdog_Control *the_watchdog
-)
-{
-
- the_watchdog->state = WATCHDOG_REMOVE_IT;
-
-}
-
-/**
- * This routine is invoked at each clock tick to update the ticks
- * watchdog chain.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Tickle_ticks( void )
-{
-
- _Watchdog_Tickle( &_Watchdog_Ticks_chain );
-
-}
-
-/**
- * This routine is invoked at each clock tick to update the seconds
- * watchdog chain.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Tickle_seconds( void )
-{
-
- _Watchdog_Tickle( &_Watchdog_Seconds_chain );
-
-}
-
-/**
- * This routine inserts THE_WATCHDOG into the ticks watchdog chain
- * for a time of UNITS ticks. The INSERT_MODE indicates whether
- * THE_WATCHDOG is to be activated automatically or later, explicitly
- * by the caller.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Insert_ticks(
- Watchdog_Control *the_watchdog,
- Watchdog_Interval units
-)
-{
-
- the_watchdog->initial = units;
-
- _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );
-
-}
-
-/**
- * This routine inserts THE_WATCHDOG into the seconds watchdog chain
- * for a time of UNITS seconds. The INSERT_MODE indicates whether
- * THE_WATCHDOG is to be activated automatically or later, explicitly
- * by the caller.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Insert_seconds(
- Watchdog_Control *the_watchdog,
- Watchdog_Interval units
-)
-{
-
- the_watchdog->initial = units;
-
- _Watchdog_Insert( &_Watchdog_Seconds_chain, the_watchdog );
-
-}
-
-/**
- * This routine adjusts the seconds watchdog chain in the forward
- * or backward DIRECTION for UNITS seconds. This is invoked when the
- * current time of day is changed.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Adjust_seconds(
- Watchdog_Adjust_directions direction,
- Watchdog_Interval units
-)
-{
-
- _Watchdog_Adjust( &_Watchdog_Seconds_chain, direction, units );
-
-}
-
-/**
- * This routine adjusts the ticks watchdog chain in the forward
- * or backward DIRECTION for UNITS ticks.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Adjust_ticks(
- Watchdog_Adjust_directions direction,
- Watchdog_Interval units
-)
-{
-
- _Watchdog_Adjust( &_Watchdog_Ticks_chain, direction, units );
-
-}
-
-/**
- * This routine resets THE_WATCHDOG timer to its state at INSERT
- * time. This routine is valid only on interval watchdog timers
- * and is used to make an interval watchdog timer fire "every" so
- * many ticks.
- */
-
-RTEMS_INLINE_ROUTINE void _Watchdog_Reset(
- Watchdog_Control *the_watchdog
-)
-{
-
- (void) _Watchdog_Remove( the_watchdog );
-
- _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );
-
-}
-
-/**
- * This routine returns a pointer to the watchdog timer following
- * THE_WATCHDOG on the watchdog chain.
- */
-
-RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_Next(
- Watchdog_Control *the_watchdog
-)
-{
-
- return ( (Watchdog_Control *) the_watchdog->Node.next );
-
-}
-
-/**
- * This routine returns a pointer to the watchdog timer preceding
- * THE_WATCHDOG on the watchdog chain.
- */
-
-RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_Previous(
- Watchdog_Control *the_watchdog
-)
-{
-
- return ( (Watchdog_Control *) the_watchdog->Node.previous );
-
-}
-
-/**
- * This routine returns a pointer to the first watchdog timer
- * on the watchdog chain HEADER.
- */
-
-RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_First(
- Chain_Control *header
-)
-{
-
- return ( (Watchdog_Control *) _Chain_First( header ) );
-
-}
-
-/**
- * This routine returns a pointer to the last watchdog timer
- * on the watchdog chain HEADER.
- */
-
-RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_Last(
- Chain_Control *header
-)
-{
-
- return ( (Watchdog_Control *) _Chain_Last( header ) );
-
-}
-
-/** @} */
-
-#endif
-/* end of include file */
diff --git a/cpukit/score/preinstall.am b/cpukit/score/preinstall.am
index 4159f144c5..dc687dada8 100644
--- a/cpukit/score/preinstall.am
+++ b/cpukit/score/preinstall.am
@@ -231,6 +231,10 @@ $(PROJECT_INCLUDE)/rtems/score/watchdog.h: include/rtems/score/watchdog.h $(PROJ
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/watchdog.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/watchdog.h
+$(PROJECT_INCLUDE)/rtems/score/watchdogimpl.h: include/rtems/score/watchdogimpl.h $(PROJECT_INCLUDE)/rtems/score/$(dirstamp)
+ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/watchdogimpl.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/watchdogimpl.h
+
$(PROJECT_INCLUDE)/rtems/score/wkspace.h: include/rtems/score/wkspace.h $(PROJECT_INCLUDE)/rtems/score/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/wkspace.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/wkspace.h
@@ -355,10 +359,6 @@ $(PROJECT_INCLUDE)/rtems/score/tqdata.inl: inline/rtems/score/tqdata.inl $(PROJE
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/tqdata.inl
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/tqdata.inl
-$(PROJECT_INCLUDE)/rtems/score/watchdog.inl: inline/rtems/score/watchdog.inl $(PROJECT_INCLUDE)/rtems/score/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/watchdog.inl
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/watchdog.inl
-
$(PROJECT_INCLUDE)/rtems/score/wkspace.inl: inline/rtems/score/wkspace.inl $(PROJECT_INCLUDE)/rtems/score/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/wkspace.inl
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/wkspace.inl
diff --git a/cpukit/score/src/corespinlockwait.c b/cpukit/score/src/corespinlockwait.c
index 56baad1abf..689180a218 100644
--- a/cpukit/score/src/corespinlockwait.c
+++ b/cpukit/score/src/corespinlockwait.c
@@ -23,7 +23,6 @@
#include <rtems/score/states.h>
#include <rtems/score/thread.h>
#include <rtems/score/threaddispatch.h>
-#include <rtems/score/watchdog.h>
/*
* _CORE_spinlock_Wait
diff --git a/cpukit/score/src/coretodget.c b/cpukit/score/src/coretodget.c
index dbee757f25..e58b9fee95 100644
--- a/cpukit/score/src/coretodget.c
+++ b/cpukit/score/src/coretodget.c
@@ -19,7 +19,7 @@
#endif
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
Timestamp_Control *_TOD_Get_with_nanoseconds(
Timestamp_Control *snapshot,
diff --git a/cpukit/score/src/coretodset.c b/cpukit/score/src/coretodset.c
index b141e2819a..3bf5e52de5 100644
--- a/cpukit/score/src/coretodset.c
+++ b/cpukit/score/src/coretodset.c
@@ -24,7 +24,7 @@
#include <rtems/score/threaddispatch.h>
#include <rtems/score/timestamp.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
void _TOD_Set_with_timestamp(
const Timestamp_Control *tod
diff --git a/cpukit/score/src/coretodtickle.c b/cpukit/score/src/coretodtickle.c
index e464db3b52..4f53befe8d 100644
--- a/cpukit/score/src/coretodtickle.c
+++ b/cpukit/score/src/coretodtickle.c
@@ -23,7 +23,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/timestamp.h>
#include <rtems/score/tod.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/config.h>
void _TOD_Tickle_ticks( void )
diff --git a/cpukit/score/src/schedulercbsreleasejob.c b/cpukit/score/src/schedulercbsreleasejob.c
index aec5ac8721..23453ed5c1 100644
--- a/cpukit/score/src/schedulercbsreleasejob.c
+++ b/cpukit/score/src/schedulercbsreleasejob.c
@@ -23,6 +23,7 @@
#include <rtems/config.h>
#include <rtems/score/scheduler.h>
#include <rtems/score/schedulercbs.h>
+#include <rtems/score/watchdogimpl.h>
void _Scheduler_CBS_Release_job(
Thread_Control *the_thread,
diff --git a/cpukit/score/src/schedulercbsunblock.c b/cpukit/score/src/schedulercbsunblock.c
index 529d571dbf..5d7b2d0afe 100644
--- a/cpukit/score/src/schedulercbsunblock.c
+++ b/cpukit/score/src/schedulercbsunblock.c
@@ -22,6 +22,7 @@
#include <rtems/system.h>
#include <rtems/score/scheduler.h>
#include <rtems/score/schedulercbs.h>
+#include <rtems/score/watchdogimpl.h>
void _Scheduler_CBS_Unblock(
Thread_Control *the_thread
diff --git a/cpukit/score/src/scheduleredfprioritycompare.c b/cpukit/score/src/scheduleredfprioritycompare.c
index 60e950dae7..546986254b 100644
--- a/cpukit/score/src/scheduleredfprioritycompare.c
+++ b/cpukit/score/src/scheduleredfprioritycompare.c
@@ -22,6 +22,7 @@
#include <rtems/system.h>
#include <rtems/config.h>
#include <rtems/score/scheduleredf.h>
+#include <rtems/score/watchdogimpl.h>
int _Scheduler_EDF_Priority_compare (
Priority_Control p1,
diff --git a/cpukit/score/src/scheduleredfreleasejob.c b/cpukit/score/src/scheduleredfreleasejob.c
index 83712ce162..c43e71f04d 100644
--- a/cpukit/score/src/scheduleredfreleasejob.c
+++ b/cpukit/score/src/scheduleredfreleasejob.c
@@ -22,6 +22,7 @@
#include <rtems/config.h>
#include <rtems/score/scheduler.h>
#include <rtems/score/scheduleredf.h>
+#include <rtems/score/watchdogimpl.h>
void _Scheduler_EDF_Release_job(
Thread_Control *the_thread,
diff --git a/cpukit/score/src/threadblockingoperationcancel.c b/cpukit/score/src/threadblockingoperationcancel.c
index d67f995ab1..278dec51c8 100644
--- a/cpukit/score/src/threadblockingoperationcancel.c
+++ b/cpukit/score/src/threadblockingoperationcancel.c
@@ -23,6 +23,7 @@
#if defined(RTEMS_DEBUG)
#include <rtems/score/interr.h>
#endif
+#include <rtems/score/watchdogimpl.h>
void _Thread_blocking_operation_Cancel(
#if defined(RTEMS_DEBUG)
diff --git a/cpukit/score/src/threadclose.c b/cpukit/score/src/threadclose.c
index 73fff78b73..e6fec8566f 100644
--- a/cpukit/score/src/threadclose.c
+++ b/cpukit/score/src/threadclose.c
@@ -32,6 +32,7 @@
#include <rtems/score/threaddispatch.h>
#include <rtems/score/threadq.h>
#include <rtems/score/userextimpl.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/score/wkspace.h>
void _Thread_Close(
diff --git a/cpukit/score/src/threadinitialize.c b/cpukit/score/src/threadinitialize.c
index cc74573def..64071e1199 100644
--- a/cpukit/score/src/threadinitialize.c
+++ b/cpukit/score/src/threadinitialize.c
@@ -31,7 +31,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
#include <rtems/score/userextimpl.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/score/wkspace.h>
bool _Thread_Initialize(
diff --git a/cpukit/score/src/threadqdequeuefifo.c b/cpukit/score/src/threadqdequeuefifo.c
index fcad820c2f..b00b58189f 100644
--- a/cpukit/score/src/threadqdequeuefifo.c
+++ b/cpukit/score/src/threadqdequeuefifo.c
@@ -26,6 +26,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
#include <rtems/score/tqdata.h>
+#include <rtems/score/watchdogimpl.h>
Thread_Control *_Thread_queue_Dequeue_fifo(
Thread_queue_Control *the_thread_queue
diff --git a/cpukit/score/src/threadqdequeuepriority.c b/cpukit/score/src/threadqdequeuepriority.c
index b9e7799ad4..0162488a9e 100644
--- a/cpukit/score/src/threadqdequeuepriority.c
+++ b/cpukit/score/src/threadqdequeuepriority.c
@@ -26,6 +26,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
#include <rtems/score/tqdata.h>
+#include <rtems/score/watchdogimpl.h>
Thread_Control *_Thread_queue_Dequeue_priority(
Thread_queue_Control *the_thread_queue
diff --git a/cpukit/score/src/threadqenqueue.c b/cpukit/score/src/threadqenqueue.c
index 0849bf2a11..41cfd74080 100644
--- a/cpukit/score/src/threadqenqueue.c
+++ b/cpukit/score/src/threadqenqueue.c
@@ -29,6 +29,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
#include <rtems/score/tqdata.h>
+#include <rtems/score/watchdogimpl.h>
void _Thread_queue_Enqueue_with_handler(
Thread_queue_Control *the_thread_queue,
diff --git a/cpukit/score/src/threadqextractfifo.c b/cpukit/score/src/threadqextractfifo.c
index 4dce010dc6..a0d52af2ff 100644
--- a/cpukit/score/src/threadqextractfifo.c
+++ b/cpukit/score/src/threadqextractfifo.c
@@ -27,6 +27,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
#include <rtems/score/tqdata.h>
+#include <rtems/score/watchdogimpl.h>
void _Thread_queue_Extract_fifo(
Thread_queue_Control *the_thread_queue __attribute__((unused)),
diff --git a/cpukit/score/src/threadqextractpriority.c b/cpukit/score/src/threadqextractpriority.c
index 082b0389f3..29a1c645a8 100644
--- a/cpukit/score/src/threadqextractpriority.c
+++ b/cpukit/score/src/threadqextractpriority.c
@@ -26,6 +26,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
#include <rtems/score/tqdata.h>
+#include <rtems/score/watchdogimpl.h>
void _Thread_queue_Extract_priority_helper(
Thread_queue_Control *the_thread_queue __attribute__((unused)),
diff --git a/cpukit/score/src/threadreset.c b/cpukit/score/src/threadreset.c
index 92cb636657..575cd272c8 100644
--- a/cpukit/score/src/threadreset.c
+++ b/cpukit/score/src/threadreset.c
@@ -30,6 +30,7 @@
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
#include <rtems/score/wkspace.h>
+#include <rtems/score/watchdogimpl.h>
void _Thread_Reset(
Thread_Control *the_thread,
diff --git a/cpukit/score/src/watchdog.c b/cpukit/score/src/watchdog.c
index 9e32b9c4c3..18064810f3 100644
--- a/cpukit/score/src/watchdog.c
+++ b/cpukit/score/src/watchdog.c
@@ -23,7 +23,7 @@
#include <rtems/system.h>
#include <rtems/score/isr.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
void _Watchdog_Handler_initialization( void )
{
diff --git a/cpukit/score/src/watchdogadjust.c b/cpukit/score/src/watchdogadjust.c
index b0723d0f0f..32a0a83785 100644
--- a/cpukit/score/src/watchdogadjust.c
+++ b/cpukit/score/src/watchdogadjust.c
@@ -20,7 +20,7 @@
#include <rtems/system.h>
#include <rtems/score/isr.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
void _Watchdog_Adjust(
Chain_Control *header,
diff --git a/cpukit/score/src/watchdogadjusttochain.c b/cpukit/score/src/watchdogadjusttochain.c
index 902d9de380..ef32394388 100644
--- a/cpukit/score/src/watchdogadjusttochain.c
+++ b/cpukit/score/src/watchdogadjusttochain.c
@@ -20,7 +20,7 @@
#include <rtems/system.h>
#include <rtems/score/isr.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
void _Watchdog_Adjust_to_chain(
Chain_Control *header,
diff --git a/cpukit/score/src/watchdoginsert.c b/cpukit/score/src/watchdoginsert.c
index d73e2f061b..fd4e6f4f9a 100644
--- a/cpukit/score/src/watchdoginsert.c
+++ b/cpukit/score/src/watchdoginsert.c
@@ -20,7 +20,7 @@
#include <rtems/system.h>
#include <rtems/score/isr.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
void _Watchdog_Insert(
Chain_Control *header,
diff --git a/cpukit/score/src/watchdognanoseconds.c b/cpukit/score/src/watchdognanoseconds.c
index 41353bcc35..9c25239dff 100644
--- a/cpukit/score/src/watchdognanoseconds.c
+++ b/cpukit/score/src/watchdognanoseconds.c
@@ -24,7 +24,7 @@
#endif
#include <rtems/system.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
Watchdog_Nanoseconds_since_last_tick_routine
_Watchdog_Nanoseconds_since_tick_handler =
diff --git a/cpukit/score/src/watchdogremove.c b/cpukit/score/src/watchdogremove.c
index 319d726561..98bb05aca8 100644
--- a/cpukit/score/src/watchdogremove.c
+++ b/cpukit/score/src/watchdogremove.c
@@ -20,7 +20,7 @@
#include <rtems/system.h>
#include <rtems/score/isr.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
Watchdog_States _Watchdog_Remove(
Watchdog_Control *the_watchdog
diff --git a/cpukit/score/src/watchdogreport.c b/cpukit/score/src/watchdogreport.c
index e77c22aeb4..b357771bf4 100644
--- a/cpukit/score/src/watchdogreport.c
+++ b/cpukit/score/src/watchdogreport.c
@@ -19,7 +19,7 @@
#endif
#include <rtems/system.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/bspIo.h>
void _Watchdog_Report(
diff --git a/cpukit/score/src/watchdogreportchain.c b/cpukit/score/src/watchdogreportchain.c
index ea6c2f7415..b490f79b95 100644
--- a/cpukit/score/src/watchdogreportchain.c
+++ b/cpukit/score/src/watchdogreportchain.c
@@ -18,7 +18,7 @@
#endif
#include <rtems/system.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
#include <rtems/score/isr.h>
#include <rtems/bspIo.h>
diff --git a/cpukit/score/src/watchdogtickle.c b/cpukit/score/src/watchdogtickle.c
index ff779588ef..51742cb6b1 100644
--- a/cpukit/score/src/watchdogtickle.c
+++ b/cpukit/score/src/watchdogtickle.c
@@ -20,7 +20,7 @@
#include <rtems/system.h>
#include <rtems/score/isr.h>
-#include <rtems/score/watchdog.h>
+#include <rtems/score/watchdogimpl.h>
void _Watchdog_Tickle(
Chain_Control *header