[rtems commit] score: Create watchdog implementation header

Sebastian Huber sebh at rtems.org
Mon Jul 22 14:51:44 UTC 2013


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

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Mon Jul 22 10:21:03 2013 +0200

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.

---

 cpukit/libmisc/capture/capture-cli.c             |    2 +-
 cpukit/libmisc/capture/capture.c                 |    2 +-
 cpukit/libmisc/cpuuse/cpuusagereport.c           |    1 +
 cpukit/libmisc/cpuuse/cpuusagereset.c            |    1 +
 cpukit/posix/src/alarm.c                         |    1 +
 cpukit/posix/src/nanosleep.c                     |    1 +
 cpukit/posix/src/psignal.c                       |    1 +
 cpukit/posix/src/psignalunblockthread.c          |    1 +
 cpukit/posix/src/pthread.c                       |    1 +
 cpukit/posix/src/pthreadcreate.c                 |    1 +
 cpukit/posix/src/pthreadsetschedparam.c          |    1 +
 cpukit/posix/src/timercreate.c                   |    1 +
 cpukit/posix/src/timerdelete.c                   |    1 +
 cpukit/posix/src/timergettime.c                  |    1 +
 cpukit/posix/src/timerinserthelper.c             |    2 +-
 cpukit/posix/src/timersettime.c                  |    1 +
 cpukit/posix/src/ualarm.c                        |    1 +
 cpukit/rtems/src/clockgettickssinceboot.c        |    2 +-
 cpukit/rtems/src/clocksetnsecshandler.c          |    2 +-
 cpukit/rtems/src/clocktick.c                     |    2 +-
 cpukit/rtems/src/eventseize.c                    |    1 +
 cpukit/rtems/src/eventsurrender.c                |    1 +
 cpukit/rtems/src/ratemoncancel.c                 |    1 +
 cpukit/rtems/src/ratemoncreate.c                 |    1 +
 cpukit/rtems/src/ratemondelete.c                 |    1 +
 cpukit/rtems/src/ratemonperiod.c                 |    1 +
 cpukit/rtems/src/ratemontimeout.c                |    1 +
 cpukit/rtems/src/taskwakeafter.c                 |    1 +
 cpukit/rtems/src/taskwakewhen.c                  |    1 +
 cpukit/rtems/src/timercancel.c                   |    2 +-
 cpukit/rtems/src/timercreate.c                   |    2 +-
 cpukit/rtems/src/timerdelete.c                   |    2 +-
 cpukit/rtems/src/timerfireafter.c                |    2 +-
 cpukit/rtems/src/timerfirewhen.c                 |    2 +-
 cpukit/rtems/src/timerreset.c                    |    2 +-
 cpukit/rtems/src/timerserver.c                   |    2 +-
 cpukit/rtems/src/timerserverfireafter.c          |    2 +-
 cpukit/rtems/src/timerserverfirewhen.c           |    2 +-
 cpukit/sapi/src/exinit.c                         |    2 +-
 cpukit/score/Makefile.am                         |    2 +-
 cpukit/score/include/rtems/score/watchdog.h      |  243 +----------
 cpukit/score/include/rtems/score/watchdogimpl.h  |  476 ++++++++++++++++++++++
 cpukit/score/inline/rtems/score/watchdog.inl     |  262 ------------
 cpukit/score/preinstall.am                       |    8 +-
 cpukit/score/src/corespinlockwait.c              |    1 -
 cpukit/score/src/coretodget.c                    |    2 +-
 cpukit/score/src/coretodset.c                    |    2 +-
 cpukit/score/src/coretodtickle.c                 |    2 +-
 cpukit/score/src/schedulercbsreleasejob.c        |    1 +
 cpukit/score/src/schedulercbsunblock.c           |    1 +
 cpukit/score/src/scheduleredfprioritycompare.c   |    1 +
 cpukit/score/src/scheduleredfreleasejob.c        |    1 +
 cpukit/score/src/threadblockingoperationcancel.c |    1 +
 cpukit/score/src/threadclose.c                   |    1 +
 cpukit/score/src/threadinitialize.c              |    2 +-
 cpukit/score/src/threadqdequeuefifo.c            |    1 +
 cpukit/score/src/threadqdequeuepriority.c        |    1 +
 cpukit/score/src/threadqenqueue.c                |    1 +
 cpukit/score/src/threadqextractfifo.c            |    1 +
 cpukit/score/src/threadqextractpriority.c        |    1 +
 cpukit/score/src/threadreset.c                   |    1 +
 cpukit/score/src/watchdog.c                      |    2 +-
 cpukit/score/src/watchdogadjust.c                |    2 +-
 cpukit/score/src/watchdogadjusttochain.c         |    2 +-
 cpukit/score/src/watchdoginsert.c                |    2 +-
 cpukit/score/src/watchdognanoseconds.c           |    2 +-
 cpukit/score/src/watchdogremove.c                |    2 +-
 cpukit/score/src/watchdogreport.c                |    2 +-
 cpukit/score/src/watchdogreportchain.c           |    2 +-
 cpukit/score/src/watchdogtickle.c                |    2 +-
 testsuites/sptests/sp20/task1.c                  |    2 +
 testsuites/sptests/sp67/init.c                   |    2 +
 testsuites/sptests/spedfsched02/task1.c          |    2 +
 testsuites/sptests/spintrcritical09/init.c       |    1 +
 testsuites/sptests/spsize/size.c                 |    1 +
 testsuites/sptests/spwatchdog/init.c             |    2 +
 testsuites/sptests/spwatchdog/task1.c            |    2 +
 77 files changed, 573 insertions(+), 524 deletions(-)

