This is Unofficial EPICS BASE Doxygen Site
rtems_config.c
Go to the documentation of this file.
1 /*************************************************************************\
2 * Copyright (c) 2002 The University of Saskatchewan
3 * EPICS BASE Versions 3.13.7
4 * and higher are distributed subject to a Software License Agreement found
5 * in file LICENSE that is included with this distribution.
6 \*************************************************************************/
7 /*
8  * RTEMS configuration for EPICS
9  * Author: W. Eric Norum
10  * norume@aps.anl.gov
11  * (630) 252-4793
12  */
13 
14 #include <rtems.h>
15 
16 /*
17  ***********************************************************************
18  * RTEMS CONFIGURATION *
19  ***********************************************************************
20  */
21 #define CONFIGURE_RTEMS_INIT_TASKS_TABLE
22 
23 #if __RTEMS_MAJOR__>4 || (__RTEMS_MAJOR__==4 && __RTEMS_MINOR__>9) || (__RTEMS_MAJOR__==4 && __RTEMS_MINOR__==9 && __RTEMS_REVISION__==99)
24 # define CONFIGURE_UNIFIED_WORK_AREAS
25 #else
26 # define CONFIGURE_EXECUTIVE_RAM_SIZE (2000*1024)
27 #endif
28 
29 #define CONFIGURE_MAXIMUM_TASKS rtems_resource_unlimited(30)
30 #define CONFIGURE_MAXIMUM_BARRIERS rtems_resource_unlimited(30)
31 #define CONFIGURE_MAXIMUM_SEMAPHORES rtems_resource_unlimited(500)
32 #define CONFIGURE_MAXIMUM_TIMERS rtems_resource_unlimited(20)
33 #define CONFIGURE_MAXIMUM_MESSAGE_QUEUES rtems_resource_unlimited(5)
34 #define CONFIGURE_MAXIMUM_USER_EXTENSIONS 1
35 
36 #define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 150
37 #define CONFIGURE_USE_IMFS_AS_BASE_FILESYSTEM
38 #define CONFIGURE_MAXIMUM_DRIVERS 8
39 
40 #define CONFIGURE_MICROSECONDS_PER_TICK 20000
41 
42 #define CONFIGURE_INIT_TASK_PRIORITY 80
43 
44 #define CONFIGURE_MALLOC_STATISTICS 1
45 
46 #define CONFIGURE_INIT
47 #define CONFIGURE_INIT_TASK_INITIAL_MODES (RTEMS_PREEMPT | \
48  RTEMS_NO_TIMESLICE | \
49  RTEMS_NO_ASR | \
50  RTEMS_INTERRUPT_LEVEL(0))
51 #define CONFIGURE_INIT_TASK_ATTRIBUTES (RTEMS_FLOATING_POINT | RTEMS_LOCAL)
52 #define CONFIGURE_INIT_TASK_STACK_SIZE (16*1024)
53 rtems_task Init (rtems_task_argument argument);
54 
55 #define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
56 #define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
57 
58 #define CONFIGURE_FILESYSTEM_NFS
59 #define CONFIGURE_FILESYSTEM_IMFS
60 
61 /*
62  * This should be made BSP dependent, not CPU dependent but I know of no
63  * appropriate conditionals to use.
64  * The new general time support makes including the RTC driverr less important.
65  */
66 #if !defined(mpc604) && !defined(__mc68040__) && !defined(__mcf5200__) && !defined(mpc7455) && !defined(__arm__) && !defined(__nios2__)/* don't have RTC code */
67 #define CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER
68 #endif
69 
70 
71 #include <bsp.h>
72 #include <rtems/confdefs.h>
rtems_task Init(rtems_task_argument argument)
Definition: rtems_init.c:565