summaryrefslogtreecommitdiff
path: root/schedsim/shell/schedsim_cluster01/config.c
diff options
context:
space:
mode:
Diffstat (limited to 'schedsim/shell/schedsim_cluster01/config.c')
-rw-r--r--schedsim/shell/schedsim_cluster01/config.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/schedsim/shell/schedsim_cluster01/config.c b/schedsim/shell/schedsim_cluster01/config.c
new file mode 100644
index 0000000..ab1bcbc
--- /dev/null
+++ b/schedsim/shell/schedsim_cluster01/config.c
@@ -0,0 +1,47 @@
+/**
+ * @file
+ *
+ * Configuration file for Scheduler Simulator using Priority SMP
+ */
+
+#include <rtems.h>
+
+#define CONFIGURE_INIT
+#define CONFIGURE_MAXIMUM_TASKS 1000
+#define CONFIGURE_MAXIMUM_SEMAPHORES 1000
+
+#define CONFIGURE_MAXIMUM_PRIORITY 255
+
+#define CONFIGURE_SMP_APPLICATION
+#define CONFIGURE_SMP_MAXIMUM_PROCESSORS 4
+#define CONFIGURE_SCHEDULER_PRIORITY_SMP
+#define CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP
+
+#include <rtems/scheduler.h>
+#include <schedsim_shell.h>
+
+shell_scheduler_name shell_scheduler_list[] = {
+"Priority SMP Scheduler",
+"Priority Affinity SMP Scheduler",
+""
+};
+
+RTEMS_SCHEDULER_CONTEXT_PRIORITY_SMP(a, CONFIGURE_MAXIMUM_PRIORITY + 1);
+RTEMS_SCHEDULER_CONTEXT_PRIORITY_AFFINITY_SMP(
+ b,
+ CONFIGURE_MAXIMUM_PRIORITY + 1
+);
+
+#define CONFIGURE_SCHEDULER_CONTROLS \
+ RTEMS_SCHEDULER_CONTROL_PRIORITY_SMP(a, SCHED_NAME(0)), \
+ RTEMS_SCHEDULER_CONTROL_PRIORITY_AFFINITY_SMP(b, SCHED_NAME(1))
+
+#define CONFIGURE_SMP_SCHEDULER_ASSIGNMENTS \
+ RTEMS_SCHEDULER_ASSIGN(0, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_MANDATORY), \
+ RTEMS_SCHEDULER_ASSIGN(0, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL), \
+ RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL), \
+ RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL)
+
+
+#define CONFIGURE_DISABLE_BSP_SETTINGS
+#include <rtems/confdefs.h>