diff --git a/cpukit/libmisc/capture/capture-cli.c b/cpukit/libmisc/capture/capture-cli.c
index a0326b7..4cf9b6b 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 d3f8c5b..c31a079 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 238d91a..5579b1b 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 749eae2..77bd095 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 98edcb7..190a7fb 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 7d37480..1476c17 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 0f0c5e7..a8f1a28 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 34816fa..cbdbd38 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 a82b036..3df7478 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 0414fd7..fcac8d4 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 393c41f..a8ac445 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 8316e58..3af7fc4 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 686dc78..eaf7369 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 b000ed4..40f0f61 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 66b3e9b..3c900db 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 ae29e3d..2b7f074 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 01b8423..74bfe8f 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 cfd91b5..340b4bc 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 80cf1dd..8b79d0c 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 8467fd6..5e46e94 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 4cb1f80..f7a98ad 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 bfa29c4..0f72f5a 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 4a2e49c..d50f801 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 2e5e975..ae60514 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 35ee9c4..e1d732e 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 2018123..fc74aa2 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 59461d1..70d119a 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 6654234..7bf4c88 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 ffa5ddc..4f6204a 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 01f583d..84eaee0 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 f37b9e1..5968fb0 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 a9e4e32..7d3a722 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 2c34797..62cc217 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 9bd786b..2cdfc98 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 23ebb46..4afcbb2 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 c757098..ef32f00 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 27d52c2..c34a7e3 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 a27095f..228c75d 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 5d1419c..f83bf30 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 9417227..cb5628a 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 6dd0b5d..b67e5ca 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 0000000..e0324ff
--- /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 cfee466..0000000
--- 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 4159f14..dc687da 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 56baad1..689180a 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 dbee757..e58b9fe 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 b141e28..3bf5e52 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 e464db3..4f53bef 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 aec5ac8..23453ed 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 529d571..5d7b2d0 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 60e950d..5469862 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 83712ce..c43e71f 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 d67f995..278dec5 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 73fff78..e6fec85 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 cc74573..64071e1 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 fcad820..b00b581 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 b9e7799..0162488 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 0849bf2..41cfd74 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 4dce010..a0d52af 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 082b038..29a1c64 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 92cb636..575cd27 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 9e32b9c..1806481 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 b0723d0..32a0a83 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 902d9de..ef32394 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 d73e2f0..fd4e6f4 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 41353bc..9c25239 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 319d726..98bb05a 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 e77c22a..b357771 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 ea6c2f7..b490f79 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 ff77958..51742cb 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
diff --git a/testsuites/sptests/sp20/task1.c b/testsuites/sptests/sp20/task1.c
index fb2d318..91a57fb 100644
--- a/testsuites/sptests/sp20/task1.c
+++ b/testsuites/sptests/sp20/task1.c
@@ -13,6 +13,8 @@
 
 #include "system.h"
 
