annotate packages/hal/arm/cl7211/current/tests/dram_test.c @ 50:a0774359f013 ecos-sw-1999-11-02

Merge from eCos master repository on 1999-11-02-17:02:15-GMT
author jlarmour
date Tue, 02 Nov 1999 20:57:07 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
50
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
1 //==========================================================================
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
2 //
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
3 // dram_test.c
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
4 //
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
5 // Cirrus EB72xx eval board DRAM test code
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
6 //
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
7 //==========================================================================
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
8 //####COPYRIGHTBEGIN####
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
9 //
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
10 // -------------------------------------------
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
11 // The contents of this file are subject to the Cygnus eCos Public License
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
12 // Version 1.0 (the "License"); you may not use this file except in
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
13 // compliance with the License. You may obtain a copy of the License at
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
14 // http://sourceware.cygnus.com/ecos
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
15 //
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
16 // Software distributed under the License is distributed on an "AS IS"
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
17 // basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
18 // License for the specific language governing rights and limitations under
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
19 // the License.
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
20 //
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
21 // The Original Code is eCos - Embedded Cygnus Operating System, released
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
22 // September 30, 1998.
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
23 //
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
24 // The Initial Developer of the Original Code is Cygnus. Portions created
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
25 // by Cygnus are Copyright (C) 1998,1999 Cygnus Solutions. All Rights Reserved.
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
26 // -------------------------------------------
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
27 //
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
28 //####COPYRIGHTEND####
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
29 //==========================================================================
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
30 //#####DESCRIPTIONBEGIN####
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
31 //
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
32 // Author(s): gthomas
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
33 // Contributors: gthomas
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
34 // Date: 1999-10-22
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
35 // Description: Tool used to test DRAM on eval boards
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
36 //####DESCRIPTIONEND####
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
37
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
38 #include <pkgconf/kernel.h> // Configuration header
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
39 #include <cyg/kernel/kapi.h>
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
40 #include <cyg/infra/diag.h>
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
41
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
42 #include <cyg/hal/hal_cl7211.h> // Board definitions
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
43
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
44 #ifndef FALSE
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
45 #define FALSE 0
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
46 #define TRUE 1
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
47 #endif
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
48
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
49 #define STACK_SIZE 4096
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
50 static char stack[STACK_SIZE];
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
51 static cyg_thread thread_data;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
52 static cyg_handle_t thread_handle;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
53
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
54 extern char _end;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
55 int total_errors;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
56 int run_errors;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
57 int error_count;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
58 #define MAX_ERRORS 5
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
59 #define NUM_RUNS 25
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
60 #define REFRESH_TIME 5
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
61
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
62 int decay_time[] = { 50, 100, 200, 500, 1000 };
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
63 #define NUM_DECAY sizeof(decay_time)/sizeof(decay_time[0])
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
64
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
65 // FUNCTIONS
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
66
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
67 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
68 cyg_test_exit(void)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
69 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
70 while (TRUE) ;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
71 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
72
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
73 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
74 new_test(void)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
75 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
76 error_count = 0;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
77 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
78
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
79 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
80 report_error(void *addr, cyg_uint32 actual, cyg_uint32 expected)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
81 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
82 total_errors++;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
83 run_errors++;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
84 if (++error_count > MAX_ERRORS) return;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
85 diag_printf(" 0x%08x: expected - 0x%08x, actual - 0x%08x\n",
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
86 addr, expected, actual);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
87 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
88
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
89 // Fill longwords with their own address and verify
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
90
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
91 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
92 addr_test(cyg_uint32 start, cyg_uint32 end)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
93 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
94 cyg_uint32 *mp;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
95
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
96 new_test();
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
97 diag_printf("-- Address test\n");
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
98 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
99 *mp = (cyg_uint32)mp;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
100 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
101 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
102 if (*mp != (cyg_uint32)mp) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
103 report_error(mp, *mp, (cyg_uint32)mp);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
104 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
105 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
106 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
107
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
108 // Fill longwords with zeros
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
109
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
110 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
111 zeros_test(cyg_uint32 start, cyg_uint32 end)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
112 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
113 cyg_uint32 *mp;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
114
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
115 new_test();
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
116 diag_printf("-- Zeros test\n");
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
117 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
118 *mp = (cyg_uint32)0;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
119 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
120 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
121 if (*mp != (cyg_uint32)0) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
122 report_error(mp, *mp, (cyg_uint32)0);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
123 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
124 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
125 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
126
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
127 // Fill longwords with all ones
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
128
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
129 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
130 ones_test(cyg_uint32 start, cyg_uint32 end)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
131 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
132 cyg_uint32 *mp;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
133
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
134 new_test();
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
135 diag_printf("-- Ones test\n");
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
136 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
137 *mp = (cyg_uint32)0xFFFFFFFF;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
138 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
139 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
140 if (*mp != (cyg_uint32)0xFFFFFFFF) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
141 report_error(mp, *mp, (cyg_uint32)0xFFFFFFFF);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
142 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
143 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
144 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
145
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
146 // Fill longwords with a "walking" bit
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
147
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
148 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
149 walking_bit_test(cyg_uint32 start, cyg_uint32 end)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
150 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
151 cyg_uint32 *mp;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
152 cyg_uint32 bit;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
153
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
154 new_test();
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
155 diag_printf("-- Walking test\n");
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
156 bit = 1;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
157 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
158 *mp = (cyg_uint32)bit;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
159 bit <<= 1;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
160 if (bit == 0) bit = 1;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
161 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
162 bit = 1;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
163 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
164 if (*mp != (cyg_uint32)bit) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
165 report_error(mp, *mp, (cyg_uint32)bit);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
166 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
167 bit <<= 1;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
168 if (bit == 0) bit = 1;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
169 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
170 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
171
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
172 // Fill longwords with an alternating pattern
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
173
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
174 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
175 pattern_test(cyg_uint32 start, cyg_uint32 end)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
176 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
177 cyg_uint32 *mp;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
178 cyg_uint32 pat;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
179
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
180 new_test();
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
181 diag_printf("-- Pattern test\n");
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
182 pat = 0x55555555;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
183 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
184 *mp = (cyg_uint32)pat;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
185 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
186 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
187 if (*mp != (cyg_uint32)pat) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
188 report_error(mp, *mp, (cyg_uint32)pat);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
189 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
190 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
191 pat = 0xAAAAAAAA;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
192 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
193 *mp = (cyg_uint32)pat;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
194 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
195 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
196 if (*mp != (cyg_uint32)pat) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
197 report_error(mp, *mp, (cyg_uint32)pat);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
198 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
199 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
200 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
201
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
202 // Verify if refresh works
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
203
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
204 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
205 refresh_test(cyg_uint32 start, cyg_uint32 end)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
206 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
207 cyg_uint32 *mp;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
208 cyg_uint32 pat;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
209
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
210 new_test();
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
211 diag_printf("-- Refresh test\n");
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
212 pat = 0x55555555;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
213 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
214 *mp = (cyg_uint32)pat;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
215 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
216 cyg_thread_delay(REFRESH_TIME*100);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
217 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
218 if (*mp != (cyg_uint32)pat) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
219 report_error(mp, *mp, (cyg_uint32)pat);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
220 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
221 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
222 pat = 0xAAAAAAAA;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
223 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
224 *mp = (cyg_uint32)pat;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
225 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
226 cyg_thread_delay(REFRESH_TIME*100);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
227 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
228 if (*mp != (cyg_uint32)pat) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
229 report_error(mp, *mp, (cyg_uint32)pat);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
230 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
231 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
232 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
233
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
234 // See how long we can "sleep" before refresh fails
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
235
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
236 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
237 decay_test(cyg_uint32 start, cyg_uint32 end)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
238 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
239 cyg_uint32 *mp;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
240 cyg_uint32 pat;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
241 int i;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
242
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
243 diag_printf("-- Decay test\n");
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
244 for (i = 0; i < NUM_DECAY; i++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
245 diag_printf(" ... %d.%02d sec delay\n", decay_time[i]/100, decay_time[i]%100);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
246 new_test();
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
247 pat = 0x55555555;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
248 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
249 *mp = (cyg_uint32)pat;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
250 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
251 cyg_thread_delay(decay_time[i]);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
252 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
253 if (*mp != (cyg_uint32)pat) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
254 report_error(mp, *mp, (cyg_uint32)pat);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
255 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
256 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
257 pat = 0xAAAAAAAA;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
258 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
259 *mp = (cyg_uint32)pat;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
260 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
261 cyg_thread_delay(decay_time[i]);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
262 for (mp = (cyg_uint32 *)start; mp < (cyg_uint32 *)end; mp++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
263 if (*mp != (cyg_uint32)pat) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
264 report_error(mp, *mp, (cyg_uint32)pat);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
265 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
266 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
267 diag_printf(" ... %d errors\n", error_count);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
268 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
269 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
270
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
271
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
272 static void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
273 dram_exercise(cyg_addrword_t p)
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
274 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
275 cyg_uint32 start_DRAM, end_DRAM;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
276 int i;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
277
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
278 end_DRAM = 0x01000000;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
279 end_DRAM = 0x00F80000;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
280 start_DRAM = ((cyg_uint32)&_end + 0x0000FFFF) & 0xFFFF0000;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
281 diag_printf("DRAM test - start: 0x%08x, end: 0x%08x\n", start_DRAM, end_DRAM);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
282
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
283 for (i = 0; i < NUM_RUNS; i++) {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
284 diag_printf("\n*** Start run #%d of %d\n", i+1, NUM_RUNS);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
285 run_errors = 0;
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
286 addr_test(start_DRAM, end_DRAM);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
287 ones_test(start_DRAM, end_DRAM);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
288 zeros_test(start_DRAM, end_DRAM);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
289 walking_bit_test(start_DRAM, end_DRAM);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
290 pattern_test(start_DRAM, end_DRAM);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
291 refresh_test(start_DRAM, end_DRAM);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
292 decay_test(start_DRAM, end_DRAM);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
293 diag_printf("\n*** End run, %d errors, %d total errors\n", run_errors, total_errors);
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
294 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
295
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
296 diag_printf("All done!\n");
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
297 cyg_test_exit();
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
298 }
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
299
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
300 externC void
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
301 cyg_start( void )
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
302 {
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
303 // Create a main thread, so we can run the scheduler and have time 'pass'
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
304 cyg_thread_create(10, // Priority - just a number
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
305 dram_exercise, // entry
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
306 0, // entry parameter
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
307 "DRAM test", // Name
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
308 &stack[0], // Stack
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
309 STACK_SIZE, // Size
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
310 &thread_handle, // Handle
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
311 &thread_data // Thread data structure
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
312 );
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
313 cyg_thread_resume(thread_handle); // Start it
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
314 cyg_scheduler_start();
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
315 } // cyg_package_start()
a0774359f013 Merge from eCos master repository on 1999-11-02-17:02:15-GMT
jlarmour
parents:
diff changeset
316