source: rtems/c/src/ada-tests/sptests/sp23/sptest.ads @ 6d4e604b

4.104.114.84.95
Last change on this file since 6d4e604b was 6d4e604b, checked in by Joel Sherrill <joel.sherrill@…>, on Jun 2, 1997 at 8:19:03 PM

Initial revision

  • Property mode set to 100644
File size: 5.1 KB
Line 
1--
2--  SPTEST / SPECIFICATION
3--
4--  DESCRIPTION:
5--
6--  This package is the specification for Test 23 of the RTEMS
7--  Single Processor Test Suite.
8--
9--  DEPENDENCIES:
10--
11-- 
12--
13--  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
14--  On-Line Applications Research Corporation (OAR).
15--  All rights assigned to U.S. Government, 1994.
16--
17--  This material may be reproduced by or for the U.S. Government pursuant
18--  to the copyright license under the clause at DFARS 252.227-7013.  This
19--  notice must appear in all copies of this file and its derivatives.
20--
21--  sptest.ads,v 1.3 1995/07/12 19:42:39 joel Exp
22--
23
24with CLOCK_DRIVER;
25with RTEMS;
26with SYSTEM;
27with System.Storage_Elements;
28
29package SPTEST is
30
31--
32--  These arrays contain the IDs and NAMEs of all RTEMS tasks created
33--  by this test.
34--
35
36   TASK_ID   : array ( RTEMS.UNSIGNED32 range 1 .. 1 ) of RTEMS.ID;
37   TASK_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 1 ) of RTEMS.NAME;
38
39--
40--  These arrays contain the IDs and NAMEs of all RTEMS ports created
41--  by this test.
42--
43
44   PORT_ID   : array ( RTEMS.UNSIGNED32 range 1 .. 1 ) of RTEMS.ID;
45   PORT_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 1 ) of RTEMS.NAME;
46
47--
48--  The following area defines a memory area to be used as the
49--  internal address space of the port.
50--
51
52   INTERNAL_PORT_AREA_ADDRESS : constant System.Address :=
53       System.Storage_Elements.To_Address(16#00001000#);
54
55   INTERNAL_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 )
56      of RTEMS.UNSIGNED8;
57   for INTERNAL_PORT_AREA use at INTERNAL_PORT_AREA_ADDRESS;
58
59--
60--  The following area defines a memory area to be used as the
61--  external address space of the port.
62--
63
64   EXTERNAL_PORT_AREA_ADDRESS : constant System.Address :=
65       System.Storage_Elements.To_Address(16#00002000#);
66
67   EXTERNAL_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 )
68      of RTEMS.UNSIGNED8;
69   for EXTERNAL_PORT_AREA use at EXTERNAL_PORT_AREA_ADDRESS;
70
71--
72--  The following area defines a memory area to be used for
73--  addresses which are below the address space of the port.
74--
75
76   BELOW_PORT_AREA_ADDRESS : constant System.Address :=
77       System.Storage_Elements.To_Address(16#00000500#);
78
79   BELOW_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 )
80      of RTEMS.UNSIGNED8;
81   for BELOW_PORT_AREA use at BELOW_PORT_AREA_ADDRESS;
82
83--
84--  The following area defines a memory area to be used for
85--  addresses which are above the address space of the port.
86--
87
88   ABOVE_PORT_AREA_ADDRESS : constant System.Address :=
89       System.Storage_Elements.To_Address(16#00003000#);
90
91   ABOVE_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 )
92      of RTEMS.UNSIGNED8;
93   for ABOVE_PORT_AREA use at ABOVE_PORT_AREA_ADDRESS;
94
95--
96--  INIT
97--
98--  DESCRIPTION:
99--
100--  This RTEMS task initializes the application.
101--
102
103   procedure INIT (
104      ARGUMENT : in     RTEMS.TASK_ARGUMENT
105   );
106
107--
108--  TASK_1
109--
110--  DESCRIPTION:
111--
112--  This RTEMS task tests the Dual Ported Memory Manager.
113--
114
115   procedure TASK_1 (
116      ARGUMENT : in     RTEMS.TASK_ARGUMENT
117   );
118
119--
120--  This is the Driver Address Table for this test.
121--
122
123   DEVICE_DRIVERS : aliased RTEMS.DRIVER_ADDRESS_TABLE( 1 .. 1 ) :=
124   (1=>
125      (
126        CLOCK_DRIVER.INITIALIZE'ACCESS,              -- Initialization
127        RTEMS.NO_DRIVER_ENTRY,                       -- Open
128        RTEMS.NO_DRIVER_ENTRY,                       -- Close
129        RTEMS.NO_DRIVER_ENTRY,                       -- Read
130        RTEMS.NO_DRIVER_ENTRY,                       -- Write
131        RTEMS.NO_DRIVER_ENTRY                        -- Control
132      )
133   );
134
135--
136--  This is the Initialization Tasks Table for this test.
137--
138
139   INITIALIZATION_TASKS : aliased RTEMS.INITIALIZATION_TASKS_TABLE( 1 .. 1 ) := 
140   (1=>
141     (
142       RTEMS.BUILD_NAME( 'U', 'I', '1', ' ' ),        -- task name
143       2048,                                          -- stack size
144       1,                                             -- priority
145       RTEMS.DEFAULT_ATTRIBUTES,                      -- attributes
146       SPTEST.INIT'ACCESS,                            -- entry point
147       RTEMS.NO_PREEMPT,                              -- initial mode
148       0                                              -- argument list
149     )
150   );
151
152--
153--  This is the Configuration Table for this test.
154--
155
156   CONFIGURATION : aliased RTEMS.CONFIGURATION_TABLE := (
157      RTEMS.NULL_ADDRESS,        -- will be replaced by BSP
158      64 * 1024,                 -- executive RAM size
159      10,                        -- maximum # tasks
160      0,                         -- maximum # timers
161      2,                         -- maximum # semaphores
162      0,                         -- maximum # message queues
163      0,                         -- maximum # messages
164      0,                         -- maximum # partitions
165      0,                         -- maximum # regions
166      1,                         -- maximum # dp memory areas
167      0,                         -- maximum # periods
168      0,                         -- maximum # user extensions
169      RTEMS.MILLISECONDS_TO_MICROSECONDS(10), -- # us in a tick
170      50                         -- # ticks in a timeslice
171  );
172
173end SPTEST;
Note: See TracBrowser for help on using the repository browser.