Index: cpukit/include/rtems/capture.h
===================================================================
--- cpukit/include/rtems/capture.h	(revision c43071f5231b07f67116891c0612be4ebdd7f211)
+++ cpukit/include/rtems/capture.h	(revision 5803f3738f8f97c2188bd36274e60602af515e7f)
@@ -35,5 +35,4 @@
 #include <rtems.h>
 #include <rtems/rtems/tasksimpl.h>
-#include <rtems/score/schedulerimpl.h>
 
 #include <string.h>
@@ -891,5 +890,5 @@
 rtems_capture_task_real_priority (rtems_tcb* tcb)
 {
-  return SCHEDULER_PRIORITY_UNMAP (tcb->Real_priority.priority);
+  return _Thread_Get_unmapped_real_priority (tcb);
 }
 
@@ -906,5 +905,5 @@
 rtems_capture_task_curr_priority (rtems_tcb* tcb)
 {
-  return SCHEDULER_PRIORITY_UNMAP (_Thread_Get_priority (tcb));
+  return _Thread_Get_unmapped_priority (tcb);
 }
 
Index: cpukit/include/rtems/score/schedulerimpl.h
===================================================================
--- cpukit/include/rtems/score/schedulerimpl.h	(revision c43071f5231b07f67116891c0612be4ebdd7f211)
+++ cpukit/include/rtems/score/schedulerimpl.h	(revision 5803f3738f8f97c2188bd36274e60602af515e7f)
@@ -39,34 +39,4 @@
  * @{
  */
-
-/**
- * @brief Maps a priority value to support the append indicator.
- */
-#define SCHEDULER_PRIORITY_MAP( priority ) ( ( priority ) << 1 )
-
-/**
- * @brief Returns the plain priority value.
- */
-#define SCHEDULER_PRIORITY_UNMAP( priority ) ( ( priority ) >> 1 )
-
-/**
- * @brief Clears the priority append indicator bit.
- */
-#define SCHEDULER_PRIORITY_PURIFY( priority )  \
-  ( ( priority ) & ~( (Priority_Control) SCHEDULER_PRIORITY_APPEND_FLAG ) )
-
-/**
- * @brief Returns the priority control with the append indicator bit set.
- */
-#define SCHEDULER_PRIORITY_APPEND( priority )  \
-  ( ( priority ) | SCHEDULER_PRIORITY_APPEND_FLAG )
-
-/**
- * @brief Returns true, if the item should be appended to its priority group,
- * otherwise returns false and the item should be prepended to its priority
- * group.
- */
-#define SCHEDULER_PRIORITY_IS_APPEND( priority ) \
-  ( ( ( priority ) & SCHEDULER_PRIORITY_APPEND_FLAG ) != 0 )
 
 /**
Index: cpukit/include/rtems/score/schedulernodeimpl.h
===================================================================
--- cpukit/include/rtems/score/schedulernodeimpl.h	(revision c43071f5231b07f67116891c0612be4ebdd7f211)
+++ cpukit/include/rtems/score/schedulernodeimpl.h	(revision 5803f3738f8f97c2188bd36274e60602af515e7f)
@@ -50,4 +50,34 @@
  */
 #define SCHEDULER_PRIORITY_APPEND_FLAG 1
+
+/**
+ * @brief Maps a priority value to support the append indicator.
+ */
+#define SCHEDULER_PRIORITY_MAP( priority ) ( ( priority ) << 1 )
+
+/**
+ * @brief Returns the plain priority value.
+ */
+#define SCHEDULER_PRIORITY_UNMAP( priority ) ( ( priority ) >> 1 )
+
+/**
+ * @brief Clears the priority append indicator bit.
+ */
+#define SCHEDULER_PRIORITY_PURIFY( priority )  \
+  ( ( priority ) & ~( (Priority_Control) SCHEDULER_PRIORITY_APPEND_FLAG ) )
+
+/**
+ * @brief Returns the priority control with the append indicator bit set.
+ */
+#define SCHEDULER_PRIORITY_APPEND( priority )  \
+  ( ( priority ) | SCHEDULER_PRIORITY_APPEND_FLAG )
+
+/**
+ * @brief Returns true, if the item should be appended to its priority group,
+ * otherwise returns false and the item should be prepended to its priority
+ * group.
+ */
+#define SCHEDULER_PRIORITY_IS_APPEND( priority ) \
+  ( ( ( priority ) & SCHEDULER_PRIORITY_APPEND_FLAG ) != 0 )
 
 /**
Index: cpukit/include/rtems/score/threadimpl.h
===================================================================
--- cpukit/include/rtems/score/threadimpl.h	(revision c43071f5231b07f67116891c0612be4ebdd7f211)
+++ cpukit/include/rtems/score/threadimpl.h	(revision 5803f3738f8f97c2188bd36274e60602af515e7f)
@@ -1599,4 +1599,32 @@
   scheduler_node = _Thread_Scheduler_get_home_node( the_thread );
   return _Priority_Get_priority( &scheduler_node->Wait.Priority );
+}
+
+/**
+ * @brief Returns the unmapped priority of the thread.
+ *
+ * @param the_thread The thread of which to get the unmapped priority.
+ *
+ * @return The unmapped priority of the thread.
+ */
+RTEMS_INLINE_ROUTINE Priority_Control _Thread_Get_unmapped_priority(
+  const Thread_Control *the_thread
+)
+{
+  return SCHEDULER_PRIORITY_UNMAP( _Thread_Get_priority( the_thread ) );
+}
+
+/**
+ * @brief Returns the unmapped real priority of the thread.
+ *
+ * @param the_thread The thread of which to get the unmapped real priority.
+ *
+ * @return The unmapped real priority of the thread.
+ */
+RTEMS_INLINE_ROUTINE Priority_Control _Thread_Get_unmapped_real_priority(
+  const Thread_Control *the_thread
+)
+{
+  return SCHEDULER_PRIORITY_UNMAP( the_thread->Real_priority.priority );
 }
 
Index: cpukit/libdebugger/rtems-debugger-threads.c
===================================================================
--- cpukit/libdebugger/rtems-debugger-threads.c	(revision c43071f5231b07f67116891c0612be4ebdd7f211)
+++ cpukit/libdebugger/rtems-debugger-threads.c	(revision 5803f3738f8f97c2188bd36274e60602af515e7f)
@@ -32,5 +32,4 @@
 #include <rtems.h>
 #include <rtems/assoc.h>
-#include <rtems/score/schedulerimpl.h>
 #include <rtems/score/threadimpl.h>
 
@@ -505,5 +504,5 @@
 rtems_debugger_thread_current_priority(rtems_debugger_thread* thread)
 {
-  return SCHEDULER_PRIORITY_UNMAP(_Thread_Get_priority(thread->tcb));
+  return _Thread_Get_unmapped_priority(thread->tcb);
 }
 
@@ -511,5 +510,5 @@
 rtems_debugger_thread_real_priority(rtems_debugger_thread* thread)
 {
-  return SCHEDULER_PRIORITY_UNMAP(thread->tcb->Real_priority.priority);
+  return _Thread_Get_unmapped_real_priority(thread->tcb);
 }
 
Index: cpukit/libmisc/cpuuse/cpuusagetop.c
===================================================================
--- cpukit/libmisc/cpuuse/cpuusagetop.c	(revision c43071f5231b07f67116891c0612be4ebdd7f211)
+++ cpukit/libmisc/cpuuse/cpuusagetop.c	(revision 5803f3738f8f97c2188bd36274e60602af515e7f)
@@ -449,6 +449,6 @@
                    thread->Object.id,
                    name,
-                   thread->Real_priority.priority,
-                   _Thread_Get_priority(thread));
+                   _Thread_Get_unmapped_real_priority(thread),
+                   _Thread_Get_unmapped_priority(thread));
 
       usage = data->usage[i];
Index: cpukit/libmisc/monitor/mon-task.c
===================================================================
--- cpukit/libmisc/monitor/mon-task.c	(revision c43071f5231b07f67116891c0612be4ebdd7f211)
+++ cpukit/libmisc/monitor/mon-task.c	(revision 5803f3738f8f97c2188bd36274e60602af515e7f)
@@ -10,5 +10,4 @@
 #include <rtems/monitor.h>
 #include <rtems/rtems/tasksdata.h>
-#include <rtems/score/schedulerimpl.h>
 #include <rtems/score/threadimpl.h>
 #include <rtems/score/threadqimpl.h>
@@ -113,7 +112,5 @@
     canonical_task->stack = rtems_thread->Start.Initial_stack.area;
     canonical_task->stack_size = rtems_thread->Start.Initial_stack.size;
-    canonical_task->priority = SCHEDULER_PRIORITY_UNMAP(
-      _Thread_Get_priority( rtems_thread )
-    );
+    canonical_task->priority = _Thread_Get_unmapped_priority( rtems_thread );
     canonical_task->events = api->Event.pending_events;
     /*
