summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/scheduler.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2013-06-06 15:28:41 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2013-06-14 16:26:07 +0200
commit1ccb64e18f1e4c1f51c12b9dc31a881e2829b2b6 (patch)
treecc5940c391f4e6fcdd63ec31fd129126d84b2329 /cpukit/score/include/rtems/score/scheduler.h
parentscore: Simplify _Thread_Create_idle() (diff)
downloadrtems-1ccb64e18f1e4c1f51c12b9dc31a881e2829b2b6.tar.bz2
scheduler: Add start idle thread operation
Add and use _Scheduler_Start_idle().
Diffstat (limited to 'cpukit/score/include/rtems/score/scheduler.h')
-rw-r--r--cpukit/score/include/rtems/score/scheduler.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/cpukit/score/include/rtems/score/scheduler.h b/cpukit/score/include/rtems/score/scheduler.h
index 5c35a36de1..9e08b23e4f 100644
--- a/cpukit/score/include/rtems/score/scheduler.h
+++ b/cpukit/score/include/rtems/score/scheduler.h
@@ -89,6 +89,12 @@ typedef struct {
/** perform scheduler update actions required at each clock tick */
void ( *tick )(void);
+ /**
+ * @brief Starts the idle thread for a particular processor.
+ *
+ * @see _Scheduler_Start_idle().
+ */
+ void ( *start_idle )( Thread_Control *thread, Per_CPU_Control *processor );
} Scheduler_Operations;
/**
@@ -139,6 +145,17 @@ extern Scheduler_Control _Scheduler;
*/
void _Scheduler_Handler_initialization( void );
+/**
+ * @brief Unblocks the thread.
+ *
+ * @param[in/out] thread An idle thread.
+ * @param[in] processor This parameter is unused.
+ */
+void _Scheduler_default_Start_idle(
+ Thread_Control *thread,
+ Per_CPU_Control *processor
+);
+
#ifndef __RTEMS_APPLICATION__
#include <rtems/score/scheduler.inl>
#endif