Changeset e06ecec5 in rtems


Ignore:
Timestamp:
Dec 17, 2008, 10:12:24 PM (10 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, master
Children:
790b50b
Parents:
7252caf2
Message:

2008-12-17 Joel Sherrill <joel.sherrill@…>

  • 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.
Location:
cpukit
Files:
20 edited

Legend:

Unmodified
Added
Removed
  • cpukit/ChangeLog

    r7252caf2 re06ecec5  
     12008-12-17      Joel Sherrill <joel.sherrill@oarcorp.com>
     2
     3        * itron/include/rtems/itron/config.h,
     4        itron/include/rtems/itron/eventflags.h,
     5        itron/include/rtems/itron/fmempool.h,
     6        itron/include/rtems/itron/mbox.h,
     7        itron/include/rtems/itron/msgbuffer.h,
     8        itron/include/rtems/itron/port.h,
     9        itron/include/rtems/itron/semaphore.h,
     10        itron/include/rtems/itron/task.h,
     11        itron/include/rtems/itron/vmempool.h, itron/src/eventflags.c,
     12        itron/src/fmempool.c, itron/src/itroninittasks.c,
     13        itron/src/itronsem.c, itron/src/mbox.c, itron/src/msgbuffer.c,
     14        itron/src/port.c, itron/src/task.c, itron/src/vmempool.c,
     15        sapi/src/itronapi.c: Convert ITRON manager initialization routines to
     16        directly pull parameters from configuration table.
     17
    1182008-12-17      Joel Sherrill <joel.sherrill@oarcorp.com>
    219
  • cpukit/itron/include/rtems/itron/config.h

    r7252caf2 re06ecec5  
    88 *  parameters specific for the ITRON API.
    99 *
    10  *  COPYRIGHT (c) 1989-1999.
     10 *  COPYRIGHT (c) 1989-2008.
    1111 *  On-Line Applications Research Corporation (OAR).
    1212 *
     
    5959} itron_api_configuration_table;
    6060
     61/**
     62 *  @brief ITRON API Configuration Table
     63 *
     64 *  This is the ITRON API Configuration Table expected to be generated
     65 *  by confdefs.h.
     66 */
     67extern itron_api_configuration_table Configuration_ITRON_API;
     68
    6169#ifdef __cplusplus
    6270}
  • cpukit/itron/include/rtems/itron/eventflags.h

    r7252caf2 re06ecec5  
    44
    55/*
    6  *  COPYRIGHT (c) 1989-1999.
     6 *  COPYRIGHT (c) 1989-2008.
    77 *  On-Line Applications Research Corporation (OAR).
    88 *
     
    4747 */
    4848
    49 void _ITRON_Eventflags_Manager_initialization(
    50   uint32_t   maximum_eventflags
    51 );
     49void _ITRON_Eventflags_Manager_initialization(void);
    5250
    5351/*
  • cpukit/itron/include/rtems/itron/fmempool.h

    r7252caf2 re06ecec5  
    44
    55/*
    6  *  COPYRIGHT (c) 1989-1999.
     6 *  COPYRIGHT (c) 1989-2008.
    77 *  On-Line Applications Research Corporation (OAR).
    88 *
     
    4848 */
    4949
    50 void _ITRON_Fixed_memory_pool_Manager_initialization(
    51   uint32_t   maximum_fixed_memory_pools
    52 );
     50void _ITRON_Fixed_memory_pool_Manager_initialization(void);
    5351
    5452/*
  • cpukit/itron/include/rtems/itron/mbox.h

    r7252caf2 re06ecec5  
    44
    55/*
    6  *  COPYRIGHT (c) 1989-1999.
     6 *  COPYRIGHT (c) 1989-2008.
    77 *  On-Line Applications Research Corporation (OAR).
    88 *
     
    5050 */
    5151
    52 void _ITRON_Mailbox_Manager_initialization(
    53   uint32_t   maximum_mailboxes
    54 );
     52void _ITRON_Mailbox_Manager_initialization(void);
    5553
    5654/*
  • cpukit/itron/include/rtems/itron/msgbuffer.h

    r7252caf2 re06ecec5  
    44
    55/*
    6  *  COPYRIGHT (c) 1989-1999.
     6 *  COPYRIGHT (c) 1989-2008.
    77 *  On-Line Applications Research Corporation (OAR).
    88 *
     
    5050 */
    5151
    52 void _ITRON_Message_buffer_Manager_initialization(
    53   uint32_t   maximum_message_buffers
    54 );
     52void _ITRON_Message_buffer_Manager_initialization(void);
    5553
    5654/*
  • cpukit/itron/include/rtems/itron/port.h

    r7252caf2 re06ecec5  
    44
    55/*
    6  *  COPYRIGHT (c) 1989-1999.
     6 *  COPYRIGHT (c) 1989-2008.
    77 *  On-Line Applications Research Corporation (OAR).
    88 *
     
    4747 */
    4848
    49 void _ITRON_Port_Manager_initialization(
    50   uint32_t   maximum_ports
    51 );
     49void _ITRON_Port_Manager_initialization(void);
    5250
    5351/*
  • cpukit/itron/include/rtems/itron/semaphore.h

    r7252caf2 re06ecec5  
    44
    55/*
    6  *  COPYRIGHT (c) 1989-1999.
     6 *  COPYRIGHT (c) 1989-2008.
    77 *  On-Line Applications Research Corporation (OAR).
    88 *
     
    4949 */
    5050
    51 void _ITRON_Semaphore_Manager_initialization(
    52   uint32_t   maximum_semaphores
    53 );
     51void _ITRON_Semaphore_Manager_initialization(void);
    5452
    5553#include <rtems/itron/semaphore.inl>
  • cpukit/itron/include/rtems/itron/task.h

    r7252caf2 re06ecec5  
    5757ITRON_EXTERN Objects_Information _ITRON_Task_Information;
    5858
    59 /*
    60  *  These are used to manage the user initialization tasks.
    61  */
    62 
    63 ITRON_EXTERN itron_initialization_tasks_table
    64                *_ITRON_Task_User_initialization_tasks;
    65 ITRON_EXTERN uint32_t     _ITRON_Task_Number_of_initialization_tasks;
    66 
    6759/**
    6860 *  When the user configures a set of ITRON API initialization tasks,
     
    8072 */
    8173
    82 void _ITRON_Task_Manager_initialization(
    83   uint32_t                          maximum_tasks,
    84   uint32_t                          number_of_initialization_tasks,
    85   itron_initialization_tasks_table *user_tasks
    86 );
     74void _ITRON_Task_Manager_initialization(void);
    8775
    8876/*
  • cpukit/itron/include/rtems/itron/vmempool.h

    r7252caf2 re06ecec5  
    44
    55/*
    6  *  COPYRIGHT (c) 1989-1999.
     6 *  COPYRIGHT (c) 1989-2008.
    77 *  On-Line Applications Research Corporation (OAR).
    88 *
     
    4848 */
    4949
    50 void _ITRON_Variable_memory_pool_Manager_initialization(
    51   uint32_t   maximum_variable_memory_pools
    52 );
     50void _ITRON_Variable_memory_pool_Manager_initialization(void);
    5351
    5452/*
  • cpukit/itron/src/eventflags.c

    r7252caf2 re06ecec5  
    11/*
    2  *  COPYRIGHT (c) 1989-2007.
     2 *  COPYRIGHT (c) 1989-2008.
    33 *  On-Line Applications Research Corporation (OAR).
    44 *
     
    1515
    1616#include <rtems/itron.h>
    17 
     17#include <rtems/config.h>
    1818#include <rtems/itron/eventflags.h>
    1919
     
    2323 *  This routine initializes all event flags manager related data structures.
    2424 *
    25  *  Input parameters:
    26  *    maximum_eventflags - maximum configured eventflags
     25 *  Input parameters:   NONE
    2726 *
    2827 *  Output parameters:  NONE
    2928 */
    3029
    31 void _ITRON_Eventflags_Manager_initialization(
    32   uint32_t   maximum_eventflags
    33 )
     30void _ITRON_Eventflags_Manager_initialization(void)
    3431{
    3532  _Objects_Initialize_information(
     
    3734    OBJECTS_ITRON_API,                  /* object API */
    3835    OBJECTS_ITRON_EVENTFLAGS,           /* object class */
    39     maximum_eventflags,                 /* maximum objects of this class */
     36    Configuration_ITRON_API.maximum_eventflags,
     37                                 /* maximum objects of this class */
    4038    sizeof( ITRON_Eventflags_Control ),
    4139                                 /* size of this object's control block */
  • cpukit/itron/src/fmempool.c

    r7252caf2 re06ecec5  
    11/*
    2  *  COPYRIGHT (c) 1989-2007.
     2 *  COPYRIGHT (c) 1989-2008.
    33 *  On-Line Applications Research Corporation (OAR).
    44 *
     
    1515
    1616#include <rtems/itron.h>
    17 
     17#include <rtems/config.h>
    1818#include <rtems/itron/fmempool.h>
    1919
     
    2424 *  data structures.
    2525 *
    26  *  Input parameters:
    27  *    maximum_fixed_memory_pools - maximum configured fixed memory pools
     26 *  Input parameters:   NONE
    2827 *
    2928 *  Output parameters:  NONE
    3029 */
    3130
    32 void _ITRON_Fixed_memory_pool_Manager_initialization(
    33   uint32_t   maximum_fixed_memory_pools
    34 )
     31void _ITRON_Fixed_memory_pool_Manager_initialization(void)
    3532{
    3633  _Objects_Initialize_information(
     
    3835    OBJECTS_ITRON_API,                 /* object API */
    3936    OBJECTS_ITRON_FIXED_MEMORY_POOLS,  /* object class */
    40     maximum_fixed_memory_pools,        /* maximum objects of this class */
     37    Configuration_ITRON_API.maximum_fixed_memory_pools,
     38                                 /* maximum objects of this class */
    4139    sizeof( ITRON_Fixed_memory_pool_Control ),
    4240                                 /* size of this object's control block */
  • cpukit/itron/src/itroninittasks.c

    r7252caf2 re06ecec5  
    11/*
    2  *  COPYRIGHT (c) 1989-1999.
     2 *  COPYRIGHT (c) 1989-2008.
    33 *  On-Line Applications Research Corporation (OAR).
    44 *
     
    3838  itron_initialization_tasks_table *user_tasks;
    3939
    40   /*
    41    *  NOTE:  This is slightly different from the Ada implementation.
    42    */
    43 
    44   user_tasks = _ITRON_Task_User_initialization_tasks;
    45   maximum    = _ITRON_Task_Number_of_initialization_tasks;
     40  user_tasks = Configuration_ITRON_API.User_initialization_tasks_table;
     41  maximum    = Configuration_ITRON_API.number_of_initialization_tasks;
    4642
    4743  if ( !user_tasks || maximum == 0 )
  • cpukit/itron/src/itronsem.c

    r7252caf2 re06ecec5  
    11/*
    2  *  COPYRIGHT (c) 1989-1999.
     2 *  COPYRIGHT (c) 1989-2008.
    33 *  On-Line Applications Research Corporation (OAR).
    44 *
     
    1515
    1616#include <rtems/itron.h>
    17 
     17#include <rtems/config.h>
    1818#include <rtems/itron/semaphore.h>
    1919#include <rtems/itron/task.h>
     
    2727 *  This routine initializes all semaphore manager related data structures.
    2828 *
    29  *  Input parameters:
    30  *    maximum_semaphores - maximum configured semaphores
     29 *  Input parameters:   NONE
    3130 *
    3231 *  Output parameters:  NONE
    3332 */
    3433
    35 void _ITRON_Semaphore_Manager_initialization(
    36   uint32_t   maximum_semaphores
    37 )
     34void _ITRON_Semaphore_Manager_initialization(void)
    3835{
    3936  _Objects_Initialize_information(
    40     &_ITRON_Semaphore_Information,     /* object information table */
    41     OBJECTS_ITRON_API,                 /* object API */
    42     OBJECTS_ITRON_SEMAPHORES,          /* object class */
    43     maximum_semaphores,                /* maximum objects of this class */
    44     sizeof( ITRON_Semaphore_Control ), /* size of this object's control block */
     37    &_ITRON_Semaphore_Information,   /* object information table */
     38    OBJECTS_ITRON_API,               /* object API */
     39    OBJECTS_ITRON_SEMAPHORES,        /* object class */
     40    Configuration_ITRON_API.maximum_semaphores,
     41                                     /* maximum objects of this class */
     42    sizeof(ITRON_Semaphore_Control), /* size of this object's control block */
    4543    FALSE,                       /* TRUE if names for this object are strings */
    4644    ITRON_MAXIMUM_NAME_LENGTH    /* maximum length of each object's name */
  • cpukit/itron/src/mbox.c

    r7252caf2 re06ecec5  
    22 *  ITRON 3.0 Mailbox Manager
    33 *
    4  *  COPYRIGHT (c) 1989-1999.
     4 *  COPYRIGHT (c) 1989-2008.
    55 *  On-Line Applications Research Corporation (OAR).
    66 *
     
    1717
    1818#include <rtems/itron.h>
    19 
     19#include <rtems/config.h>
    2020#include <rtems/itron/mbox.h>
    2121#include <rtems/itron/task.h>
     
    2626 *  This routine initializes all mailboxes manager related data structures.
    2727 *
    28  *  Input parameters:
    29  *    maximum_mailboxes - maximum configured mailboxes
     28 *  Input parameters:   NONE
    3029 *
    3130 *  Output parameters:  NONE
    3231 */
    3332
    34 void _ITRON_Mailbox_Manager_initialization(
    35   uint32_t   maximum_mailboxes
    36 )
     33void _ITRON_Mailbox_Manager_initialization(void)
    3734{
    3835  _Objects_Initialize_information(
     
    4037    OBJECTS_ITRON_API,           /* object API */
    4138    OBJECTS_ITRON_MAILBOXES,     /* object class */
    42     maximum_mailboxes,           /* maximum objects of this class */
     39    Configuration_ITRON_API.maximum_mailboxes,
     40                                 /* maximum objects of this class */
    4341    sizeof( ITRON_Mailbox_Control ), /* size of this object's control block */
    4442    FALSE,                       /* TRUE if names for this object are strings */
  • cpukit/itron/src/msgbuffer.c

    r7252caf2 re06ecec5  
    22 *  ITRON Message Buffer Manager
    33 *
    4  *  COPYRIGHT (c) 1989-1999.
     4 *  COPYRIGHT (c) 1989-2008.
    55 *  On-Line Applications Research Corporation (OAR).
    66 *
     
    1717
    1818#include <rtems/itron.h>
    19 
     19#include <rtems/config.h>
    2020#include <rtems/itron/msgbuffer.h>
    2121#include <rtems/itron/task.h>
     
    2727 *  structures.
    2828 *
    29  *  Input parameters:
    30  *    maximum_message_buffers - maximum configured message buffers
     29 *  Input parameters:   NONE
    3130 *
    3231 *  Output parameters:  NONE
    3332 */
    3433
    35 void _ITRON_Message_buffer_Manager_initialization(
    36   uint32_t   maximum_message_buffers
    37 )
     34void _ITRON_Message_buffer_Manager_initialization(void)
    3835{
    3936  _Objects_Initialize_information(
     
    4138    OBJECTS_ITRON_API,                  /* object API */
    4239    OBJECTS_ITRON_MESSAGE_BUFFERS,      /* object class */
    43     maximum_message_buffers,            /* maximum objects of this class */
     40    Configuration_ITRON_API.maximum_message_buffers,
     41                               /* maximum objects of this class */
    4442    sizeof( ITRON_Message_buffer_Control ),
    4543                               /* size of this object's control block */
  • cpukit/itron/src/port.c

    r7252caf2 re06ecec5  
    11/*
    2  *  COPYRIGHT (c) 1989-2007.
     2 *  COPYRIGHT (c) 1989-2008.
    33 *  On-Line Applications Research Corporation (OAR).
    44 *
     
    1515
    1616#include <rtems/itron.h>
    17 
     17#include <rtems/config.h>
    1818#include <rtems/itron/port.h>
    1919
     
    2323 *  This routine initializes all ports manager related data structures.
    2424 *
    25  *  Input parameters:
    26  *    maximum_ports - maximum configured ports
     25 *  Input parameters:   NONE
    2726 *
    2827 *  Output parameters:  NONE
    2928 */
    3029
    31 void _ITRON_Port_Manager_initialization(
    32   uint32_t   maximum_ports
    33 )
     30void _ITRON_Port_Manager_initialization(void)
    3431{
    3532  _Objects_Initialize_information(
     
    3734    OBJECTS_ITRON_API,            /* object API */
    3835    OBJECTS_ITRON_PORTS,          /* object class */
    39     maximum_ports,                /* maximum objects of this class */
     36    Configuration_ITRON_API.maximum_ports,
     37                                  /* maximum objects of this class */
    4038    sizeof( ITRON_Port_Control ), /* size of this object's control block */
    4139    FALSE,                     /* TRUE if names for this object are strings */
  • cpukit/itron/src/task.c

    r7252caf2 re06ecec5  
    1515
    1616#include <rtems/itron.h>
    17 
     17#include <rtems/config.h>
    1818#include <rtems/score/thread.h>
    1919#include <rtems/score/userext.h>
     
    149149 */
    150150
    151 void _ITRON_Task_Manager_initialization(
    152   uint32_t                          maximum_tasks,
    153   uint32_t                          number_of_initialization_tasks,
    154   itron_initialization_tasks_table *user_tasks
    155 )
     151void _ITRON_Task_Manager_initialization(void)
    156152{
    157 
    158   _ITRON_Task_Number_of_initialization_tasks = number_of_initialization_tasks;
    159   _ITRON_Task_User_initialization_tasks = user_tasks;
    160153
    161154  _Objects_Initialize_information(
     
    163156    OBJECTS_ITRON_API,          /* object API */
    164157    OBJECTS_ITRON_TASKS,        /* object class */
    165     maximum_tasks,              /* maximum objects of this class */
     158    Configuration_ITRON_API.maximum_tasks,
     159                                /* maximum objects of this class */
    166160    sizeof( Thread_Control ),   /* size of this object's control block */
    167161    FALSE,                      /* TRUE if names for this object are strings */
  • cpukit/itron/src/vmempool.c

    r7252caf2 re06ecec5  
    11/*
    2  *  COPYRIGHT (c) 1989-2007.
     2 *  COPYRIGHT (c) 1989-2008.
    33 *  On-Line Applications Research Corporation (OAR).
    44 *
     
    1515
    1616#include <rtems/itron.h>
    17 
     17#include <rtems/config.h>
    1818#include <rtems/itron/vmempool.h>
    1919
     
    3030 */
    3131
    32 void _ITRON_Variable_memory_pool_Manager_initialization(
    33   uint32_t   maximum_variable_memory_pools
    34 )
     32void _ITRON_Variable_memory_pool_Manager_initialization(void)
    3533{
    3634  _Objects_Initialize_information(
     
    3836    OBJECTS_ITRON_API,                        /* object API */
    3937    OBJECTS_ITRON_VARIABLE_MEMORY_POOLS,      /* object class */
    40     maximum_variable_memory_pools, /* maximum objects of this class */
     38    Configuration_ITRON_API.maximum_memory_pools,
     39                                /* maximum objects of this class */
    4140    sizeof( ITRON_Variable_memory_pool_Control ),
    4241                                /* size of this object's control block */
  • cpukit/sapi/src/itronapi.c

    r7252caf2 re06ecec5  
    5757void _ITRON_API_Initialize(void)
    5858{
    59   const itron_api_configuration_table *api;
    60 
    6159  /* XXX need to assert here based on size assumptions */
    6260
     
    6765   * various managers.
    6866   */
    69   api = &Configuration_ITRON_API;
    70 
    7167  _Objects_Information_table[OBJECTS_ITRON_API] = _ITRON_Objects;
    7268
    73   _ITRON_Task_Manager_initialization(
    74     api->maximum_tasks,
    75     api->number_of_initialization_tasks,
    76     api->User_initialization_tasks_table
    77   );
    78 
    79   _ITRON_Semaphore_Manager_initialization( api->maximum_semaphores );
    80 
    81   _ITRON_Eventflags_Manager_initialization( api->maximum_eventflags );
    82 
    83   _ITRON_Fixed_memory_pool_Manager_initialization(
    84     api->maximum_fixed_memory_pools
    85   );
    86 
    87   _ITRON_Mailbox_Manager_initialization( api->maximum_mailboxes );
    88 
    89   _ITRON_Message_buffer_Manager_initialization( api->maximum_message_buffers );
    90 
    91   _ITRON_Port_Manager_initialization( api->maximum_ports );
    92 
    93   _ITRON_Variable_memory_pool_Manager_initialization(api->maximum_memory_pools);
     69  _ITRON_Task_Manager_initialization();
     70  _ITRON_Semaphore_Manager_initialization();
     71  _ITRON_Eventflags_Manager_initialization();
     72  _ITRON_Fixed_memory_pool_Manager_initialization();
     73  _ITRON_Mailbox_Manager_initialization();
     74  _ITRON_Message_buffer_Manager_initialization();
     75  _ITRON_Port_Manager_initialization();
     76  _ITRON_Variable_memory_pool_Manager_initialization();
    9477}
    9578
Note: See TracChangeset for help on using the changeset viewer.