Changeset 50269c46 in rtems


Ignore:
Timestamp:
Feb 10, 2005, 9:46:23 PM (16 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
16ae480
Parents:
3d852ab
Message:

2005-02-10 Joel Sherrill <joel@…>

PR 753/rtems

  • score/include/rtems/score/object.h, score/src/objectinitializeinformation.c: Configured number of objects needs to be of a type with more bits than Objects_Maximum to support configuring unlimited objects. The type for configuring the maximum number of objects should probably always be the same fundamental type as Object Id. For 16-bit Id configurations, the constant OBJECTS_UNLIMITED_OBJECTS was changed to 0x8000 to move in this direction.
Location:
cpukit
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • cpukit/ChangeLog

    r3d852ab r50269c46  
     12005-02-10      Joel Sherrill <joel@OARcorp.com>
     2
     3        PR 753/rtems
     4        * score/include/rtems/score/object.h,
     5        score/src/objectinitializeinformation.c: Configured number of objects
     6        needs to be of a type with more bits than Objects_Maximum to support
     7        configuring unlimited objects. The type for configuring the maximum
     8        number of objects should probably always be the same fundamental type
     9        as Object Id. For 16-bit Id configurations, the constant
     10        OBJECTS_UNLIMITED_OBJECTS was changed to 0x8000 to move in this
     11        direction.
     12
    1132005-02-09      Ralf Corsepius <ralf.corsepius@rtems.org>
    214
  • cpukit/score/include/rtems/score/object.h

    r3d852ab r50269c46  
    3030
    3131/*
    32  *  Mask to enable unlimited objects.  This is used in the configuration
    33  *  table when specifying the number of configured objects.
    34  */
    35 
    36 #define OBJECTS_UNLIMITED_OBJECTS 0x80000000
    37 
    38 /*
    3932 *  The following type defines the control block used to manage
    4033 *  object names.
     
    4942 */
    5043
    51 #define OBJECTS_NAME_ALIGNMENT     sizeof( uint32_t   )
     44#define OBJECTS_NAME_ALIGNMENT     sizeof( uint32_t )
    5245
    5346/*
     
    7871#define OBJECTS_CLASS_START_BIT 11
    7972
    80 #define OBJECTS_INDEX_MASK      (Objects_Id)0x000000ff
    81 #define OBJECTS_API_MASK        (Objects_Id)0x00000700
    82 #define OBJECTS_CLASS_MASK      (Objects_Id)0x0000F800
     73#define OBJECTS_INDEX_MASK      (Objects_Id)0x00ff
     74#define OBJECTS_API_MASK        (Objects_Id)0x0700
     75#define OBJECTS_CLASS_MASK      (Objects_Id)0xF800
     76
     77#define OBJECTS_INDEX_VALID_BITS  (Objects_Id)0x00ff
     78#define OBJECTS_API_VALID_BITS    (Objects_Id)0x0007
     79/* OBJECTS_NODE_VALID_BITS should not be used with 16 bit Ids */
     80#define OBJECTS_CLASS_VALID_BITS  (Objects_Id)0x001f
     81
     82#define OBJECTS_UNLIMITED_OBJECTS 0x8000
    8383
    8484#else
     
    110110#define OBJECTS_API_VALID_BITS    (Objects_Id)0x00000007
    111111#define OBJECTS_CLASS_VALID_BITS  (Objects_Id)0x0000001f
     112
     113/*
     114 *  Mask to enable unlimited objects.  This is used in the configuration
     115 *  table when specifying the number of configured objects.
     116 */
     117#define OBJECTS_UNLIMITED_OBJECTS 0x80000000
     118
    112119#endif
    113120
     
    345352  Objects_APIs         the_api,
    346353  uint32_t             the_class,
    347   Objects_Maximum      maximum,
     354  uint32_t             maximum,
    348355  uint16_t             size,
    349356  boolean              is_string,
  • cpukit/score/src/objectinitializeinformation.c

    r3d852ab r50269c46  
    5252  Objects_APIs         the_api,
    5353  uint32_t             the_class,
    54   Objects_Maximum      maximum,
     54  uint32_t             maximum,
    5555  uint16_t             size,
    5656  boolean              is_string,
Note: See TracChangeset for help on using the changeset viewer.