+#include <rtems/score/watchdogimpl.h>
+
 /*
  runtime of TA6 should be shorter than TA5
  */
diff --git a/testsuites/sptests/sp67/init.c b/testsuites/sptests/sp67/init.c
index 60f6c7b..4b78bba 100644
--- a/testsuites/sptests/sp67/init.c
+++ b/testsuites/sptests/sp67/init.c
@@ -16,6 +16,8 @@
 
 #include <tmacros.h>
 
+#include <rtems/score/watchdogimpl.h>
+
 /* forward declarations to avoid warnings */
 rtems_task Init(rtems_task_argument argument);
 rtems_timer_service_routine TIMER_service_routine(
diff --git a/testsuites/sptests/spedfsched02/task1.c b/testsuites/sptests/spedfsched02/task1.c
index fef8df9..79614af 100644
--- a/testsuites/sptests/spedfsched02/task1.c
+++ b/testsuites/sptests/spedfsched02/task1.c
@@ -21,6 +21,8 @@
 
 #include "system.h"
 
+#include <rtems/score/watchdogimpl.h>
+
 /*
  runtime of TA6 should be shorter than TA5
  */
diff --git a/testsuites/sptests/spintrcritical09/init.c b/testsuites/sptests/spintrcritical09/init.c
index a7f79b2..81f0076 100644
--- a/testsuites/sptests/spintrcritical09/init.c
+++ b/testsuites/sptests/spintrcritical09/init.c
@@ -16,6 +16,7 @@
 #include <intrcritical.h>
 
 #include <rtems/rtems/semimpl.h>
+#include <rtems/score/watchdogimpl.h>
 
 static rtems_id Semaphore;
 static bool case_hit;
diff --git a/testsuites/sptests/spsize/size.c b/testsuites/sptests/spsize/size.c
index 4885397..6f3f4c9 100644
--- a/testsuites/sptests/spsize/size.c
+++ b/testsuites/sptests/spsize/size.c
@@ -45,6 +45,7 @@
 #include <rtems/rtems/timer.h>
 #include <rtems/score/tod.h>
 #include <rtems/score/userextimpl.h>
+#include <rtems/score/watchdogimpl.h>
 #include <rtems/score/wkspace.h>
 #if defined(RTEMS_SMP)
   #include <rtems/score/smp.h>
diff --git a/testsuites/sptests/spwatchdog/init.c b/testsuites/sptests/spwatchdog/init.c
index f2cf992..a7a332a 100644
--- a/testsuites/sptests/spwatchdog/init.c
+++ b/testsuites/sptests/spwatchdog/init.c
@@ -22,6 +22,8 @@
 #define CONFIGURE_INIT
 #include "system.h"
 
+#include <rtems/score/watchdogimpl.h>
+
 rtems_task Init(
   rtems_task_argument argument
 )
diff --git a/testsuites/sptests/spwatchdog/task1.c b/testsuites/sptests/spwatchdog/task1.c
index 1a63e28..c73d154 100644
--- a/testsuites/sptests/spwatchdog/task1.c
+++ b/testsuites/sptests/spwatchdog/task1.c
@@ -21,6 +21,8 @@
 
 #include "system.h"
 
+#include <rtems/score/watchdogimpl.h>
+
 rtems_task Task_1(
   rtems_task_argument argument
 )




More information about the vc mailing list