diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2008-12-18 17:15:13 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2008-12-18 17:15:13 +0000 |
commit | 584ab9e16e52b46ae65cb245fd86858824da4bb9 (patch) | |
tree | e7c7808d1a6062c0f850c2fa3f1b388e04d76717 | |
parent | 2008-12-18 Joel Sherrill <joel.sherrill@oarcorp.com> (diff) | |
download | rtems-584ab9e16e52b46ae65cb245fd86858824da4bb9.tar.bz2 |
2008-12-18 Joel Sherrill <joel.sherrill@oarcorp.com>
* rtems/include/rtems/rtems/regionmp.h, sapi/include/rtems/config.h,
sapi/src/exinit.c, score/Makefile.am,
score/include/rtems/score/object.h,
score/include/rtems/score/objectmp.h, score/src/objectmp.c: Eliminate
Object Handler Initialization routine since it was all for MP
configurations.
* score/src/object.c: Removed.
-rw-r--r-- | cpukit/ChangeLog | 10 | ||||
-rw-r--r-- | cpukit/rtems/include/rtems/rtems/regionmp.h | 2 | ||||
-rw-r--r-- | cpukit/sapi/include/rtems/config.h | 13 | ||||
-rw-r--r-- | cpukit/sapi/src/exinit.c | 2 | ||||
-rw-r--r-- | cpukit/score/Makefile.am | 2 | ||||
-rw-r--r-- | cpukit/score/include/rtems/score/object.h | 5 | ||||
-rw-r--r-- | cpukit/score/include/rtems/score/objectmp.h | 11 | ||||
-rw-r--r-- | cpukit/score/src/object.c | 70 | ||||
-rw-r--r-- | cpukit/score/src/objectmp.c | 25 |
9 files changed, 46 insertions, 94 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog index 6578c32328..d144634663 100644 --- a/cpukit/ChangeLog +++ b/cpukit/ChangeLog @@ -1,5 +1,15 @@ 2008-12-18 Joel Sherrill <joel.sherrill@oarcorp.com> + * rtems/include/rtems/rtems/regionmp.h, sapi/include/rtems/config.h, + sapi/src/exinit.c, score/Makefile.am, + score/include/rtems/score/object.h, + score/include/rtems/score/objectmp.h, score/src/objectmp.c: Eliminate + Object Handler Initialization routine since it was all for MP + configurations. + * score/src/object.c: Removed. + +2008-12-18 Joel Sherrill <joel.sherrill@oarcorp.com> + * libmisc/shell/cmds.c: Revert back to public. Used to execute monitor commands in test code. diff --git a/cpukit/rtems/include/rtems/rtems/regionmp.h b/cpukit/rtems/include/rtems/rtems/regionmp.h index d7736654ff..ba6816bb3d 100644 --- a/cpukit/rtems/include/rtems/rtems/regionmp.h +++ b/cpukit/rtems/include/rtems/rtems/regionmp.h @@ -87,7 +87,7 @@ rtems_status_code _Region_MP_Send_request_packet ( Region_MP_Remote_operations operation, Objects_Id region_id, void *segment, - uint32_t size, + intptr_t size, rtems_option option_set, rtems_interval timeout ); diff --git a/cpukit/sapi/include/rtems/config.h b/cpukit/sapi/include/rtems/config.h index 91110d846f..56a59183b3 100644 --- a/cpukit/sapi/include/rtems/config.h +++ b/cpukit/sapi/include/rtems/config.h @@ -172,7 +172,7 @@ typedef struct { /** * This is the configuration table generated by confdefs.h. */ -extern rtems_configuration_table Configuration; +extern rtems_configuration_table Configuration; #if defined(RTEMS_MULTIPROCESSING) /** @@ -181,6 +181,17 @@ extern rtems_configuration_table Configuration; SAPI_EXTERN rtems_multiprocessing_table *_Configuration_MP_table; #endif +#if defined(RTEMS_MULTIPROCESSING) + /** + * @brief RTEMS Multiprocessing Configuration Table + * + * This is the RTEMS Multiprocessing Configuration Table expected to + * be generated by confdefs.h. + */ + extern rtems_multiprocessing_table Multiprocessing_configuration; +#endif + + /* * Some handy macros to avoid dependencies on either the BSP * or the exact format of the configuration table. diff --git a/cpukit/sapi/src/exinit.c b/cpukit/sapi/src/exinit.c index b2378032de..d725db3647 100644 --- a/cpukit/sapi/src/exinit.c +++ b/cpukit/sapi/src/exinit.c @@ -115,7 +115,6 @@ void rtems_initialize_data_structures(void) _User_extensions_Handler_initialization(); _ISR_Handler_initialization(); - _Objects_Handler_initialization(); /* * Initialize the internal support API and allocator Mutex @@ -132,6 +131,7 @@ void rtems_initialize_data_structures(void) _Thread_Handler_initialization(); #if defined(RTEMS_MULTIPROCESSING) + _Objects_MP_Handler_initialization(); _MPCI_Handler_initialization( RTEMS_TIMEOUT ); #endif diff --git a/cpukit/score/Makefile.am b/cpukit/score/Makefile.am index 81e2e525f7..472f3bd53a 100644 --- a/cpukit/score/Makefile.am +++ b/cpukit/score/Makefile.am @@ -113,7 +113,7 @@ libscore_a_SOURCES += src/heap.c src/heapallocate.c src/heapextend.c \ src/heapresizeblock.c ## OBJECT_C_FILES -libscore_a_SOURCES += src/object.c src/objectallocate.c src/objectclose.c \ +libscore_a_SOURCES += src/objectallocate.c src/objectclose.c \ src/objectextendinformation.c src/objectfree.c src/objectget.c \ src/objectgetisr.c src/objectgetnext.c src/objectinitializeinformation.c \ src/objectnametoid.c src/objectnametoidstring.c \ diff --git a/cpukit/score/include/rtems/score/object.h b/cpukit/score/include/rtems/score/object.h index 3d02e5f9a7..6a746501a6 100644 --- a/cpukit/score/include/rtems/score/object.h +++ b/cpukit/score/include/rtems/score/object.h @@ -435,11 +435,6 @@ SCORE_EXTERN Objects_Information #define OBJECTS_ID_FINAL ((Objects_Id)~0) /** - * This function performs the initialization necessary for this handler. - */ -void _Objects_Handler_initialization(void); - -/** * This function extends an object class information record. * * @param[in] information points to an object class information block. diff --git a/cpukit/score/include/rtems/score/objectmp.h b/cpukit/score/include/rtems/score/objectmp.h index ec449ea0e6..5c47659ee1 100644 --- a/cpukit/score/include/rtems/score/objectmp.h +++ b/cpukit/score/include/rtems/score/objectmp.h @@ -50,17 +50,8 @@ typedef struct { * * This routine intializes the inactive global object chain * based on the maximum number of global objects configured. - * - * @param[in] node is this node's number. - * @param[in] maximum_nodes is the maximum number of nodes in the system. - * @param[in] maximum_global_objects is the maximum number of concurrently - * created global objects. */ -void _Objects_MP_Handler_initialization ( - uint32_t node, - uint32_t maximum_nodes, - uint32_t maximum_global_objects -); +void _Objects_MP_Handler_initialization(void); /** @brief Objects MP Open * diff --git a/cpukit/score/src/object.c b/cpukit/score/src/object.c deleted file mode 100644 index f34739aa67..0000000000 --- a/cpukit/score/src/object.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Object Handler - * - * - * COPYRIGHT (c) 1989-2008. - * 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$ - */ - -#if HAVE_CONFIG_H -#include "config.h" -#endif - -#include <rtems/system.h> -#include <rtems/config.h> -#include <rtems/score/address.h> -#include <rtems/score/chain.h> -#include <rtems/score/object.h> -#if defined(RTEMS_MULTIPROCESSING) -#include <rtems/score/objectmp.h> -#endif -#include <rtems/score/thread.h> -#include <rtems/score/wkspace.h> -#include <rtems/score/sysstate.h> -#include <rtems/score/isr.h> - -/*PAGE - * - * _Objects_Handler_initialization - * - * This routine initializes the object handler. - * - * Input parameters: NONE - * - * Output parameters: NONE - */ - -void _Objects_Handler_initialization(void) -{ -#if defined(RTEMS_MULTIPROCESSING) - uint32_t node; - uint32_t maximum_nodes; - uint32_t maximum_global_objects; - - node = _Configuration_MP_table->node; - maximum_nodes = _Configuration_MP_table->maximum_nodes; - maximum_global_objects = _Configuration_MP_table->maximum_global_objects; - - if ( node < 1 || node > maximum_nodes ) - _Internal_error_Occurred( - INTERNAL_ERROR_CORE, - TRUE, - INTERNAL_ERROR_INVALID_NODE - ); - - _Objects_Local_node = node; - _Objects_Maximum_nodes = maximum_nodes; - - _Objects_MP_Handler_initialization( - node, - maximum_nodes, - maximum_global_objects - ); -#endif -} diff --git a/cpukit/score/src/objectmp.c b/cpukit/score/src/objectmp.c index 3447069760..58b52f93dc 100644 --- a/cpukit/score/src/objectmp.c +++ b/cpukit/score/src/objectmp.c @@ -17,6 +17,7 @@ #endif #include <rtems/system.h> +#include <rtems/config.h> #include <rtems/score/interr.h> #include <rtems/score/object.h> #include <rtems/score/wkspace.h> @@ -28,12 +29,26 @@ * */ -void _Objects_MP_Handler_initialization ( - uint32_t node, - uint32_t maximum_nodes, - uint32_t maximum_global_objects -) +void _Objects_MP_Handler_initialization(void) { + uint32_t node; + uint32_t maximum_nodes; + uint32_t maximum_global_objects; + + node = _Configuration_MP_table->node; + maximum_nodes = _Configuration_MP_table->maximum_nodes; + maximum_global_objects = _Configuration_MP_table->maximum_global_objects; + + if ( node < 1 || node > maximum_nodes ) + _Internal_error_Occurred( + INTERNAL_ERROR_CORE, + TRUE, + INTERNAL_ERROR_INVALID_NODE + ); + + + _Objects_Local_node = node; + _Objects_Maximum_nodes = maximum_nodes; _Objects_MP_Maximum_global_objects = maximum_global_objects; if ( maximum_global_objects == 0 ) { |