summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2013-08-12 12:34:27 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2013-08-20 10:14:04 +0200
commit6ba15488ee9e1bdaeafdee773ca0eef2d1a0ed3a (patch)
tree4f0dcf443324fcf96b6596f91cb2158ef854d6ae
parentsmp: Replace Scheduler_simple_smp_Control (diff)
downloadrtems-6ba15488ee9e1bdaeafdee773ca0eef2d1a0ed3a.tar.bz2
smp: Rename _Scheduler_simple_smp_Start_idle()
Rename _Scheduler_simple_smp_Start_idle() to _Scheduler_SMP_Start_idle().
-rw-r--r--cpukit/score/Makefile.am1
-rw-r--r--cpukit/score/include/rtems/score/schedulersimplesmp.h7
-rw-r--r--cpukit/score/include/rtems/score/schedulersmp.h7
-rw-r--r--cpukit/score/include/rtems/score/schedulersmpimpl.h2
-rw-r--r--cpukit/score/src/schedulersimplesmp.c12
-rw-r--r--cpukit/score/src/schedulersmpstartidle.c40
6 files changed, 49 insertions, 20 deletions
diff --git a/cpukit/score/Makefile.am b/cpukit/score/Makefile.am
index 5136d8119c..c5af9c7380 100644
--- a/cpukit/score/Makefile.am
+++ b/cpukit/score/Makefile.am
@@ -120,6 +120,7 @@ endif
if HAS_SMP
libscore_a_SOURCES += src/schedulersimplesmp.c
+libscore_a_SOURCES += src/schedulersmpstartidle.c
libscore_a_SOURCES += src/smp.c
endif
diff --git a/cpukit/score/include/rtems/score/schedulersimplesmp.h b/cpukit/score/include/rtems/score/schedulersimplesmp.h
index 5329610dee..f62068a8af 100644
--- a/cpukit/score/include/rtems/score/schedulersimplesmp.h
+++ b/cpukit/score/include/rtems/score/schedulersimplesmp.h
@@ -68,7 +68,7 @@ extern "C" {
_Scheduler_priority_Priority_compare, \
_Scheduler_default_Release_job, \
_Scheduler_default_Tick, \
- _Scheduler_simple_smp_Start_idle \
+ _Scheduler_SMP_Start_idle \
}
void _Scheduler_simple_smp_Initialize( void );
@@ -83,11 +83,6 @@ void _Scheduler_simple_smp_Yield( Thread_Control *thread );
void _Scheduler_simple_smp_Schedule( Thread_Control *thread );
-void _Scheduler_simple_smp_Start_idle(
- Thread_Control *thread,
- Per_CPU_Control *cpu
-);
-
/** @} */
#ifdef __cplusplus
diff --git a/cpukit/score/include/rtems/score/schedulersmp.h b/cpukit/score/include/rtems/score/schedulersmp.h
index 8b649b7331..457af22b79 100644
--- a/cpukit/score/include/rtems/score/schedulersmp.h
+++ b/cpukit/score/include/rtems/score/schedulersmp.h
@@ -24,6 +24,8 @@
#define _RTEMS_SCORE_SCHEDULERSMP_H
#include <rtems/score/chain.h>
+#include <rtems/score/percpu.h>
+#include <rtems/score/thread.h>
#ifdef __cplusplus
extern "C" {
@@ -42,6 +44,11 @@ typedef struct {
Chain_Control ready[ 1 ];
} Scheduler_SMP_Control;
+void _Scheduler_SMP_Start_idle(
+ Thread_Control *thread,
+ Per_CPU_Control *cpu
+);
+
/** @} */
#ifdef __cplusplus
diff --git a/cpukit/score/include/rtems/score/schedulersmpimpl.h b/cpukit/score/include/rtems/score/schedulersmpimpl.h
index 7736d2bbf8..7e123e2c39 100644
--- a/cpukit/score/include/rtems/score/schedulersmpimpl.h
+++ b/cpukit/score/include/rtems/score/schedulersmpimpl.h
@@ -25,8 +25,6 @@
#include <rtems/score/schedulersmp.h>
#include <rtems/score/scheduler.h>
-#include <rtems/score/thread.h>
-#include <rtems/score/percpu.h>
#ifdef __cplusplus
extern "C" {
diff --git a/cpukit/score/src/schedulersimplesmp.c b/cpukit/score/src/schedulersimplesmp.c
index 090572302e..9e4c9d96aa 100644
--- a/cpukit/score/src/schedulersimplesmp.c
+++ b/cpukit/score/src/schedulersimplesmp.c
@@ -182,15 +182,3 @@ void _Scheduler_simple_smp_Schedule( Thread_Control *thread )
{
( void ) thread;
}
-
-void _Scheduler_simple_smp_Start_idle(
- Thread_Control *thread,
- Per_CPU_Control *cpu
-)
-{
- Scheduler_SMP_Control *self = _Scheduler_SMP_Instance();
-
- thread->is_scheduled = true;
- thread->cpu = cpu;
- _Chain_Append_unprotected( &self->scheduled, &thread->Object.Node );
-}
diff --git a/cpukit/score/src/schedulersmpstartidle.c b/cpukit/score/src/schedulersmpstartidle.c
new file mode 100644
index 0000000000..4b6df5ed5b
--- /dev/null
+++ b/cpukit/score/src/schedulersmpstartidle.c
@@ -0,0 +1,40 @@
+/**
+ * @file
+ *
+ * @brief SMP Scheduler Start Idle Operation
+ *
+ * @ingroup ScoreSchedulerSMP
+ */
+
+/*
+ * Copyright (c) 2013 embedded brains GmbH. All rights reserved.
+ *
+ * embedded brains GmbH
+ * Dornierstr. 4
+ * 82178 Puchheim
+ * Germany
+ * <rtems@embedded-brains.de>
+ *
+ * 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.
+ */
+
+#if HAVE_CONFIG_H
+ #include "config.h"
+#endif
+
+#include <rtems/score/schedulersmpimpl.h>
+#include <rtems/score/chainimpl.h>
+
+void _Scheduler_SMP_Start_idle(
+ Thread_Control *thread,
+ Per_CPU_Control *cpu
+)
+{
+ Scheduler_SMP_Control *self = _Scheduler_SMP_Instance();
+
+ thread->is_scheduled = true;
+ thread->cpu = cpu;
+ _Chain_Append_unprotected( &self->scheduled, &thread->Object.Node );
+}