Changeset e6d4b1d in rtems


Ignore:
Timestamp:
05/28/96 13:13:34 (28 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
cb96372
Parents:
3320e52
Message:

added initial posix configuration support

Files:
6 added
38 edited

Legend:

Unmodified
Added
Removed
  • c/src/exec/libcsupport/src/libio.c

    r3320e52 re6d4b1d  
    9191     */
    9292
    93     config->maximum_semaphores += 1;            /* one for iop table */
    94     config->maximum_semaphores += max_fds;
     93    /* one for iop table */
     94    config->RTEMS_api_configuration->maximum_semaphores += 1;
     95    config->RTEMS_api_configuration->maximum_semaphores += max_fds;
    9596}
    9697
  • c/src/exec/rtems/headers/tasks.h

    r3320e52 re6d4b1d  
    4646#include <rtems/rtems/asr.h>
    4747#include <rtems/rtems/attr.h>
     48#include <rtems/rtems/status.h>
    4849
    4950/*
  • c/src/exec/rtems/include/rtems/rtems/tasks.h

    r3320e52 re6d4b1d  
    4646#include <rtems/rtems/asr.h>
    4747#include <rtems/rtems/attr.h>
     48#include <rtems/rtems/status.h>
    4849
    4950/*
  • c/src/exec/sapi/headers/confdefs.h

    r3320e52 re6d4b1d  
    2323#endif
    2424 
    25 
    2625extern rtems_initialization_tasks_table Initialization_tasks[];
    2726extern rtems_driver_address_table       Device_drivers[];
     
    342341
    343342#ifdef CONFIGURE_INIT
    344 rtems_configuration_table Configuration = {
    345   CONFIGURE_EXECUTIVE_RAM_WORK_AREA,
    346   CONFIGURE_EXECUTIVE_RAM_SIZE,
     343
     344rtems_api_configuration_table Configuration_RTEMS_API = {
    347345  CONFIGURE_MAXIMUM_TASKS,
    348346  CONFIGURE_MAXIMUM_TIMERS,
     
    353351  CONFIGURE_MAXIMUM_PORTS,
    354352  CONFIGURE_MAXIMUM_PERIODS,
     353  sizeof (Initialization_tasks)/
     354   sizeof(rtems_initialization_tasks_table), /* number of init tasks */
     355  Initialization_tasks                       /* init task(s) table */
     356};
     357
     358rtems_configuration_table Configuration = {
     359  CONFIGURE_EXECUTIVE_RAM_WORK_AREA,
     360  CONFIGURE_EXECUTIVE_RAM_SIZE,
    355361  CONFIGURE_MAXIMUM_USER_EXTENSIONS,
    356362  CONFIGURE_MICROSECONDS_PER_TICK,
    357363  CONFIGURE_TICKS_PER_TIMESLICE,
    358   sizeof (Initialization_tasks)/
    359    sizeof(rtems_initialization_tasks_table), /* number of init tasks */
    360   Initialization_tasks,                      /* init task(s) table */
     364  CONFIGURE_MAXIMUM_DEVICES,
    361365  sizeof (Device_drivers)/
    362366    sizeof(rtems_driver_address_table),      /* number of device drivers */
    363   CONFIGURE_MAXIMUM_DEVICES,
    364367  Device_drivers,                            /* pointer to driver table */
    365368  CONFIGURE_INITIAL_EXTENSIONS,              /* pointer to initial extensions */
    366   CONFIGURE_MULTIPROCESSING_TABLE            /* ptr to MP config table */
     369  CONFIGURE_MULTIPROCESSING_TABLE,           /* pointer to MP config table */
     370  &Configuration_RTEMS_API,                  /* pointer to RTEMS API config */
     371  NULL                                       /* pointer to RTEMS API config */
    367372};
    368373#endif
  • c/src/exec/sapi/headers/config.h

    r3320e52 re6d4b1d  
    2222#endif
    2323
     24#include <rtems/posix/config.h>
     25#include <rtems/rtems/config.h>
     26
     27/*  XXX <rtems/rtems/config.h> should cover these
    2428#include <rtems/rtems/status.h>
     29#include <rtems/rtems/types.h>
     30#include <rtems/rtems/tasks.h>
     31*/
     32
    2533#include <rtems/extension.h>
    2634#include <rtems/io.h>
    2735#include <rtems/score/mpci.h>
    28 #include <rtems/rtems/types.h>
    29 #include <rtems/rtems/tasks.h>
    3036
    3137/*
     
    5157 *
    5258 *     + location and size of the RTEMS Workspace
    53  *     + required number of each object type
    5459 *     + microseconds per clock tick
    5560 *     + clock ticks per task timeslice
     61 *     + required number of each object type for each API configured
    5662 */
    5763
     
    5965  void                             *work_space_start;
    6066  unsigned32                        work_space_size;
    61   unsigned32                        maximum_tasks;
    62   unsigned32                        maximum_timers;
    63   unsigned32                        maximum_semaphores;
    64   unsigned32                        maximum_message_queues;
    65   unsigned32                        maximum_partitions;
    66   unsigned32                        maximum_regions;
    67   unsigned32                        maximum_ports;
    68   unsigned32                        maximum_periods;
    6967  unsigned32                        maximum_extensions;
    7068  unsigned32                        microseconds_per_tick;
    7169  unsigned32                        ticks_per_timeslice;
    72   unsigned32                        number_of_initialization_tasks;
    73   rtems_initialization_tasks_table *User_initialization_tasks_table;
     70  unsigned32                        maximum_devices;
    7471  unsigned32                        number_of_device_drivers;
    75   unsigned32                        maximum_devices;
    7672  rtems_driver_address_table       *Device_driver_table;
    7773  rtems_extensions_table           *User_extension_table;
    7874  rtems_multiprocessing_table      *User_multiprocessing_table;
     75  rtems_api_configuration_table    *RTEMS_api_configuration;
     76  posix_api_configuration_table    *Posix_api_configuration;
    7977} rtems_configuration_table;
    8078
  • c/src/exec/sapi/include/confdefs.h

    r3320e52 re6d4b1d  
    2323#endif
    2424 
    25 
    2625extern rtems_initialization_tasks_table Initialization_tasks[];
    2726extern rtems_driver_address_table       Device_drivers[];
     
    342341
    343342#ifdef CONFIGURE_INIT
    344 rtems_configuration_table Configuration = {
    345   CONFIGURE_EXECUTIVE_RAM_WORK_AREA,
    346   CONFIGURE_EXECUTIVE_RAM_SIZE,
     343
     344rtems_api_configuration_table Configuration_RTEMS_API = {
    347345  CONFIGURE_MAXIMUM_TASKS,
    348346  CONFIGURE_MAXIMUM_TIMERS,
     
    353351  CONFIGURE_MAXIMUM_PORTS,
    354352  CONFIGURE_MAXIMUM_PERIODS,
     353  sizeof (Initialization_tasks)/
     354   sizeof(rtems_initialization_tasks_table), /* number of init tasks */
     355  Initialization_tasks                       /* init task(s) table */
     356};
     357
     358rtems_configuration_table Configuration = {
     359  CONFIGURE_EXECUTIVE_RAM_WORK_AREA,
     360  CONFIGURE_EXECUTIVE_RAM_SIZE,
    355361  CONFIGURE_MAXIMUM_USER_EXTENSIONS,
    356362  CONFIGURE_MICROSECONDS_PER_TICK,
    357363  CONFIGURE_TICKS_PER_TIMESLICE,
    358   sizeof (Initialization_tasks)/
    359    sizeof(rtems_initialization_tasks_table), /* number of init tasks */
    360   Initialization_tasks,                      /* init task(s) table */
     364  CONFIGURE_MAXIMUM_DEVICES,
    361365  sizeof (Device_drivers)/
    362366    sizeof(rtems_driver_address_table),      /* number of device drivers */
    363   CONFIGURE_MAXIMUM_DEVICES,
    364367  Device_drivers,                            /* pointer to driver table */
    365368  CONFIGURE_INITIAL_EXTENSIONS,              /* pointer to initial extensions */
    366   CONFIGURE_MULTIPROCESSING_TABLE            /* ptr to MP config table */
     369  CONFIGURE_MULTIPROCESSING_TABLE,           /* pointer to MP config table */
     370  &Configuration_RTEMS_API,                  /* pointer to RTEMS API config */
     371  NULL                                       /* pointer to RTEMS API config */
    367372};
    368373#endif
  • c/src/exec/sapi/include/rtems/config.h

    r3320e52 re6d4b1d  
    2222#endif
    2323
     24#include <rtems/posix/config.h>
     25#include <rtems/rtems/config.h>
     26
     27/*  XXX <rtems/rtems/config.h> should cover these
    2428#include <rtems/rtems/status.h>
     29#include <rtems/rtems/types.h>
     30#include <rtems/rtems/tasks.h>
     31*/
     32
    2533#include <rtems/extension.h>
    2634#include <rtems/io.h>
    2735#include <rtems/score/mpci.h>
    28 #include <rtems/rtems/types.h>
    29 #include <rtems/rtems/tasks.h>
    3036
    3137/*
     
    5157 *
    5258 *     + location and size of the RTEMS Workspace
    53  *     + required number of each object type
    5459 *     + microseconds per clock tick
    5560 *     + clock ticks per task timeslice
     61 *     + required number of each object type for each API configured
    5662 */
    5763
     
    5965  void                             *work_space_start;
    6066  unsigned32                        work_space_size;
    61   unsigned32                        maximum_tasks;
    62   unsigned32                        maximum_timers;
    63   unsigned32                        maximum_semaphores;
    64   unsigned32                        maximum_message_queues;
    65   unsigned32                        maximum_partitions;
    66   unsigned32                        maximum_regions;
    67   unsigned32                        maximum_ports;
    68   unsigned32                        maximum_periods;
    6967  unsigned32                        maximum_extensions;
    7068  unsigned32                        microseconds_per_tick;
    7169  unsigned32                        ticks_per_timeslice;
    72   unsigned32                        number_of_initialization_tasks;
    73   rtems_initialization_tasks_table *User_initialization_tasks_table;
     70  unsigned32                        maximum_devices;
    7471  unsigned32                        number_of_device_drivers;
    75   unsigned32                        maximum_devices;
    7672  rtems_driver_address_table       *Device_driver_table;
    7773  rtems_extensions_table           *User_extension_table;
    7874  rtems_multiprocessing_table      *User_multiprocessing_table;
     75  rtems_api_configuration_table    *RTEMS_api_configuration;
     76  posix_api_configuration_table    *Posix_api_configuration;
    7977} rtems_configuration_table;
    8078
  • c/src/exec/sapi/src/rtemsapi.c

    r3320e52 re6d4b1d  
    4646)
    4747{
     48  rtems_api_configuration_table *api_configuration;
     49
     50  api_configuration = configuration_table->RTEMS_api_configuration;
     51
    4852  _Attributes_Handler_initialization();
    4953 
     
    5357 
    5458  _RTEMS_tasks_Manager_initialization(
    55     configuration_table->maximum_tasks,
    56     configuration_table->number_of_initialization_tasks,
    57     configuration_table->User_initialization_tasks_table
     59    api_configuration->maximum_tasks,
     60    api_configuration->number_of_initialization_tasks,
     61    api_configuration->User_initialization_tasks_table
    5862  );
    5963 
    60   _Timer_Manager_initialization( configuration_table->maximum_timers );
     64  _Timer_Manager_initialization( api_configuration->maximum_timers );
    6165 
    6266  _Signal_Manager_initialization();
     
    6569 
    6670  _Message_queue_Manager_initialization(
    67     configuration_table->maximum_message_queues
     71    api_configuration->maximum_message_queues
    6872  );
    6973 
    70   _Semaphore_Manager_initialization(
    71     configuration_table->maximum_semaphores
    72   );
     74  _Semaphore_Manager_initialization( api_configuration->maximum_semaphores );
    7375 
    74   _Partition_Manager_initialization(
    75     configuration_table->maximum_partitions
    76   );
     76  _Partition_Manager_initialization( api_configuration->maximum_partitions );
    7777 
    78   _Region_Manager_initialization( configuration_table->maximum_regions );
     78  _Region_Manager_initialization( api_configuration->maximum_regions );
    7979 
    80   _Dual_ported_memory_Manager_initialization(
    81     configuration_table->maximum_ports
    82   );
     80  _Dual_ported_memory_Manager_initialization( api_configuration->maximum_ports);
    8381 
    84   _Rate_monotonic_Manager_initialization(
    85     configuration_table->maximum_periods
    86   );
     82  _Rate_monotonic_Manager_initialization( api_configuration->maximum_periods );
    8783}
    8884
  • c/src/lib/libbsp/hppa1.1/simhppa/startup/bspstart.c

    r3320e52 re6d4b1d  
    378378     */
    379379
    380     BSP_Configuration.maximum_regions++;
     380    BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    381381
    382382#ifdef RTEMS_NEWLIB
  • c/src/lib/libbsp/i386/force386/startup/bspstart.c

    r3320e52 re6d4b1d  
    195195   */
    196196
    197   BSP_Configuration.maximum_regions++;
     197  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    198198
    199199  /*
  • c/src/lib/libbsp/i386/go32/startup/bspstart.c

    r3320e52 re6d4b1d  
    195195   */
    196196
    197   BSP_Configuration.maximum_regions++;
     197  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    198198
    199199  /*
  • c/src/lib/libbsp/i960/cvme961/startup/bspstart.c

    r3320e52 re6d4b1d  
    209209   */
    210210
    211   BSP_Configuration.maximum_regions++;
     211  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    212212
    213213  /*
  • c/src/lib/libbsp/m68k/dmv152/startup/bspstart.c

    r3320e52 re6d4b1d  
    217217   */
    218218
    219   BSP_Configuration.maximum_regions++;
     219  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    220220
    221221  /*
  • c/src/lib/libbsp/m68k/efi332/startup/bspstart.c

    r3320e52 re6d4b1d  
    190190   */
    191191
    192   BSP_Configuration.maximum_regions++;
     192  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    193193
    194194  /*
  • c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c

    r3320e52 re6d4b1d  
    200200   */
    201201
    202   BSP_Configuration.maximum_regions++;
     202  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    203203
    204204  /*
  • c/src/lib/libbsp/m68k/gen68302/startup/bspstart.c

    r3320e52 re6d4b1d  
    181181   */
    182182
    183   BSP_Configuration.maximum_regions++;
     183  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    184184
    185185  /*
  • c/src/lib/libbsp/m68k/gen68360/startup/bspstart.c

    r3320e52 re6d4b1d  
    178178   */
    179179
    180   BSP_Configuration.maximum_regions++;
     180  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    181181
    182182  /*
  • c/src/lib/libbsp/m68k/idp/startup/bspstart.c

    r3320e52 re6d4b1d  
    224224   */
    225225 
    226   BSP_Configuration.maximum_regions++;
     226  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    227227 
    228228  /*
  • c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c

    r3320e52 re6d4b1d  
    207207   */
    208208
    209   BSP_Configuration.maximum_regions++;
     209  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    210210
    211211  /*
  • c/src/lib/libbsp/m68k/mvme147/startup/bspstart.c

    r3320e52 re6d4b1d  
    213213   */
    214214
    215   BSP_Configuration.maximum_regions++;
     215  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    216216
    217217  /*
  • c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c

    r3320e52 re6d4b1d  
    221221   */
    222222
    223   BSP_Configuration.maximum_regions++;
     223  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    224224
    225225  /*
  • c/src/lib/libbsp/no_cpu/no_bsp/startup/bspstart.c

    r3320e52 re6d4b1d  
    178178   */
    179179
    180   BSP_Configuration.maximum_regions++;
     180  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    181181
    182182  /*
  • c/src/lib/libbsp/powerpc/papyrus/startup/bspstart.c

    r3320e52 re6d4b1d  
    196196   */
    197197
    198   BSP_Configuration.maximum_regions++;
     198  BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    199199
    200200  /*
  • c/src/lib/libbsp/unix/posix/startup/bspstart.c

    r3320e52 re6d4b1d  
    324324     */
    325325
    326     BSP_Configuration.maximum_regions++;
     326    BSP_Configuration.RTEMS_api_configuration->maximum_regions++;
    327327
    328328#ifdef RTEMS_NEWLIB
  • c/src/lib/libc/libio.c

    r3320e52 re6d4b1d  
    9191     */
    9292
    93     config->maximum_semaphores += 1;            /* one for iop table */
    94     config->maximum_semaphores += max_fds;
     93    /* one for iop table */
     94    config->RTEMS_api_configuration->maximum_semaphores += 1;
     95    config->RTEMS_api_configuration->maximum_semaphores += max_fds;
    9596}
    9697
  • c/src/lib/libmisc/monitor/mon-config.c

    r3320e52 re6d4b1d  
    3030{
    3131    rtems_configuration_table *c = (rtems_configuration_table *) config_void;
     32    rtems_api_configuration_table *r = c->RTEMS_api_configuration;
    3233
    3334    canonical_config->work_space_start = c->work_space_start;
    3435    canonical_config->work_space_size = c->work_space_size;
    35     canonical_config->maximum_tasks = c->maximum_tasks;
    36     canonical_config->maximum_timers = c->maximum_timers;
    37     canonical_config->maximum_semaphores = c->maximum_semaphores;
    38     canonical_config->maximum_message_queues = c->maximum_message_queues;
    39     canonical_config->maximum_partitions = c->maximum_partitions;
    40     canonical_config->maximum_regions = c->maximum_regions;
    41     canonical_config->maximum_ports = c->maximum_ports;
    42     canonical_config->maximum_periods = c->maximum_periods;
     36    canonical_config->maximum_tasks = r->maximum_tasks;
     37    canonical_config->maximum_timers = r->maximum_timers;
     38    canonical_config->maximum_semaphores = r->maximum_semaphores;
     39    canonical_config->maximum_message_queues = r->maximum_message_queues;
     40    canonical_config->maximum_partitions = r->maximum_partitions;
     41    canonical_config->maximum_regions = r->maximum_regions;
     42    canonical_config->maximum_ports = r->maximum_ports;
     43    canonical_config->maximum_periods = r->maximum_periods;
    4344    canonical_config->maximum_extensions = c->maximum_extensions;
    4445    canonical_config->microseconds_per_tick = c->microseconds_per_tick;
    4546    canonical_config->ticks_per_timeslice = c->ticks_per_timeslice;
    46     canonical_config->number_of_initialization_tasks = c->number_of_initialization_tasks;
     47    canonical_config->number_of_initialization_tasks = r->number_of_initialization_tasks;
    4748}   
    4849
  • c/src/lib/libmisc/monitor/mon-itask.c

    r3320e52 re6d4b1d  
    4343    int n = rtems_get_index(*next_id);
    4444
    45     if (n >= c->number_of_initialization_tasks)
     45    if (n >= c->RTEMS_api_configuration->number_of_initialization_tasks)
    4646        goto failed;
    4747   
    4848    _Thread_Disable_dispatch();
    4949
    50     itask = c->User_initialization_tasks_table + n;
     50    itask = c->RTEMS_api_configuration->User_initialization_tasks_table + n;
    5151
    5252    /*
  • c/src/libmisc/monitor/mon-config.c

    r3320e52 re6d4b1d  
    3030{
    3131    rtems_configuration_table *c = (rtems_configuration_table *) config_void;
     32    rtems_api_configuration_table *r = c->RTEMS_api_configuration;
    3233
    3334    canonical_config->work_space_start = c->work_space_start;
    3435    canonical_config->work_space_size = c->work_space_size;
    35     canonical_config->maximum_tasks = c->maximum_tasks;
    36     canonical_config->maximum_timers = c->maximum_timers;
    37     canonical_config->maximum_semaphores = c->maximum_semaphores;
    38     canonical_config->maximum_message_queues = c->maximum_message_queues;
    39     canonical_config->maximum_partitions = c->maximum_partitions;
    40     canonical_config->maximum_regions = c->maximum_regions;
    41     canonical_config->maximum_ports = c->maximum_ports;
    42     canonical_config->maximum_periods = c->maximum_periods;
     36    canonical_config->maximum_tasks = r->maximum_tasks;
     37    canonical_config->maximum_timers = r->maximum_timers;
     38    canonical_config->maximum_semaphores = r->maximum_semaphores;
     39    canonical_config->maximum_message_queues = r->maximum_message_queues;
     40    canonical_config->maximum_partitions = r->maximum_partitions;
     41    canonical_config->maximum_regions = r->maximum_regions;
     42    canonical_config->maximum_ports = r->maximum_ports;
     43    canonical_config->maximum_periods = r->maximum_periods;
    4344    canonical_config->maximum_extensions = c->maximum_extensions;
    4445    canonical_config->microseconds_per_tick = c->microseconds_per_tick;
    4546    canonical_config->ticks_per_timeslice = c->ticks_per_timeslice;
    46     canonical_config->number_of_initialization_tasks = c->number_of_initialization_tasks;
     47    canonical_config->number_of_initialization_tasks = r->number_of_initialization_tasks;
    4748}   
    4849
  • c/src/libmisc/monitor/mon-itask.c

    r3320e52 re6d4b1d  
    4343    int n = rtems_get_index(*next_id);
    4444
    45     if (n >= c->number_of_initialization_tasks)
     45    if (n >= c->RTEMS_api_configuration->number_of_initialization_tasks)
    4646        goto failed;
    4747   
    4848    _Thread_Disable_dispatch();
    4949
    50     itask = c->User_initialization_tasks_table + n;
     50    itask = c->RTEMS_api_configuration->User_initialization_tasks_table + n;
    5151
    5252    /*
  • c/src/tests/support/include/tmacros.h

    r3320e52 re6d4b1d  
    110110
    111111#define task_number( tid ) \
    112   ( rtems_get_index( tid ) - BSP_Configuration.number_of_initialization_tasks )
     112  ( rtems_get_index( tid ) - \
     113     BSP_Configuration.RTEMS_api_configuration->number_of_initialization_tasks )
    113114
    114115static inline rtems_unsigned32 get_ticks_per_second( void )
  • cpukit/libcsupport/src/libio.c

    r3320e52 re6d4b1d  
    9191     */
    9292
    93     config->maximum_semaphores += 1;            /* one for iop table */
    94     config->maximum_semaphores += max_fds;
     93    /* one for iop table */
     94    config->RTEMS_api_configuration->maximum_semaphores += 1;
     95    config->RTEMS_api_configuration->maximum_semaphores += max_fds;
    9596}
    9697
  • cpukit/libmisc/monitor/mon-config.c

    r3320e52 re6d4b1d  
    3030{
    3131    rtems_configuration_table *c = (rtems_configuration_table *) config_void;
     32    rtems_api_configuration_table *r = c->RTEMS_api_configuration;
    3233
    3334    canonical_config->work_space_start = c->work_space_start;
    3435    canonical_config->work_space_size = c->work_space_size;
    35     canonical_config->maximum_tasks = c->maximum_tasks;
    36     canonical_config->maximum_timers = c->maximum_timers;
    37     canonical_config->maximum_semaphores = c->maximum_semaphores;
    38     canonical_config->maximum_message_queues = c->maximum_message_queues;
    39     canonical_config->maximum_partitions = c->maximum_partitions;
    40     canonical_config->maximum_regions = c->maximum_regions;
    41     canonical_config->maximum_ports = c->maximum_ports;
    42     canonical_config->maximum_periods = c->maximum_periods;
     36    canonical_config->maximum_tasks = r->maximum_tasks;
     37    canonical_config->maximum_timers = r->maximum_timers;
     38    canonical_config->maximum_semaphores = r->maximum_semaphores;
     39    canonical_config->maximum_message_queues = r->maximum_message_queues;
     40    canonical_config->maximum_partitions = r->maximum_partitions;
     41    canonical_config->maximum_regions = r->maximum_regions;
     42    canonical_config->maximum_ports = r->maximum_ports;
     43    canonical_config->maximum_periods = r->maximum_periods;
    4344    canonical_config->maximum_extensions = c->maximum_extensions;
    4445    canonical_config->microseconds_per_tick = c->microseconds_per_tick;
    4546    canonical_config->ticks_per_timeslice = c->ticks_per_timeslice;
    46     canonical_config->number_of_initialization_tasks = c->number_of_initialization_tasks;
     47    canonical_config->number_of_initialization_tasks = r->number_of_initialization_tasks;
    4748}   
    4849
  • cpukit/libmisc/monitor/mon-itask.c

    r3320e52 re6d4b1d  
    4343    int n = rtems_get_index(*next_id);
    4444
    45     if (n >= c->number_of_initialization_tasks)
     45    if (n >= c->RTEMS_api_configuration->number_of_initialization_tasks)
    4646        goto failed;
    4747   
    4848    _Thread_Disable_dispatch();
    4949
    50     itask = c->User_initialization_tasks_table + n;
     50    itask = c->RTEMS_api_configuration->User_initialization_tasks_table + n;
    5151
    5252    /*
  • cpukit/rtems/include/rtems/rtems/tasks.h

    r3320e52 re6d4b1d  
    4646#include <rtems/rtems/asr.h>
    4747#include <rtems/rtems/attr.h>
     48#include <rtems/rtems/status.h>
    4849
    4950/*
  • cpukit/sapi/include/confdefs.h

    r3320e52 re6d4b1d  
    2323#endif
    2424 
    25 
    2625extern rtems_initialization_tasks_table Initialization_tasks[];
    2726extern rtems_driver_address_table       Device_drivers[];
     
    342341
    343342#ifdef CONFIGURE_INIT
    344 rtems_configuration_table Configuration = {
    345   CONFIGURE_EXECUTIVE_RAM_WORK_AREA,
    346   CONFIGURE_EXECUTIVE_RAM_SIZE,
     343
     344rtems_api_configuration_table Configuration_RTEMS_API = {
    347345  CONFIGURE_MAXIMUM_TASKS,
    348346  CONFIGURE_MAXIMUM_TIMERS,
     
    353351  CONFIGURE_MAXIMUM_PORTS,
    354352  CONFIGURE_MAXIMUM_PERIODS,
     353  sizeof (Initialization_tasks)/
     354   sizeof(rtems_initialization_tasks_table), /* number of init tasks */
     355  Initialization_tasks                       /* init task(s) table */
     356};
     357
     358rtems_configuration_table Configuration = {
     359  CONFIGURE_EXECUTIVE_RAM_WORK_AREA,
     360  CONFIGURE_EXECUTIVE_RAM_SIZE,
    355361  CONFIGURE_MAXIMUM_USER_EXTENSIONS,
    356362  CONFIGURE_MICROSECONDS_PER_TICK,
    357363  CONFIGURE_TICKS_PER_TIMESLICE,
    358   sizeof (Initialization_tasks)/
    359    sizeof(rtems_initialization_tasks_table), /* number of init tasks */
    360   Initialization_tasks,                      /* init task(s) table */
     364  CONFIGURE_MAXIMUM_DEVICES,
    361365  sizeof (Device_drivers)/
    362366    sizeof(rtems_driver_address_table),      /* number of device drivers */
    363   CONFIGURE_MAXIMUM_DEVICES,
    364367  Device_drivers,                            /* pointer to driver table */
    365368  CONFIGURE_INITIAL_EXTENSIONS,              /* pointer to initial extensions */
    366   CONFIGURE_MULTIPROCESSING_TABLE            /* ptr to MP config table */
     369  CONFIGURE_MULTIPROCESSING_TABLE,           /* pointer to MP config table */
     370  &Configuration_RTEMS_API,                  /* pointer to RTEMS API config */
     371  NULL                                       /* pointer to RTEMS API config */
    367372};
    368373#endif
  • cpukit/sapi/include/rtems/config.h

    r3320e52 re6d4b1d  
    2222#endif
    2323
     24#include <rtems/posix/config.h>
     25#include <rtems/rtems/config.h>
     26
     27/*  XXX <rtems/rtems/config.h> should cover these
    2428#include <rtems/rtems/status.h>
     29#include <rtems/rtems/types.h>
     30#include <rtems/rtems/tasks.h>
     31*/
     32
    2533#include <rtems/extension.h>
    2634#include <rtems/io.h>
    2735#include <rtems/score/mpci.h>
    28 #include <rtems/rtems/types.h>
    29 #include <rtems/rtems/tasks.h>
    3036
    3137/*
     
    5157 *
    5258 *     + location and size of the RTEMS Workspace
    53  *     + required number of each object type
    5459 *     + microseconds per clock tick
    5560 *     + clock ticks per task timeslice
     61 *     + required number of each object type for each API configured
    5662 */
    5763
     
    5965  void                             *work_space_start;
    6066  unsigned32                        work_space_size;
    61   unsigned32                        maximum_tasks;
    62   unsigned32                        maximum_timers;
    63   unsigned32                        maximum_semaphores;
    64   unsigned32                        maximum_message_queues;
    65   unsigned32                        maximum_partitions;
    66   unsigned32                        maximum_regions;
    67   unsigned32                        maximum_ports;
    68   unsigned32                        maximum_periods;
    6967  unsigned32                        maximum_extensions;
    7068  unsigned32                        microseconds_per_tick;
    7169  unsigned32                        ticks_per_timeslice;
    72   unsigned32                        number_of_initialization_tasks;
    73   rtems_initialization_tasks_table *User_initialization_tasks_table;
     70  unsigned32                        maximum_devices;
    7471  unsigned32                        number_of_device_drivers;
    75   unsigned32                        maximum_devices;
    7672  rtems_driver_address_table       *Device_driver_table;
    7773  rtems_extensions_table           *User_extension_table;
    7874  rtems_multiprocessing_table      *User_multiprocessing_table;
     75  rtems_api_configuration_table    *RTEMS_api_configuration;
     76  posix_api_configuration_table    *Posix_api_configuration;
    7977} rtems_configuration_table;
    8078
  • cpukit/sapi/src/rtemsapi.c

    r3320e52 re6d4b1d  
    4646)
    4747{
     48  rtems_api_configuration_table *api_configuration;
     49
     50  api_configuration = configuration_table->RTEMS_api_configuration;
     51
    4852  _Attributes_Handler_initialization();
    4953 
     
    5357 
    5458  _RTEMS_tasks_Manager_initialization(
    55     configuration_table->maximum_tasks,
    56     configuration_table->number_of_initialization_tasks,
    57     configuration_table->User_initialization_tasks_table
     59    api_configuration->maximum_tasks,
     60    api_configuration->number_of_initialization_tasks,
     61    api_configuration->User_initialization_tasks_table
    5862  );
    5963 
    60   _Timer_Manager_initialization( configuration_table->maximum_timers );
     64  _Timer_Manager_initialization( api_configuration->maximum_timers );
    6165 
    6266  _Signal_Manager_initialization();
     
    6569 
    6670  _Message_queue_Manager_initialization(
    67     configuration_table->maximum_message_queues
     71    api_configuration->maximum_message_queues
    6872  );
    6973 
    70   _Semaphore_Manager_initialization(
    71     configuration_table->maximum_semaphores
    72   );
     74  _Semaphore_Manager_initialization( api_configuration->maximum_semaphores );
    7375 
    74   _Partition_Manager_initialization(
    75     configuration_table->maximum_partitions
    76   );
     76  _Partition_Manager_initialization( api_configuration->maximum_partitions );
    7777 
    78   _Region_Manager_initialization( configuration_table->maximum_regions );
     78  _Region_Manager_initialization( api_configuration->maximum_regions );
    7979 
    80   _Dual_ported_memory_Manager_initialization(
    81     configuration_table->maximum_ports
    82   );
     80  _Dual_ported_memory_Manager_initialization( api_configuration->maximum_ports);
    8381 
    84   _Rate_monotonic_Manager_initialization(
    85     configuration_table->maximum_periods
    86   );
     82  _Rate_monotonic_Manager_initialization( api_configuration->maximum_periods );
    8783}
    8884
  • testsuites/support/include/tmacros.h

    r3320e52 re6d4b1d  
    110110
    111111#define task_number( tid ) \
    112   ( rtems_get_index( tid ) - BSP_Configuration.number_of_initialization_tasks )
     112  ( rtems_get_index( tid ) - \
     113     BSP_Configuration.RTEMS_api_configuration->number_of_initialization_tasks )
    113114
    114115static inline rtems_unsigned32 get_ticks_per_second( void )
Note: See TracChangeset for help on using the changeset viewer.