Changeset af12278 in rtems


Ignore:
Timestamp:
Dec 14, 2015, 2:12:39 PM (4 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
master
Children:
b377e3f
Parents:
365456cc
git-author:
Sebastian Huber <sebastian.huber@…> (12/14/15 14:12:39)
git-committer:
Sebastian Huber <sebastian.huber@…> (02/03/16 09:00:53)
Message:

Optional Classic Dual-Ported Memory initialization

Update #2408.

Files:
1 deleted
6 edited

Legend:

Unmodified
Added
Removed
  • cpukit/rtems/Makefile.am

    r365456cc raf12278  
    238238librtems_a_SOURCES += src/dpmemident.c
    239239librtems_a_SOURCES += src/dpmeminternal2external.c
    240 librtems_a_SOURCES += src/dpmemdata.c
    241240
    242241## WORKSPACE_FILES
  • cpukit/rtems/include/rtems/rtems/dpmemimpl.h

    r365456cc raf12278  
    3434
    3535/**
    36  *  This constant is defined to extern most of the time when using
    37  *  this header file.  However by defining it to nothing, the data
    38  *  declared in this header file can be instantiated.  This is done
    39  *  in a single per manager file.
    40  */
    41 #ifndef RTEMS_DPMEM_EXTERN
    42 #define RTEMS_DPMEM_EXTERN extern
    43 #endif
    44 
    45 /**
    4636 *  @brief Define the internal Dual Ported Memory information
    4737 *  The following define the internal Dual Ported Memory information.
    4838 */
    49 RTEMS_DPMEM_EXTERN Objects_Information  _Dual_ported_memory_Information;
    50 
    51 /**
    52  *  @brief Dual Ported Memory Manager Initialization
    53  *
    54  *  This routine performs the initialization necessary for this manager.
    55  */
    56 void _Dual_ported_memory_Manager_initialization(void);
     39extern Objects_Information _Dual_ported_memory_Information;
    5740
    5841/**
  • cpukit/rtems/src/dpmem.c

    r365456cc raf12278  
    2121#include <rtems/system.h>
    2222#include <rtems/config.h>
     23#include <rtems/sysinit.h>
    2324#include <rtems/rtems/status.h>
    2425#include <rtems/rtems/support.h>
    25 #include <rtems/score/address.h>
    2626#include <rtems/rtems/dpmemimpl.h>
    27 #include <rtems/score/thread.h>
    2827
    29 void _Dual_ported_memory_Manager_initialization(void)
     28Objects_Information _Dual_ported_memory_Information;
     29
     30static void _Dual_ported_memory_Manager_initialization(void)
    3031{
    3132  _Objects_Initialize_information(
     
    4647  );
    4748}
     49
     50RTEMS_SYSINIT_ITEM(
     51  _Dual_ported_memory_Manager_initialization,
     52  RTEMS_SYSINIT_CLASSIC_DUAL_PORTED_MEMORY,
     53  RTEMS_SYSINIT_ORDER_MIDDLE
     54);
  • cpukit/sapi/src/rtemsapi.c

    r365456cc raf12278  
    2929#include <rtems/rtems/barrierimpl.h>
    3030#include <rtems/rtems/clock.h>
    31 #include <rtems/rtems/dpmemimpl.h>
    3231#include <rtems/rtems/ratemonimpl.h>
    3332
    3433void _RTEMS_API_Initialize(void)
    3534{
    36   _Dual_ported_memory_Manager_initialization();
    3735  _Rate_monotonic_Manager_initialization();
    3836  _Barrier_Manager_initialization();
  • cpukit/score/include/rtems/sysinit.h

    r365456cc raf12278  
    4040#define RTEMS_SYSINIT_CLASSIC_PARTITION          000346
    4141#define RTEMS_SYSINIT_CLASSIC_REGION             000347
     42#define RTEMS_SYSINIT_CLASSIC_DUAL_PORTED_MEMORY 000348
    4243#define RTEMS_SYSINIT_IDLE_THREADS               000380
    4344#define RTEMS_SYSINIT_BSP_LIBC                   000400
  • testsuites/sptests/spsysinit01/init.c

    r365456cc raf12278  
    2626
    2727#include <rtems/extensionimpl.h>
     28#include <rtems/rtems/dpmemimpl.h>
    2829#include <rtems/rtems/messageimpl.h>
    2930#include <rtems/rtems/partimpl.h>
     
    6667  CLASSIC_REGION_PRE,
    6768  CLASSIC_REGION_POST,
     69  CLASSIC_DUAL_PORTED_MEMORY_PRE,
     70  CLASSIC_DUAL_PORTED_MEMORY_POST,
    6871  IDLE_THREADS_PRE,
    6972  IDLE_THREADS_POST,
     
    265268}
    266269
     270FIRST(RTEMS_SYSINIT_CLASSIC_DUAL_PORTED_MEMORY)
     271{
     272  assert(_Dual_ported_memory_Information.maximum == 0);
     273  next_step(CLASSIC_DUAL_PORTED_MEMORY_PRE);
     274}
     275
     276LAST(RTEMS_SYSINIT_CLASSIC_DUAL_PORTED_MEMORY)
     277{
     278  assert(_Dual_ported_memory_Information.maximum != 0);
     279  next_step(CLASSIC_DUAL_PORTED_MEMORY_POST);
     280}
     281
    267282FIRST(RTEMS_SYSINIT_IDLE_THREADS)
    268283{
     
    354369#define CONFIGURE_MAXIMUM_PARTITIONS 1
    355370
     371#define CONFIGURE_MAXIMUM_PORTS 1
     372
    356373#define CONFIGURE_MAXIMUM_REGIONS 1
    357374
Note: See TracChangeset for help on using the changeset viewer.