* This include file contains information that is included in every
* function in the test set.
*
+ * COPYRIGHT (c) 1989-1999.
+ * On-Line Applications Research Corporation (OAR).
+ *
+ * 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.
+ *
+ * $Id: system.h,v 1.13.6.1 2003/09/04 18:46:30 joel Exp $
*/
-#include <tmacros.h>
+#include <rtems.h>
/* functions */
rtems_task Init(
rtems_task_argument argument
);
-
-
-rtems_task Task_1(
- rtems_task_argument argument
-);
-rtems_task Task_2(
- rtems_task_argument argument
-);
-
/* configuration information */
+#include <bsp.h> /* for device driver prototypes */
+
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
+#define CONFIGURE_APPLICATION_NEEDS_LIBBLOCK
+
+#define TICKS_PER_SECOND 100
-#define CONFIGURE_MAXIMUM_TASKS 7
-#define CONFIGURE_MAXIMUM_PERIODS 10
+#define CONFIGURE_MAXIMUM_TIMERS 32
+#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 32
+#define CONFIGURE_MAXIMUM_SEMAPHORES 32
+#define CONFIGURE_MAXIMUM_TASKS 32
+#define CONFIGURE_MAXIMUM_PERIODS 4
+#define CONFIGURE_MAXIMUM_USER_EXTENSIONS 2
+#define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 32
+#define CONFIGURE_MAXIMUM_DRIVERS (CONFIGURE_NUMBER_OF_DRIVERS+10)
+
+#ifdef RTEMS_POSIX_API
+#define CONFIGURE_MAXIMUM_POSIX_THREADS 32
+#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
+#define CONFIGURE_MAXIMUM_POSIX_SEMAPHORES 10
+#endif /*RTEMS_POSIX_API*/
-#define CONFIGURE_INIT_TASK_PRIORITY 10
-#define CONFIGURE_INIT_TASK_INITIAL_MODES RTEMS_DEFAULT_MODES
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-#define CONFIGURE_EXTRA_TASK_STACKS (6 * 3 * RTEMS_MINIMUM_STACK_SIZE)
-#include <confdefs.h>
+#define CONFIGURE_USE_IMFS_AS_BASE_FILESYSTEM
+/*#define CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM*/
+
+#define CONFIGURE_MICROSECONDS_PER_TICK 10000
+
+#define CONFIGURE_INIT_TASK_STACK_SIZE (10*1024)
+#define CONFIGURE_INIT_TASK_PRIORITY 120
+#define CONFIGURE_INIT_TASK_INITIAL_MODES (RTEMS_PREEMPT | \
+ RTEMS_NO_TIMESLICE | \
+ RTEMS_NO_ASR | \
+ RTEMS_INTERRUPT_LEVEL(0))
+
+
+
+/*
+ * Scheduler configuration.
+ *
+ * The scheduler configuration allows an application to select the
+ * scheduling policy to use. The supported configurations are:
+ * CONFIGURE_SCHEDULER_USER - user provided scheduler
+ * CONFIGURE_SCHEDULER_PRIORITY - Deterministic Priority Scheduler
+ *
+ * If no configuration is specified by the application, then
+ * CONFIGURE_SCHEDULER_PRIORITY is assumed to be the default.
+ *
+ * An application can define its own scheduling policy by defining
+ * CONFIGURE_SCHEDULER_USER and the following:
+ * - CONFIGURE_SCHEDULER_ENTRY_POINTS
+ * - CONFIGURE_MEMORY_FOR_SCHEDULER - base memory
+ * - CONFIGURE_MEMORY_PER_TASK_FOR_SCHEDULER - per task memory
+ */
+
+/// Enable yur own scheduler
+#define CONFIGURE_SCHEDULER_USER
+
+/**
+ * EDF scheduler configuration.
+ */
+#ifdef CONFIGURE_SCHEDULER_USER
+ #define CONFIGURE_SCHEDULER_USER_ENTRY_POINTS
+ #include "scheduler_edf.h"
+ #define SCHEDULER_ENTRY_POINTS SCHEDULER_EDF_ENTRY_POINTS
+ #define CONFIGURE_MEMORY_FOR_SCHEDULER (_Configure_From_workspace(sizeof(EDF_Chain_Control)))
+ #define CONFIGURE_MEMORY_PER_TASK_FOR_SCHEDULER (_Configure_From_workspace(sizeof(RBT_Node)))
+#endif
+
+
+
+#include <rtems/confdefs.h>
+
-/* global variables */
-TEST_EXTERN rtems_id Task_id[ 7 ]; /* array of task ids */
-TEST_EXTERN rtems_name Task_name[ 7 ]; /* array of task names */
/* end of include file */