source: rtems/c/src/ada-tests/mptests/mp11/mptest.ads @ d0f426a1

4.104.114.84.95
Last change on this file since d0f426a1 was d0f426a1, checked in by Joel Sherrill <joel.sherrill@…>, on Jun 3, 1997 at 12:34:04 AM

* empty log message *

  • Property mode set to 100644
File size: 5.6 KB
Line 
1--
2--  MPTEST / SPECIFICATION
3--
4--  DESCRIPTION:
5--
6--  This package is the specification for Test 11 of the RTEMS
7--  Multiprocessor Test Suite.
8--
9--  DEPENDENCIES:
10--
11-- 
12--
13--  COPYRIGHT (c) 1989-1997.
14--  On-Line Applications Research Corporation (OAR).
15--  Copyright assigned to U.S. Government, 1994.
16--
17--  The license and distribution terms for this file may in
18--  the file LICENSE in this distribution or at
19--  http://www.OARcorp.com/rtems/license.html.
20--
21--  $Id$
22--
23
24with BSP_MPCI;
25with RTEMS;
26
27package MPTEST is
28
29--
30--  These arrays contain the IDs and NAMEs of all RTEMS tasks created
31--  by this test.
32--
33
34   TASK_ID   : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.ID;
35   TASK_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.NAME;
36
37--
38--  These arrays contain the IDs and NAMEs of all RTEMS message
39--  queues created by this test.
40--
41
42   QUEUE_ID   : array ( RTEMS.UNSIGNED32 range 1 .. 2 ) of RTEMS.ID;
43   QUEUE_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 2 ) of RTEMS.NAME;
44
45--
46--  These arrays contain the IDs and NAMEs of all RTEMS semaphore
47--  created by this test.
48--
49
50   SEMAPHORE_ID   : array ( RTEMS.UNSIGNED32 range 1 .. 2 ) of RTEMS.ID;
51   SEMAPHORE_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 2 ) of RTEMS.NAME;
52
53--
54--  These arrays contain the IDs and NAMEs of all RTEMS partition
55--  created by this test.
56--
57
58   PARTITION_ID   : array ( RTEMS.UNSIGNED32 range 1 .. 2 ) of RTEMS.ID;
59   PARTITION_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 2 ) of RTEMS.NAME;
60
61--
62--  This is the area used for the partition.
63--
64
65   PARTITION_AREA : 
66      array ( RTEMS.UNSIGNED32 range 0 .. 1023 ) of RTEMS.UNSIGNED8;
67   for PARTITION_AREA'ALIGNMENT use RTEMS.STRUCTURE_ALIGNMENT;
68
69--
70--  INIT
71--
72--  DESCRIPTION:
73--
74--  This RTEMS task initializes the application.
75--
76
77   procedure INIT (
78      ARGUMENT : in     RTEMS.TASK_ARGUMENT
79   );
80
81--
82--  This is the Driver Address Table for this test.
83--
84
85   DEVICE_DRIVERS : aliased RTEMS.DRIVER_ADDRESS_TABLE( 1 .. 1 ) :=
86   (1=>
87      (
88        CLOCK_DRIVER.INITIALIZE'ACCESS,              -- Initialization
89        RTEMS.NO_DRIVER_ENTRY,                       -- Open
90        RTEMS.NO_DRIVER_ENTRY,                       -- Close
91        RTEMS.NO_DRIVER_ENTRY,                       -- Read
92        RTEMS.NO_DRIVER_ENTRY,                       -- Write
93        RTEMS.NO_DRIVER_ENTRY                        -- Control
94      )
95   );
96
97--
98--  This is the Initialization Tasks Table for this test.
99--
100
101   INITIALIZATION_TASKS : aliased RTEMS.INITIALIZATION_TASKS_TABLE( 1 .. 1 ) := 
102   (1=>
103     (
104       RTEMS.BUILD_NAME( 'U', 'I', '1', ' ' ),        -- task name
105       2048,                                          -- stack size
106       1,                                             -- priority
107       RTEMS.DEFAULT_ATTRIBUTES,                      -- attributes
108       MPTEST.INIT'ACCESS,                            -- entry point
109       RTEMS.NO_PREEMPT,                              -- initial mode
110       0                                              -- argument list
111     )
112   );
113
114----------------------------------------------------------------------------
115----------------------------------------------------------------------------
116--                             BEGIN SUBPACKAGE                           --
117----------------------------------------------------------------------------
118----------------------------------------------------------------------------
119
120   --
121   --  MPTEST.PER_NODE_CONFIGURATION / SPECIFICATION
122   --
123   --  DESCRIPTION:
124   --
125   --  This package is the specification for the subpackage
126   --  which will define the per node configuration parameters.
127   --
128   
129   package PER_NODE_CONFIGURATION is
130
131   --
132   --  LOCAL_NODE_NUMBER
133   --
134   --  DESCRIPTION:
135   --
136   --  This function returns the node number for this node.
137   --
138
139      function LOCAL_NODE_NUMBER 
140      return RTEMS.UNSIGNED32;
141 
142      pragma INLINE ( LOCAL_NODE_NUMBER );
143
144   end PER_NODE_CONFIGURATION;
145 
146----------------------------------------------------------------------------
147----------------------------------------------------------------------------
148--                              END SUBPACKAGE                            --
149----------------------------------------------------------------------------
150----------------------------------------------------------------------------
151
152--
153--  This is the Multiprocessor Configuration Table for this test.
154--
155
156   MULTIPROCESSING_CONFIGURATION : aliased RTEMS.MULTIPROCESSING_TABLE := (
157      MPTEST.PER_NODE_CONFIGURATION.LOCAL_NODE_NUMBER,
158      2,                         -- maximum # nodes in system
159      0,                         -- maximum # global objects
160      0                          -- maximum # proxies
161    );
162
163--
164--  This is the Configuration Table for this test.
165--
166
167   CONFIGURATION : aliased RTEMS.CONFIGURATION_TABLE := (
168      RTEMS.NULL_ADDRESS,        -- will be replaced by BSP
169      64 * 1024,                 -- executive RAM size
170      10,                        -- maximum # tasks
171      0,                         -- maximum # timers
172      1,                         -- maximum # semaphores
173      1,                         -- maximum # message queues
174      0,                         -- maximum # messages
175      1,                         -- maximum # partitions
176      0,                         -- maximum # regions
177      0,                         -- maximum # dp memory areas
178      0,                         -- maximum # periods
179      0,                         -- maximum # user extensions
180      RTEMS.MILLISECONDS_TO_MICROSECONDS(10), -- # us in a tick
181      50                         -- # ticks in a timeslice
182  );
183
184end MPTEST;
Note: See TracBrowser for help on using the repository browser.