summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/rtems
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-02-14 09:31:44 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2020-02-25 07:15:18 +0100
commit9520ec3a2aab575e264410d1ce95c468897c3bc9 (patch)
tree9bf686e89d8a2d23e69f110674a1141a3e7f985c /cpukit/include/rtems/rtems
parentconfig: Remove CONFIGURE_HAS_OWN_INIT_TASK_TABLE (diff)
downloadrtems-9520ec3a2aab575e264410d1ce95c468897c3bc9.tar.bz2
config: Simplify initialization task config
With the removal of the CONFIGURE_HAS_OWN_INIT_TASK_TABLE configuration option at most one Classic API user initialization task can be configured. Provide an RTEMS API configuration table for backward compatibility. Update #3873.
Diffstat (limited to 'cpukit/include/rtems/rtems')
-rw-r--r--cpukit/include/rtems/rtems/config.h13
-rw-r--r--cpukit/include/rtems/rtems/tasksdata.h19
2 files changed, 13 insertions, 19 deletions
diff --git a/cpukit/include/rtems/rtems/config.h b/cpukit/include/rtems/rtems/config.h
index 63449be922..a5078f6bb6 100644
--- a/cpukit/include/rtems/rtems/config.h
+++ b/cpukit/include/rtems/rtems/config.h
@@ -55,17 +55,9 @@ typedef struct {
* This field is the set of Classic API Initialization
* Tasks which are configured for this application.
*/
- rtems_initialization_tasks_table *User_initialization_tasks_table;
+ const rtems_initialization_tasks_table *User_initialization_tasks_table;
} rtems_api_configuration_table;
-/**
- * @brief RTEMS API Configuration Table
- *
- * This is the RTEMS API Configuration Table expected to be generated
- * by confdefs.h.
- */
-extern rtems_api_configuration_table Configuration_RTEMS_API;
-
/**@}*/
uint32_t rtems_configuration_get_maximum_barriers( void );
@@ -86,6 +78,9 @@ uint32_t rtems_configuration_get_maximum_timers( void );
uint32_t rtems_configuration_get_maximum_tasks( void );
+const rtems_api_configuration_table *
+rtems_configuration_get_rtems_api_configuration( void );
+
#ifdef __cplusplus
}
#endif
diff --git a/cpukit/include/rtems/rtems/tasksdata.h b/cpukit/include/rtems/rtems/tasksdata.h
index 19e6a8a618..55090f71b0 100644
--- a/cpukit/include/rtems/rtems/tasksdata.h
+++ b/cpukit/include/rtems/rtems/tasksdata.h
@@ -53,19 +53,18 @@ typedef struct {
} RTEMS_API_Control;
/**
- * @brief _RTEMS_tasks_Initialize_user_tasks_body
+ * @brief Initialization table for the first user task.
*
- * This routine creates and starts all configured user
- * initialization threads.
- *
- * Input parameters: NONE
- *
- * Output parameters: NONE
- *
- * RTEMS Task Manager
+ * This table is used by _RTEMS_tasks_Initialize_user_task() and initialized
+ * via <rtems/confdefs.h>.
*/
+extern const rtems_initialization_tasks_table _RTEMS_tasks_User_task_table;
-extern void _RTEMS_tasks_Initialize_user_tasks_body( void );
+/**
+ * @brief System initialization handler to create and start the first user
+ * task.
+ */
+extern void _RTEMS_tasks_Initialize_user_task( void );
/**
* The following instantiates the information control block used to