mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2025-12-05 23:23:13 +00:00
2008-12-17 Joel Sherrill <joel.sherrill@oarcorp.com>
* itron/include/rtems/itron/config.h, itron/include/rtems/itron/eventflags.h, itron/include/rtems/itron/fmempool.h, itron/include/rtems/itron/mbox.h, itron/include/rtems/itron/msgbuffer.h, itron/include/rtems/itron/port.h, itron/include/rtems/itron/semaphore.h, itron/include/rtems/itron/task.h, itron/include/rtems/itron/vmempool.h, itron/src/eventflags.c, itron/src/fmempool.c, itron/src/itroninittasks.c, itron/src/itronsem.c, itron/src/mbox.c, itron/src/msgbuffer.c, itron/src/port.c, itron/src/task.c, itron/src/vmempool.c, sapi/src/itronapi.c: Convert ITRON manager initialization routines to directly pull parameters from configuration table.
This commit is contained in:
@@ -1,3 +1,20 @@
|
|||||||
|
2008-12-17 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||||
|
|
||||||
|
* itron/include/rtems/itron/config.h,
|
||||||
|
itron/include/rtems/itron/eventflags.h,
|
||||||
|
itron/include/rtems/itron/fmempool.h,
|
||||||
|
itron/include/rtems/itron/mbox.h,
|
||||||
|
itron/include/rtems/itron/msgbuffer.h,
|
||||||
|
itron/include/rtems/itron/port.h,
|
||||||
|
itron/include/rtems/itron/semaphore.h,
|
||||||
|
itron/include/rtems/itron/task.h,
|
||||||
|
itron/include/rtems/itron/vmempool.h, itron/src/eventflags.c,
|
||||||
|
itron/src/fmempool.c, itron/src/itroninittasks.c,
|
||||||
|
itron/src/itronsem.c, itron/src/mbox.c, itron/src/msgbuffer.c,
|
||||||
|
itron/src/port.c, itron/src/task.c, itron/src/vmempool.c,
|
||||||
|
sapi/src/itronapi.c: Convert ITRON manager initialization routines to
|
||||||
|
directly pull parameters from configuration table.
|
||||||
|
|
||||||
2008-12-17 Joel Sherrill <joel.sherrill@oarcorp.com>
|
2008-12-17 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||||
|
|
||||||
* posix/include/rtems/posix/config.h: Fix typo.
|
* posix/include/rtems/posix/config.h: Fix typo.
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
* This include file contains the table of user defined configuration
|
* This include file contains the table of user defined configuration
|
||||||
* parameters specific for the ITRON API.
|
* parameters specific for the ITRON API.
|
||||||
*
|
*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -58,6 +58,14 @@ typedef struct {
|
|||||||
itron_initialization_tasks_table *User_initialization_tasks_table;
|
itron_initialization_tasks_table *User_initialization_tasks_table;
|
||||||
} itron_api_configuration_table;
|
} itron_api_configuration_table;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief ITRON API Configuration Table
|
||||||
|
*
|
||||||
|
* This is the ITRON API Configuration Table expected to be generated
|
||||||
|
* by confdefs.h.
|
||||||
|
*/
|
||||||
|
extern itron_api_configuration_table Configuration_ITRON_API;
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -46,9 +46,7 @@ ITRON_EXTERN Objects_Information _ITRON_Eventflags_Information;
|
|||||||
* This routine performs the initialization necessary for this manager.
|
* This routine performs the initialization necessary for this manager.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Eventflags_Manager_initialization(
|
void _ITRON_Eventflags_Manager_initialization(void);
|
||||||
uint32_t maximum_eventflags
|
|
||||||
);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* XXX insert private stuff here
|
* XXX insert private stuff here
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -47,9 +47,7 @@ ITRON_EXTERN Objects_Information _ITRON_Fixed_memory_pool_Information;
|
|||||||
* This routine performs the initialization necessary for this manager.
|
* This routine performs the initialization necessary for this manager.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Fixed_memory_pool_Manager_initialization(
|
void _ITRON_Fixed_memory_pool_Manager_initialization(void);
|
||||||
uint32_t maximum_fixed_memory_pools
|
|
||||||
);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* XXX insert private stuff here
|
* XXX insert private stuff here
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -49,9 +49,7 @@ ITRON_EXTERN Objects_Information _ITRON_Mailbox_Information;
|
|||||||
* This routine performs the initialization necessary for this manager.
|
* This routine performs the initialization necessary for this manager.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Mailbox_Manager_initialization(
|
void _ITRON_Mailbox_Manager_initialization(void);
|
||||||
uint32_t maximum_mailboxes
|
|
||||||
);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* _ITRON_Mailbox_Translate_core_message_queue_return_code
|
* _ITRON_Mailbox_Translate_core_message_queue_return_code
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -49,9 +49,7 @@ ITRON_EXTERN Objects_Information _ITRON_Message_buffer_Information;
|
|||||||
* This routine performs the initialization necessary for this manager.
|
* This routine performs the initialization necessary for this manager.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Message_buffer_Manager_initialization(
|
void _ITRON_Message_buffer_Manager_initialization(void);
|
||||||
uint32_t maximum_message_buffers
|
|
||||||
);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* _ITRON_Message_buffer_Translate_core_message_buffer_return_code
|
* _ITRON_Message_buffer_Translate_core_message_buffer_return_code
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -46,9 +46,7 @@ ITRON_EXTERN Objects_Information _ITRON_Port_Information;
|
|||||||
* This routine performs the initialization necessary for this manager.
|
* This routine performs the initialization necessary for this manager.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Port_Manager_initialization(
|
void _ITRON_Port_Manager_initialization(void);
|
||||||
uint32_t maximum_ports
|
|
||||||
);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* XXX insert private stuff here
|
* XXX insert private stuff here
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -48,9 +48,7 @@ ITRON_EXTERN Objects_Information _ITRON_Semaphore_Information;
|
|||||||
* This routine performs the initialization necessary for this manager.
|
* This routine performs the initialization necessary for this manager.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Semaphore_Manager_initialization(
|
void _ITRON_Semaphore_Manager_initialization(void);
|
||||||
uint32_t maximum_semaphores
|
|
||||||
);
|
|
||||||
|
|
||||||
#include <rtems/itron/semaphore.inl>
|
#include <rtems/itron/semaphore.inl>
|
||||||
|
|
||||||
|
|||||||
@@ -56,14 +56,6 @@ typedef struct {
|
|||||||
|
|
||||||
ITRON_EXTERN Objects_Information _ITRON_Task_Information;
|
ITRON_EXTERN Objects_Information _ITRON_Task_Information;
|
||||||
|
|
||||||
/*
|
|
||||||
* These are used to manage the user initialization tasks.
|
|
||||||
*/
|
|
||||||
|
|
||||||
ITRON_EXTERN itron_initialization_tasks_table
|
|
||||||
*_ITRON_Task_User_initialization_tasks;
|
|
||||||
ITRON_EXTERN uint32_t _ITRON_Task_Number_of_initialization_tasks;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* When the user configures a set of ITRON API initialization tasks,
|
* When the user configures a set of ITRON API initialization tasks,
|
||||||
* This variable will point to the method used to initialize them.
|
* This variable will point to the method used to initialize them.
|
||||||
@@ -79,11 +71,7 @@ extern void (*_ITRON_Initialize_user_tasks_p)(void);
|
|||||||
* This routine initializes the ITRON Task Manager.
|
* This routine initializes the ITRON Task Manager.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Task_Manager_initialization(
|
void _ITRON_Task_Manager_initialization(void);
|
||||||
uint32_t maximum_tasks,
|
|
||||||
uint32_t number_of_initialization_tasks,
|
|
||||||
itron_initialization_tasks_table *user_tasks
|
|
||||||
);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Return a status code and enable dispatching
|
* Return a status code and enable dispatching
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -47,9 +47,7 @@ ITRON_EXTERN Objects_Information _ITRON_Variable_memory_pool_Information;
|
|||||||
* This routine performs the initialization necessary for this manager.
|
* This routine performs the initialization necessary for this manager.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Variable_memory_pool_Manager_initialization(
|
void _ITRON_Variable_memory_pool_Manager_initialization(void);
|
||||||
uint32_t maximum_variable_memory_pools
|
|
||||||
);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* XXX insert private stuff here
|
* XXX insert private stuff here
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-2007.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <rtems/itron.h>
|
#include <rtems/itron.h>
|
||||||
|
#include <rtems/config.h>
|
||||||
#include <rtems/itron/eventflags.h>
|
#include <rtems/itron/eventflags.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -22,21 +22,19 @@
|
|||||||
*
|
*
|
||||||
* This routine initializes all event flags manager related data structures.
|
* This routine initializes all event flags manager related data structures.
|
||||||
*
|
*
|
||||||
* Input parameters:
|
* Input parameters: NONE
|
||||||
* maximum_eventflags - maximum configured eventflags
|
|
||||||
*
|
*
|
||||||
* Output parameters: NONE
|
* Output parameters: NONE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Eventflags_Manager_initialization(
|
void _ITRON_Eventflags_Manager_initialization(void)
|
||||||
uint32_t maximum_eventflags
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
_Objects_Initialize_information(
|
_Objects_Initialize_information(
|
||||||
&_ITRON_Eventflags_Information, /* object information table */
|
&_ITRON_Eventflags_Information, /* object information table */
|
||||||
OBJECTS_ITRON_API, /* object API */
|
OBJECTS_ITRON_API, /* object API */
|
||||||
OBJECTS_ITRON_EVENTFLAGS, /* object class */
|
OBJECTS_ITRON_EVENTFLAGS, /* object class */
|
||||||
maximum_eventflags, /* maximum objects of this class */
|
Configuration_ITRON_API.maximum_eventflags,
|
||||||
|
/* maximum objects of this class */
|
||||||
sizeof( ITRON_Eventflags_Control ),
|
sizeof( ITRON_Eventflags_Control ),
|
||||||
/* size of this object's control block */
|
/* size of this object's control block */
|
||||||
FALSE, /* TRUE if names for this object are strings */
|
FALSE, /* TRUE if names for this object are strings */
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-2007.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <rtems/itron.h>
|
#include <rtems/itron.h>
|
||||||
|
#include <rtems/config.h>
|
||||||
#include <rtems/itron/fmempool.h>
|
#include <rtems/itron/fmempool.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -23,21 +23,19 @@
|
|||||||
* This routine initializes all fixed memory pool manager related
|
* This routine initializes all fixed memory pool manager related
|
||||||
* data structures.
|
* data structures.
|
||||||
*
|
*
|
||||||
* Input parameters:
|
* Input parameters: NONE
|
||||||
* maximum_fixed_memory_pools - maximum configured fixed memory pools
|
|
||||||
*
|
*
|
||||||
* Output parameters: NONE
|
* Output parameters: NONE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Fixed_memory_pool_Manager_initialization(
|
void _ITRON_Fixed_memory_pool_Manager_initialization(void)
|
||||||
uint32_t maximum_fixed_memory_pools
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
_Objects_Initialize_information(
|
_Objects_Initialize_information(
|
||||||
&_ITRON_Fixed_memory_pool_Information, /* object information table */
|
&_ITRON_Fixed_memory_pool_Information, /* object information table */
|
||||||
OBJECTS_ITRON_API, /* object API */
|
OBJECTS_ITRON_API, /* object API */
|
||||||
OBJECTS_ITRON_FIXED_MEMORY_POOLS, /* object class */
|
OBJECTS_ITRON_FIXED_MEMORY_POOLS, /* object class */
|
||||||
maximum_fixed_memory_pools, /* maximum objects of this class */
|
Configuration_ITRON_API.maximum_fixed_memory_pools,
|
||||||
|
/* maximum objects of this class */
|
||||||
sizeof( ITRON_Fixed_memory_pool_Control ),
|
sizeof( ITRON_Fixed_memory_pool_Control ),
|
||||||
/* size of this object's control block */
|
/* size of this object's control block */
|
||||||
FALSE, /* TRUE if names for this object are strings */
|
FALSE, /* TRUE if names for this object are strings */
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -37,12 +37,8 @@ void _ITRON_Task_Initialize_user_tasks_body( void )
|
|||||||
ER return_value;
|
ER return_value;
|
||||||
itron_initialization_tasks_table *user_tasks;
|
itron_initialization_tasks_table *user_tasks;
|
||||||
|
|
||||||
/*
|
user_tasks = Configuration_ITRON_API.User_initialization_tasks_table;
|
||||||
* NOTE: This is slightly different from the Ada implementation.
|
maximum = Configuration_ITRON_API.number_of_initialization_tasks;
|
||||||
*/
|
|
||||||
|
|
||||||
user_tasks = _ITRON_Task_User_initialization_tasks;
|
|
||||||
maximum = _ITRON_Task_Number_of_initialization_tasks;
|
|
||||||
|
|
||||||
if ( !user_tasks || maximum == 0 )
|
if ( !user_tasks || maximum == 0 )
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <rtems/itron.h>
|
#include <rtems/itron.h>
|
||||||
|
#include <rtems/config.h>
|
||||||
#include <rtems/itron/semaphore.h>
|
#include <rtems/itron/semaphore.h>
|
||||||
#include <rtems/itron/task.h>
|
#include <rtems/itron/task.h>
|
||||||
#include <rtems/score/tod.h>
|
#include <rtems/score/tod.h>
|
||||||
@@ -26,22 +26,20 @@
|
|||||||
*
|
*
|
||||||
* This routine initializes all semaphore manager related data structures.
|
* This routine initializes all semaphore manager related data structures.
|
||||||
*
|
*
|
||||||
* Input parameters:
|
* Input parameters: NONE
|
||||||
* maximum_semaphores - maximum configured semaphores
|
|
||||||
*
|
*
|
||||||
* Output parameters: NONE
|
* Output parameters: NONE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Semaphore_Manager_initialization(
|
void _ITRON_Semaphore_Manager_initialization(void)
|
||||||
uint32_t maximum_semaphores
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
_Objects_Initialize_information(
|
_Objects_Initialize_information(
|
||||||
&_ITRON_Semaphore_Information, /* object information table */
|
&_ITRON_Semaphore_Information, /* object information table */
|
||||||
OBJECTS_ITRON_API, /* object API */
|
OBJECTS_ITRON_API, /* object API */
|
||||||
OBJECTS_ITRON_SEMAPHORES, /* object class */
|
OBJECTS_ITRON_SEMAPHORES, /* object class */
|
||||||
maximum_semaphores, /* maximum objects of this class */
|
Configuration_ITRON_API.maximum_semaphores,
|
||||||
sizeof( ITRON_Semaphore_Control ), /* size of this object's control block */
|
/* maximum objects of this class */
|
||||||
|
sizeof(ITRON_Semaphore_Control), /* size of this object's control block */
|
||||||
FALSE, /* TRUE if names for this object are strings */
|
FALSE, /* TRUE if names for this object are strings */
|
||||||
ITRON_MAXIMUM_NAME_LENGTH /* maximum length of each object's name */
|
ITRON_MAXIMUM_NAME_LENGTH /* maximum length of each object's name */
|
||||||
#if defined(RTEMS_MULTIPROCESSING)
|
#if defined(RTEMS_MULTIPROCESSING)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* ITRON 3.0 Mailbox Manager
|
* ITRON 3.0 Mailbox Manager
|
||||||
*
|
*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <rtems/itron.h>
|
#include <rtems/itron.h>
|
||||||
|
#include <rtems/config.h>
|
||||||
#include <rtems/itron/mbox.h>
|
#include <rtems/itron/mbox.h>
|
||||||
#include <rtems/itron/task.h>
|
#include <rtems/itron/task.h>
|
||||||
|
|
||||||
@@ -25,21 +25,19 @@
|
|||||||
*
|
*
|
||||||
* This routine initializes all mailboxes manager related data structures.
|
* This routine initializes all mailboxes manager related data structures.
|
||||||
*
|
*
|
||||||
* Input parameters:
|
* Input parameters: NONE
|
||||||
* maximum_mailboxes - maximum configured mailboxes
|
|
||||||
*
|
*
|
||||||
* Output parameters: NONE
|
* Output parameters: NONE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Mailbox_Manager_initialization(
|
void _ITRON_Mailbox_Manager_initialization(void)
|
||||||
uint32_t maximum_mailboxes
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
_Objects_Initialize_information(
|
_Objects_Initialize_information(
|
||||||
&_ITRON_Mailbox_Information, /* object information table */
|
&_ITRON_Mailbox_Information, /* object information table */
|
||||||
OBJECTS_ITRON_API, /* object API */
|
OBJECTS_ITRON_API, /* object API */
|
||||||
OBJECTS_ITRON_MAILBOXES, /* object class */
|
OBJECTS_ITRON_MAILBOXES, /* object class */
|
||||||
maximum_mailboxes, /* maximum objects of this class */
|
Configuration_ITRON_API.maximum_mailboxes,
|
||||||
|
/* maximum objects of this class */
|
||||||
sizeof( ITRON_Mailbox_Control ), /* size of this object's control block */
|
sizeof( ITRON_Mailbox_Control ), /* size of this object's control block */
|
||||||
FALSE, /* TRUE if names for this object are strings */
|
FALSE, /* TRUE if names for this object are strings */
|
||||||
ITRON_MAXIMUM_NAME_LENGTH /* maximum length of each object's name */
|
ITRON_MAXIMUM_NAME_LENGTH /* maximum length of each object's name */
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* ITRON Message Buffer Manager
|
* ITRON Message Buffer Manager
|
||||||
*
|
*
|
||||||
* COPYRIGHT (c) 1989-1999.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <rtems/itron.h>
|
#include <rtems/itron.h>
|
||||||
|
#include <rtems/config.h>
|
||||||
#include <rtems/itron/msgbuffer.h>
|
#include <rtems/itron/msgbuffer.h>
|
||||||
#include <rtems/itron/task.h>
|
#include <rtems/itron/task.h>
|
||||||
|
|
||||||
@@ -26,21 +26,19 @@
|
|||||||
* This routine initializes all message buffer manager related data
|
* This routine initializes all message buffer manager related data
|
||||||
* structures.
|
* structures.
|
||||||
*
|
*
|
||||||
* Input parameters:
|
* Input parameters: NONE
|
||||||
* maximum_message_buffers - maximum configured message buffers
|
|
||||||
*
|
*
|
||||||
* Output parameters: NONE
|
* Output parameters: NONE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Message_buffer_Manager_initialization(
|
void _ITRON_Message_buffer_Manager_initialization(void)
|
||||||
uint32_t maximum_message_buffers
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
_Objects_Initialize_information(
|
_Objects_Initialize_information(
|
||||||
&_ITRON_Message_buffer_Information, /* object information table */
|
&_ITRON_Message_buffer_Information, /* object information table */
|
||||||
OBJECTS_ITRON_API, /* object API */
|
OBJECTS_ITRON_API, /* object API */
|
||||||
OBJECTS_ITRON_MESSAGE_BUFFERS, /* object class */
|
OBJECTS_ITRON_MESSAGE_BUFFERS, /* object class */
|
||||||
maximum_message_buffers, /* maximum objects of this class */
|
Configuration_ITRON_API.maximum_message_buffers,
|
||||||
|
/* maximum objects of this class */
|
||||||
sizeof( ITRON_Message_buffer_Control ),
|
sizeof( ITRON_Message_buffer_Control ),
|
||||||
/* size of this object's control block */
|
/* size of this object's control block */
|
||||||
FALSE, /* TRUE if names for this object are strings */
|
FALSE, /* TRUE if names for this object are strings */
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-2007.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <rtems/itron.h>
|
#include <rtems/itron.h>
|
||||||
|
#include <rtems/config.h>
|
||||||
#include <rtems/itron/port.h>
|
#include <rtems/itron/port.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -22,21 +22,19 @@
|
|||||||
*
|
*
|
||||||
* This routine initializes all ports manager related data structures.
|
* This routine initializes all ports manager related data structures.
|
||||||
*
|
*
|
||||||
* Input parameters:
|
* Input parameters: NONE
|
||||||
* maximum_ports - maximum configured ports
|
|
||||||
*
|
*
|
||||||
* Output parameters: NONE
|
* Output parameters: NONE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Port_Manager_initialization(
|
void _ITRON_Port_Manager_initialization(void)
|
||||||
uint32_t maximum_ports
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
_Objects_Initialize_information(
|
_Objects_Initialize_information(
|
||||||
&_ITRON_Port_Information, /* object information table */
|
&_ITRON_Port_Information, /* object information table */
|
||||||
OBJECTS_ITRON_API, /* object API */
|
OBJECTS_ITRON_API, /* object API */
|
||||||
OBJECTS_ITRON_PORTS, /* object class */
|
OBJECTS_ITRON_PORTS, /* object class */
|
||||||
maximum_ports, /* maximum objects of this class */
|
Configuration_ITRON_API.maximum_ports,
|
||||||
|
/* maximum objects of this class */
|
||||||
sizeof( ITRON_Port_Control ), /* size of this object's control block */
|
sizeof( ITRON_Port_Control ), /* size of this object's control block */
|
||||||
FALSE, /* TRUE if names for this object are strings */
|
FALSE, /* TRUE if names for this object are strings */
|
||||||
ITRON_MAXIMUM_NAME_LENGTH /* maximum length of each object's name */
|
ITRON_MAXIMUM_NAME_LENGTH /* maximum length of each object's name */
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <rtems/itron.h>
|
#include <rtems/itron.h>
|
||||||
|
#include <rtems/config.h>
|
||||||
#include <rtems/score/thread.h>
|
#include <rtems/score/thread.h>
|
||||||
#include <rtems/score/userext.h>
|
#include <rtems/score/userext.h>
|
||||||
#include <rtems/score/wkspace.h>
|
#include <rtems/score/wkspace.h>
|
||||||
@@ -148,21 +148,15 @@ User_extensions_Control _ITRON_Task_User_extensions = {
|
|||||||
* Output parameters: NONE
|
* Output parameters: NONE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Task_Manager_initialization(
|
void _ITRON_Task_Manager_initialization(void)
|
||||||
uint32_t maximum_tasks,
|
|
||||||
uint32_t number_of_initialization_tasks,
|
|
||||||
itron_initialization_tasks_table *user_tasks
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
|
|
||||||
_ITRON_Task_Number_of_initialization_tasks = number_of_initialization_tasks;
|
|
||||||
_ITRON_Task_User_initialization_tasks = user_tasks;
|
|
||||||
|
|
||||||
_Objects_Initialize_information(
|
_Objects_Initialize_information(
|
||||||
&_ITRON_Task_Information, /* object information table */
|
&_ITRON_Task_Information, /* object information table */
|
||||||
OBJECTS_ITRON_API, /* object API */
|
OBJECTS_ITRON_API, /* object API */
|
||||||
OBJECTS_ITRON_TASKS, /* object class */
|
OBJECTS_ITRON_TASKS, /* object class */
|
||||||
maximum_tasks, /* maximum objects of this class */
|
Configuration_ITRON_API.maximum_tasks,
|
||||||
|
/* maximum objects of this class */
|
||||||
sizeof( Thread_Control ), /* size of this object's control block */
|
sizeof( Thread_Control ), /* size of this object's control block */
|
||||||
FALSE, /* TRUE if names for this object are strings */
|
FALSE, /* TRUE if names for this object are strings */
|
||||||
ITRON_MAXIMUM_NAME_LENGTH /* maximum length of each object's name */
|
ITRON_MAXIMUM_NAME_LENGTH /* maximum length of each object's name */
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* COPYRIGHT (c) 1989-2007.
|
* COPYRIGHT (c) 1989-2008.
|
||||||
* On-Line Applications Research Corporation (OAR).
|
* On-Line Applications Research Corporation (OAR).
|
||||||
*
|
*
|
||||||
* The license and distribution terms for this file may be
|
* The license and distribution terms for this file may be
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <rtems/itron.h>
|
#include <rtems/itron.h>
|
||||||
|
#include <rtems/config.h>
|
||||||
#include <rtems/itron/vmempool.h>
|
#include <rtems/itron/vmempool.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -29,15 +29,14 @@
|
|||||||
* Output parameters: NONE
|
* Output parameters: NONE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void _ITRON_Variable_memory_pool_Manager_initialization(
|
void _ITRON_Variable_memory_pool_Manager_initialization(void)
|
||||||
uint32_t maximum_variable_memory_pools
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
_Objects_Initialize_information(
|
_Objects_Initialize_information(
|
||||||
&_ITRON_Variable_memory_pool_Information, /* object information table */
|
&_ITRON_Variable_memory_pool_Information, /* object information table */
|
||||||
OBJECTS_ITRON_API, /* object API */
|
OBJECTS_ITRON_API, /* object API */
|
||||||
OBJECTS_ITRON_VARIABLE_MEMORY_POOLS, /* object class */
|
OBJECTS_ITRON_VARIABLE_MEMORY_POOLS, /* object class */
|
||||||
maximum_variable_memory_pools, /* maximum objects of this class */
|
Configuration_ITRON_API.maximum_memory_pools,
|
||||||
|
/* maximum objects of this class */
|
||||||
sizeof( ITRON_Variable_memory_pool_Control ),
|
sizeof( ITRON_Variable_memory_pool_Control ),
|
||||||
/* size of this object's control block */
|
/* size of this object's control block */
|
||||||
FALSE, /* TRUE if names for this object are strings */
|
FALSE, /* TRUE if names for this object are strings */
|
||||||
|
|||||||
@@ -56,8 +56,6 @@ Objects_Information *_ITRON_Objects[ OBJECTS_ITRON_CLASSES_LAST + 1 ];
|
|||||||
|
|
||||||
void _ITRON_API_Initialize(void)
|
void _ITRON_API_Initialize(void)
|
||||||
{
|
{
|
||||||
const itron_api_configuration_table *api;
|
|
||||||
|
|
||||||
/* XXX need to assert here based on size assumptions */
|
/* XXX need to assert here based on size assumptions */
|
||||||
|
|
||||||
assert( sizeof(ID) == sizeof(Objects_Id) );
|
assert( sizeof(ID) == sizeof(Objects_Id) );
|
||||||
@@ -66,31 +64,16 @@ void _ITRON_API_Initialize(void)
|
|||||||
* Install our API Object Management Table and initialize the
|
* Install our API Object Management Table and initialize the
|
||||||
* various managers.
|
* various managers.
|
||||||
*/
|
*/
|
||||||
api = &Configuration_ITRON_API;
|
|
||||||
|
|
||||||
_Objects_Information_table[OBJECTS_ITRON_API] = _ITRON_Objects;
|
_Objects_Information_table[OBJECTS_ITRON_API] = _ITRON_Objects;
|
||||||
|
|
||||||
_ITRON_Task_Manager_initialization(
|
_ITRON_Task_Manager_initialization();
|
||||||
api->maximum_tasks,
|
_ITRON_Semaphore_Manager_initialization();
|
||||||
api->number_of_initialization_tasks,
|
_ITRON_Eventflags_Manager_initialization();
|
||||||
api->User_initialization_tasks_table
|
_ITRON_Fixed_memory_pool_Manager_initialization();
|
||||||
);
|
_ITRON_Mailbox_Manager_initialization();
|
||||||
|
_ITRON_Message_buffer_Manager_initialization();
|
||||||
_ITRON_Semaphore_Manager_initialization( api->maximum_semaphores );
|
_ITRON_Port_Manager_initialization();
|
||||||
|
_ITRON_Variable_memory_pool_Manager_initialization();
|
||||||
_ITRON_Eventflags_Manager_initialization( api->maximum_eventflags );
|
|
||||||
|
|
||||||
_ITRON_Fixed_memory_pool_Manager_initialization(
|
|
||||||
api->maximum_fixed_memory_pools
|
|
||||||
);
|
|
||||||
|
|
||||||
_ITRON_Mailbox_Manager_initialization( api->maximum_mailboxes );
|
|
||||||
|
|
||||||
_ITRON_Message_buffer_Manager_initialization( api->maximum_message_buffers );
|
|
||||||
|
|
||||||
_ITRON_Port_Manager_initialization( api->maximum_ports );
|
|
||||||
|
|
||||||
_ITRON_Variable_memory_pool_Manager_initialization(api->maximum_memory_pools);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user