summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/schedulersmp.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-04-01 11:48:59 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-04-03 11:13:26 +0200
commit494c2e300215c4bc539d243d6a5d060e0e2f2ef2 (patch)
tree8ba7c54667cad8331430bf719b4a1bd94ed3ac8b /cpukit/score/include/rtems/score/schedulersmp.h
parentscore: Rename Priority_bit_map_Control (diff)
downloadrtems-494c2e300215c4bc539d243d6a5d060e0e2f2ef2.tar.bz2
score: Move priority bit map to scheduler instance
Delete global variables _Priority_Major_bit_map and _Priority_Bit_map. This makes it possible to use multiple priority scheduler instances for example with clustered/partitioned scheduling on SMP.
Diffstat (limited to 'cpukit/score/include/rtems/score/schedulersmp.h')
-rw-r--r--cpukit/score/include/rtems/score/schedulersmp.h20
1 files changed, 13 insertions, 7 deletions
diff --git a/cpukit/score/include/rtems/score/schedulersmp.h b/cpukit/score/include/rtems/score/schedulersmp.h
index 7107e0e4da..458a31292f 100644
--- a/cpukit/score/include/rtems/score/schedulersmp.h
+++ b/cpukit/score/include/rtems/score/schedulersmp.h
@@ -7,7 +7,7 @@
*/
/*
- * Copyright (c) 2013 embedded brains GmbH. All rights reserved.
+ * Copyright (c) 2013-2014 embedded brains GmbH. All rights reserved.
*
* embedded brains GmbH
* Dornierstr. 4
@@ -25,6 +25,7 @@
#include <rtems/score/chain.h>
#include <rtems/score/percpu.h>
+#include <rtems/score/prioritybitmap.h>
#include <rtems/score/thread.h>
#ifdef __cplusplus
@@ -40,14 +41,19 @@ extern "C" {
*/
typedef struct {
- Chain_Control scheduled;
- Chain_Control ready[ 1 ];
+ Chain_Control Scheduled;
} Scheduler_SMP_Control;
-void _Scheduler_SMP_Start_idle(
- Thread_Control *thread,
- Per_CPU_Control *cpu
-);
+typedef struct {
+ Scheduler_SMP_Control Base;
+ Chain_Control Ready;
+} Scheduler_simple_SMP_Control;
+
+typedef struct {
+ Scheduler_SMP_Control Base;
+ Priority_bit_map_Control Bit_map;
+ Chain_Control Ready[ 1 ];
+} Scheduler_priority_SMP_Control;
/** @} */