[rtems commit] score: Add and use PRIORITY_PSEUDO_ISR
Sebastian Huber
sebh at rtems.org
Fri Mar 6 10:24:40 UTC 2015
Module: rtems
Branch: master
Commit: 81b03c62a64cc36797be25b064674417b2479a0a
Changeset: http://git.rtems.org/rtems/commit/?id=81b03c62a64cc36797be25b064674417b2479a0a
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Thu Mar 5 08:11:27 2015 +0100
score: Add and use PRIORITY_PSEUDO_ISR
---
cpukit/rtems/src/timerserver.c | 2 +-
cpukit/score/include/rtems/score/priority.h | 7 +++++++
cpukit/score/src/mpci.c | 2 +-
3 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/cpukit/rtems/src/timerserver.c b/cpukit/rtems/src/timerserver.c
index ad32172..e4fe56f 100644
--- a/cpukit/rtems/src/timerserver.c
+++ b/cpukit/rtems/src/timerserver.c
@@ -481,7 +481,7 @@ rtems_status_code rtems_timer_initiate_server(
if ( !_RTEMS_tasks_Priority_is_valid( priority ) ) {
if ( priority != RTEMS_TIMER_SERVER_DEFAULT_PRIORITY )
return RTEMS_INVALID_PRIORITY;
- _priority = 0;
+ _priority = PRIORITY_PSEUDO_ISR;
}
/*
diff --git a/cpukit/score/include/rtems/score/priority.h b/cpukit/score/include/rtems/score/priority.h
index f10f731..0a772f6 100644
--- a/cpukit/score/include/rtems/score/priority.h
+++ b/cpukit/score/include/rtems/score/priority.h
@@ -58,6 +58,13 @@ typedef uint32_t Priority_Control;
/** This defines the highest (most important) thread priority. */
#define PRIORITY_MINIMUM 0
+/**
+ * @brief This defines the priority of pseudo-ISR threads.
+ *
+ * Examples are the MPCI and timer server threads.
+ */
+#define PRIORITY_PSEUDO_ISR PRIORITY_MINIMUM
+
/** This defines the default lowest (least important) thread priority. */
#if defined (CPU_PRIORITY_MAXIMUM)
#define PRIORITY_DEFAULT_MAXIMUM CPU_PRIORITY_MAXIMUM
diff --git a/cpukit/score/src/mpci.c b/cpukit/score/src/mpci.c
index e8a8ba2..a2acf89 100644
--- a/cpukit/score/src/mpci.c
+++ b/cpukit/score/src/mpci.c
@@ -112,7 +112,7 @@ void _MPCI_Create_server( void )
CPU_MPCI_RECEIVE_SERVER_EXTRA_STACK +
_Configuration_MP_table->extra_mpci_receive_server_stack,
CPU_ALL_TASKS_ARE_FP,
- PRIORITY_MINIMUM,
+ PRIORITY_PSEUDO_ISR,
false, /* no preempt */
THREAD_CPU_BUDGET_ALGORITHM_NONE,
NULL, /* no budget algorithm callout */
More information about the vc
mailing list