From 263f4beceae0ec5602cb41e792c25ebe3ec49c97 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Mon, 7 Apr 2014 14:50:37 +0200 Subject: score: Statically initialize IO manager This simplifies the RTEMS initialization and helps to avoid a memory overhead. The workspace demands of the IO manager were not included in the workspace size estimate. This is also fixed as a side-effect. Update documentation and move "Specifying Application Defined Device Driver Table" to the section end. This sub-section is not that important for the user. Mentioning this at the beginning may lead to confusion. --- cpukit/sapi/include/rtems/config.h | 13 ------------- cpukit/sapi/include/rtems/io.h | 13 ++----------- 2 files changed, 2 insertions(+), 24 deletions(-) (limited to 'cpukit/sapi/include/rtems') diff --git a/cpukit/sapi/include/rtems/config.h b/cpukit/sapi/include/rtems/config.h index 0998f054ec..9a9d0a3694 100644 --- a/cpukit/sapi/include/rtems/config.h +++ b/cpukit/sapi/include/rtems/config.h @@ -57,7 +57,6 @@ typedef void *posix_api_configuration_table; #include #include -#include #if defined(RTEMS_MULTIPROCESSING) #include #endif @@ -242,9 +241,6 @@ typedef struct { bool smp_enabled; #endif - uint32_t maximum_drivers; - uint32_t number_of_device_drivers; - rtems_driver_address_table *Device_driver_table; uint32_t number_of_initial_extensions; const rtems_extensions_table *User_extension_table; #if defined(RTEMS_MULTIPROCESSING) @@ -335,15 +331,6 @@ extern const rtems_configuration_table Configuration; #define rtems_configuration_get_do_zero_of_workspace() \ (Configuration.do_zero_of_workspace) -#define rtems_configuration_get_maximum_drivers() \ - (Configuration.maximum_drivers) - -#define rtems_configuration_get_number_of_device_drivers() \ - (Configuration.number_of_device_drivers) - -#define rtems_configuration_get_device_driver_table() \ - (Configuration.Device_driver_table) - #define rtems_configuration_get_number_of_initial_extensions() \ (Configuration.number_of_initial_extensions) diff --git a/cpukit/sapi/include/rtems/io.h b/cpukit/sapi/include/rtems/io.h index 799a30582d..ce750b0f69 100644 --- a/cpukit/sapi/include/rtems/io.h +++ b/cpukit/sapi/include/rtems/io.h @@ -250,18 +250,9 @@ rtems_status_code rtems_io_lookup_name( rtems_driver_name_t *device_info ) RTEMS_COMPILER_DEPRECATED_ATTRIBUTE; -SAPI_IO_EXTERN uint32_t _IO_Number_of_drivers; +extern const size_t _IO_Number_of_drivers; -SAPI_IO_EXTERN rtems_driver_address_table *_IO_Driver_address_table; - -/** - * @brief Initialization of device drivers. - * - * NOTE: The IO manager has been extended to support runtime driver - * registration. The driver table is now allocated in the - * workspace. - */ -void _IO_Manager_initialization( void ); +extern rtems_driver_address_table _IO_Driver_address_table[]; /** * @brief Initialization of all device drivers. -- cgit v1.2.3