summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/include
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-06-16 15:54:21 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-06-16 15:54:21 +0000
commit4cb19041d7d78d9ae29f878871e4d2b89b9abc22 (patch)
tree3efcf5818a29323bf55577ffbb324cd301249519 /cpukit/rtems/include
parent2008-06-13 Joel Sherrill <joel.sherrill@oarcorp.com> (diff)
downloadrtems-4cb19041d7d78d9ae29f878871e4d2b89b9abc22.tar.bz2
2008-06-16 Joel Sherrill <joel.sherrill@oarcorp.com>
* rtems/include/rtems/rtems/config.h, rtems/include/rtems/rtems/tasks.h, rtems/src/taskgetnote.c, rtems/src/tasks.c, rtems/src/tasksetnote.c, sapi/include/confdefs.h: Add CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS.
Diffstat (limited to 'cpukit/rtems/include')
-rw-r--r--cpukit/rtems/include/rtems/rtems/config.h13
-rw-r--r--cpukit/rtems/include/rtems/rtems/tasks.h12
2 files changed, 23 insertions, 2 deletions
diff --git a/cpukit/rtems/include/rtems/rtems/config.h b/cpukit/rtems/include/rtems/rtems/config.h
index 5afc3063d4..4298e6a215 100644
--- a/cpukit/rtems/include/rtems/rtems/config.h
+++ b/cpukit/rtems/include/rtems/rtems/config.h
@@ -48,6 +48,12 @@ typedef struct {
uint32_t maximum_tasks;
/**
+ * This field indicates whether Classic API notepads are
+ * enabled or disabled.
+ */
+ boolean notepads_enabled;
+
+ /**
* This field contains the maximum number of Classic API
* Timers which are configured for this application.
*/
@@ -110,6 +116,13 @@ typedef struct {
rtems_initialization_tasks_table *User_initialization_tasks_table;
} rtems_api_configuration_table;
+/**
+ * This macro returns the value of the notepads enabled field
+ * in the Classic API configuration table.
+ */
+#define rtems_configuration_get_notepads_enabled() \
+ rtems_configuration_get_rtems_api_configuration()->notepads_enabled
+
#ifdef __cplusplus
}
#endif
diff --git a/cpukit/rtems/include/rtems/rtems/tasks.h b/cpukit/rtems/include/rtems/rtems/tasks.h
index f09b0eb329..fe9f20ef45 100644
--- a/cpukit/rtems/include/rtems/rtems/tasks.h
+++ b/cpukit/rtems/include/rtems/rtems/tasks.h
@@ -201,16 +201,24 @@ typedef struct {
/**
* This is the API specific information required by each thread for
* the RTEMS API to function correctly.
+ *
+ * @note Notepads must be the last entry in the structure and memory
+ * will be taken away from this structure when allocated if
+ * notespads are disabled by the application configuration.
*/
typedef struct {
- /** This field contains the notepads for this task. */
- uint32_t Notepads[ RTEMS_NUMBER_NOTEPADS ];
/** This field contains the pending events for this task. */
rtems_event_set pending_events;
/** This field contains the event wait condition for this task. */
rtems_event_set event_condition;
/** This field contains the Classic API Signal information for this task. */
ASR_Information Signal;
+ /**
+ * This field contains the notepads for this task.
+ *
+ * @note MUST BE LAST ENTRY.
+ */
+ uint32_t Notepads[ RTEMS_NUMBER_NOTEPADS ];
} RTEMS_API_Control;
/**