1 |
27 |
unneback |
2003-02-24 Jonathan Larmour
|
2 |
|
|
|
3 |
|
|
* cdl/uitron.cdl: Update doc link.
|
4 |
|
|
|
5 |
|
|
2002-05-27 Jesper Skov
|
6 |
|
|
|
7 |
|
|
* cdl/uitron.cdl: Don't build C tests when C++ options selected.
|
8 |
|
|
|
9 |
|
|
2002-05-22 Nick Garnett
|
10 |
|
|
|
11 |
|
|
* doc/uitron.sgml: Fixed dangling xref.
|
12 |
|
|
|
13 |
|
|
2002-02-19 Mark Salter
|
14 |
|
|
|
15 |
|
|
* doc/uitron.sgml: Fixed typos and such.
|
16 |
|
|
|
17 |
|
|
2002-02-14 Hugo Tyson
|
18 |
|
|
|
19 |
|
|
* doc/uitron.sgml: General polishing... Tidied up broken emPHAsis
|
20 |
|
|
on closing parentheses of function lists. Reduced line length of
|
21 |
|
|
same to fit real paper, I hope. Added LITERAL tags all over
|
22 |
|
|
config option mentions.
|
23 |
|
|
|
24 |
|
|
New stuff... Added a whole new section "[u]ITRON Configuration
|
25 |
|
|
FAQ" based on some email answers I have given in the past in
|
26 |
|
|
support of customers.
|
27 |
|
|
|
28 |
|
|
2002-02-13 Hugo Tyson
|
29 |
|
|
|
30 |
|
|
* doc/uitron.sgml: NEW FILE: Make id tags qualified with
|
31 |
|
|
compat-uitron- and add a couple of tags; tidy up formatting of
|
32 |
|
|
some function listings; correct comment on using functions in your
|
33 |
|
|
own DSRs and ISRs.
|
34 |
|
|
|
35 |
|
|
2002-01-24 Jesper Skov
|
36 |
|
|
|
37 |
|
|
* include/uit_func.inl (ena_int, dis_int): Wrap
|
38 |
|
|
HAL_MASK_INTERRUPT/HAL_UNMASK_INTERRUPT in interrupt
|
39 |
|
|
disable/restore pairs.
|
40 |
|
|
* tests/testintr.cxx (detach_isr, attach_isr): Change order of
|
41 |
|
|
mask/unmask and disable/restore.
|
42 |
|
|
|
43 |
|
|
2001-04-30 Jonathan Larmour
|
44 |
|
|
|
45 |
|
|
* src/uit_objs.cxx: Workaround xscale tools preprocessor bug
|
46 |
|
|
by avoiding determining the stack size with the preprocessor.
|
47 |
|
|
* cdl/tasks.cdl (CYGDAT_UITRON_TASK_EXTERNS and
|
48 |
|
|
CYGDAT_UITRON_TASK_INITIALISERS): Ditto
|
49 |
|
|
|
50 |
|
|
2001-04-21 Bart Veer
|
51 |
|
|
|
52 |
|
|
* tests/testintr.cxx (task1):
|
53 |
|
|
Disable one of the tests on the synthetic target, it requires
|
54 |
|
|
consistent cpu timing that cannot be guaranteed.
|
55 |
|
|
|
56 |
|
|
2000-11-01 Jesper Skov
|
57 |
|
|
|
58 |
|
|
* include/uit_func.inl: CYG_SCHED_UNIQUE_PRIORITIES changed to
|
59 |
|
|
CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES
|
60 |
|
|
|
61 |
|
|
2000-09-13 Jonathan Larmour
|
62 |
|
|
|
63 |
|
|
* include/uit_objs.hxx (CYG_UITRON_OBJS_INIT_PRIORITY): Define
|
64 |
|
|
with correct priority now.
|
65 |
|
|
|
66 |
|
|
2000-08-03 Jonathan Larmour
|
67 |
|
|
|
68 |
|
|
* include/uit_func.inl (ref_mpf): Compute used blocks from
|
69 |
|
|
bytes used / blocks size rather than now obsolete blockcount member
|
70 |
|
|
|
71 |
|
|
2000-07-04 Jonathan Larmour
|
72 |
|
|
|
73 |
|
|
* include/uit_func.inl: Update all memory pool related functions to
|
74 |
|
|
reflect the new interface to memory pools, and that they come from
|
75 |
|
|
the new CYGPKG_MEMALLOC package
|
76 |
|
|
|
77 |
|
|
* cdl/uitron.cdl: CYGPKG_UITRON_MEMPOOLFIXED and
|
78 |
|
|
CYGPKG_UITRON_MEMPOOLVAR require the CYGPKG_MEMALLOC package
|
79 |
|
|
|
80 |
|
|
* include/uit_objs.hxx: Update includes - memory pool implementations
|
81 |
|
|
are now in CYGPKG_MEMALLOC
|
82 |
|
|
|
83 |
|
|
2000-06-15 Gary Thomas
|
84 |
|
|
|
85 |
|
|
* include/uit_ifnc.h (CYGPRI_UITRON_SET_RETCODE): Always return
|
86 |
|
|
'HANDLED'. This fixes some confusion when interrupt chaining.
|
87 |
|
|
|
88 |
|
|
2000-05-15 Hugo Tyson
|
89 |
|
|
|
90 |
|
|
* include/uit_ifnc.h (cyg_uitron_dsr): make this be extern "C"
|
91 |
|
|
always; it went wrong when uitron funcs are inline or C++.
|
92 |
|
|
|
93 |
|
|
* src/uit_ifnc.cxx (CYGIMP_UITRON_INLINE_FUNCS): When [re]defining
|
94 |
|
|
this, match what CDL defined. Warnings--;
|
95 |
|
|
|
96 |
|
|
2000-05-08 Jesper Skov
|
97 |
|
|
|
98 |
|
|
* tests/testintr.cxx (attach_isr, detach_isr): Don't check for
|
99 |
|
|
clean vector after a detach when chaining is enabled.
|
100 |
|
|
|
101 |
|
|
2000-03-28 Jesper Skov
|
102 |
|
|
|
103 |
|
|
* tests/testintr.cxx: Synchronize with clock before making timer
|
104 |
|
|
measurement.
|
105 |
|
|
|
106 |
|
|
2000-03-28 John Dallaway
|
107 |
|
|
|
108 |
|
|
* cdl/uitron.cdl:
|
109 |
|
|
|
110 |
|
|
Adjust documentation URLs.
|
111 |
|
|
|
112 |
|
|
2000-03-22 Jesper Skov
|
113 |
|
|
|
114 |
|
|
* include/uit_ifnc.h (ret_int): Fix compiler warning.
|
115 |
|
|
|
116 |
|
|
2000-03-13 Jesper Skov
|
117 |
|
|
|
118 |
|
|
* tests/testintr.cxx: Don't try to disable clock on PowerPC.
|
119 |
|
|
|
120 |
|
|
2000-03-03 Hugo Tyson
|
121 |
|
|
|
122 |
|
|
* tests/testintr.cxx (task1): Only test ena_int() and dis_int()
|
123 |
|
|
for E_PAR if CYGSEM_UITRON_BAD_PARAMS_RETURN_ERRORS.
|
124 |
|
|
|
125 |
|
|
2000-02-28 Hugo Tyson
|
126 |
|
|
|
127 |
|
|
* include/uit_func.h: add ena_int() and dis_int().
|
128 |
|
|
|
129 |
|
|
* include/uit_func.inl (dis_int): New function added.
|
130 |
|
|
(ena_int): New function added.
|
131 |
|
|
|
132 |
|
|
* tests/testintr.cxx (task1): Add a test of ena_int() and
|
133 |
|
|
dis_int(); easiest done here because we have an interrupt number -
|
134 |
|
|
for the clock - in our hands here already for the rest of the
|
135 |
|
|
test.
|
136 |
|
|
|
137 |
|
|
2000-02-02 Jesper Skov
|
138 |
|
|
|
139 |
|
|
* tests/testintr.cxx: Don't output DELAYLOCKSCHED quite so often
|
140 |
|
|
on synthetic target.
|
141 |
|
|
|
142 |
|
|
2000-01-31 Hugo Tyson
|
143 |
|
|
|
144 |
|
|
* tests/testintr.cxx (CHECK_TID): Test that get_tid() returns 0 in
|
145 |
|
|
ISR context ie. non-task portion.
|
146 |
|
|
|
147 |
|
|
* include/uit_func.inl (get_tid): Check the sched lock for
|
148 |
|
|
non-task portions, ie. ISR/DSR will have the scheduler locked.
|
149 |
|
|
|
150 |
|
|
2000-01-31 Simon FitzMaurice
|
151 |
|
|
* compat/uitron/current/cdl/uitron.cdl
|
152 |
|
|
|
153 |
|
|
Adjust help URLs in line with new doc layout.
|
154 |
|
|
|
155 |
|
|
2000-01-28 Simon FitzMaurice
|
156 |
|
|
* compat/uitron/current/cdl/uitron.cdl
|
157 |
|
|
|
158 |
|
|
Adjust help URLs in line with new doc layout.
|
159 |
|
|
|
160 |
|
|
2000-01-28 Jonathan Larmour
|
161 |
|
|
|
162 |
|
|
* tests/testintr.cxx (DELAYLOCKSCHED): When in long testing loops,
|
163 |
|
|
occasionally output a message to show the test is still alive
|
164 |
|
|
|
165 |
|
|
2000-01-26 Hugo Tyson
|
166 |
|
|
|
167 |
|
|
* include/pkgconf/uitron.h: Add new option
|
168 |
|
|
CYGSEM_UITRON_TIME_IS_MILLISECONDS to control just what it says.
|
169 |
|
|
|
170 |
|
|
* include/uit_func.inl (CYG_UITRON_TIME_UIT_TO_SYS32): et al; new
|
171 |
|
|
macros optionally to convert to/from milliSeconds if option
|
172 |
|
|
CYGSEM_UITRON_TIME_IS_MILLISECONDS is set.
|
173 |
|
|
|
174 |
|
|
* src/uit_func.cxx: Initialize Cyg_Clock::converter type objects
|
175 |
|
|
if the time unit is set to milliSeconds.
|
176 |
|
|
|
177 |
|
|
* cdl/uitron.cdl: Add new option
|
178 |
|
|
CYGSEM_UITRON_TIME_IS_MILLISECONDS to control just what it says.
|
179 |
|
|
|
180 |
|
|
Add an include of the kernel config file to the generated
|
181 |
|
|
pkgconf/uitron.h: tests at the very least need it! This is a
|
182 |
|
|
correct thing to do because the kernel config defines a lot of the
|
183 |
|
|
semantics of the uITRON layer, as well as being needed for
|
184 |
|
|
backward compatibility.
|
185 |
|
|
|
186 |
|
|
Also add uit_ifnc.cxx to the files that need compiling. Due to
|
187 |
|
|
the previous screwup, no testing has been applied to the uITRON
|
188 |
|
|
system under CDL, because it thought the kernel was absent, so
|
189 |
|
|
this had not been detected. Doh.
|
190 |
|
|
|
191 |
|
|
2000-01-25 Jesper Skov
|
192 |
|
|
|
193 |
|
|
* tests/testintr.cxx (cyg_start): externC addded.
|
194 |
|
|
|
195 |
|
|
2000-01-19 Hugo Tyson
|
196 |
|
|
|
197 |
|
|
* cdl/*.cdl: Add descriptions to a number of options &c which were
|
198 |
|
|
lacking same, also tidied up other typos as noticed en passant.
|
199 |
|
|
|
200 |
|
|
1999-11-09 Jonathan Larmour
|
201 |
|
|
|
202 |
|
|
* src/uit_objs.cxx: Make the stack size failsafe be tested against
|
203 |
|
|
the minimum stack size, not the typical one.
|
204 |
|
|
|
205 |
|
|
1999-11-03 John Dallaway
|
206 |
|
|
|
207 |
|
|
* cdl/uitron.cdl: Define tests.
|
208 |
|
|
|
209 |
|
|
1999-10-07 John Dallaway
|
210 |
|
|
|
211 |
|
|
* cdl/uitron.cdl: Specify radio buttons using CDL interfaces.
|
212 |
|
|
|
213 |
|
|
1999-09-06 Jonathan Larmour
|
214 |
|
|
|
215 |
|
|
* include/uit_objs.hxx (CYG_UITRON_OBJS_INIT_PRIORITY): Revert the
|
216 |
|
|
below change - we may still be shipping antiquated compilers to
|
217 |
|
|
customers. Sigh.
|
218 |
|
|
|
219 |
|
|
1999-09-02 Hugo Tyson
|
220 |
|
|
|
221 |
|
|
* include/uit_objs.hxx (CYG_UITRON_OBJS_INIT_PRIORITY): Enable
|
222 |
|
|
using init priority on uitron objects, now that the compilers all
|
223 |
|
|
support it fully. AFAI can tell from a quite broad experiment.
|
224 |
|
|
|
225 |
|
|
1999-09-01 Hugo Tyson
|
226 |
|
|
|
227 |
|
|
* tests/testintr.cxx (attach_isr): Make it all work: my chosen
|
228 |
|
|
default interrupt "level" of 0 means make no interrupts on the
|
229 |
|
|
tx39 ;-( oh well. Made the whole test simulator-friendly ie. much
|
230 |
|
|
shorter, made the output more friendly to me.
|
231 |
|
|
|
232 |
|
|
1999-08-26 Hugo Tyson
|
233 |
|
|
|
234 |
|
|
* cdl/uitron.cdl (CYGNUM_UITRON_ISR_ACTION_QUEUESIZE): add a
|
235 |
|
|
"default_value 32" - ooops.
|
236 |
|
|
|
237 |
|
|
1999-08-26 Hugo Tyson
|
238 |
|
|
|
239 |
|
|
* cdl/uitron.cdl: Add configury for lovely new interrupt-safe
|
240 |
|
|
functions: just "try immediate execution" [is the sched lock one?]
|
241 |
|
|
and queue size.
|
242 |
|
|
|
243 |
|
|
* include/pkgconf/uitron.h: Add configury for lovely new
|
244 |
|
|
interrupt-safe functions: just "try immediate execution" [ie. if
|
245 |
|
|
the sched lock is one] and queue size.
|
246 |
|
|
|
247 |
|
|
* include/uit_ifnc.inl: Respond to general configury wrt the
|
248 |
|
|
presence of semas, flags, mboxes: only define the ixxx_yyy()
|
249 |
|
|
function if the corresponding xxx_yyy() func exists. Remove the
|
250 |
|
|
static definitions of the configuration symbols.
|
251 |
|
|
|
252 |
|
|
* src/uit_ifnc.cxx: Respond to general configury wrt the presence
|
253 |
|
|
of semas, flags, mboxes: the functions called may not exist!
|
254 |
|
|
|
255 |
|
|
1999-08-25 Hugo Tyson
|
256 |
|
|
|
257 |
|
|
* include/uit_ifnc.h: New file. Prototypes of interrupt-safe
|
258 |
|
|
ixxx_yyy() style functions as a porting/backwards-compatibility
|
259 |
|
|
aid. Prototype of a suitable DSR to mate with an ISR that uses
|
260 |
|
|
them too.
|
261 |
|
|
|
262 |
|
|
* include/uit_ifnc.inl: New file. Bodies for possible inlining of
|
263 |
|
|
the ixxx_yyy() style functions; organized much like the standard
|
264 |
|
|
uITRON functions.
|
265 |
|
|
|
266 |
|
|
* src/uit_ifnc.cxx: New file. Implementation of the DSR provided,
|
267 |
|
|
plus concrete instantiations of the ixxx_yyy() style functions.
|
268 |
|
|
|
269 |
|
|
* tests/testintr.cxx: New file. Test for the ixxx_yyy() functions
|
270 |
|
|
newly provided above. Rather unpleasant: it is necessary to break
|
271 |
|
|
type-safety to get access to the kernel's interrupt object that
|
272 |
|
|
drives the realtime clock. Perhaps a neater way will follow.
|
273 |
|
|
|
274 |
|
|
* tests/PKGconf.mak (TESTS): Add new testcase testintr.cxx
|
275 |
|
|
* src/PKGconf.mak (COMPILE): Add new source file uit_ifnc.cxx
|
276 |
|
|
|
277 |
|
|
1999-08-17 John Dallaway
|
278 |
|
|
|
279 |
|
|
* cdl/uitron.cdl: Implement radio buttons using
|
280 |
|
|
"FIXME radio" hack in description field for now.
|
281 |
|
|
|
282 |
|
|
1999-07-30 John Dallaway
|
283 |
|
|
|
284 |
|
|
* cdl/uitron.cdl: Tidy display string capitalisation.
|
285 |
|
|
|
286 |
|
|
1999-05-26 Jesper Skov
|
287 |
|
|
|
288 |
|
|
* tests/testcx7.cxx: Include new stackmon header.
|
289 |
|
|
|
290 |
|
|
1999-05-20 Hugo Tyson
|
291 |
|
|
|
292 |
|
|
* tests/testcx7.cxx (task1): Add some statistics dumping about
|
293 |
|
|
stack usage; since this is quite a long and arduous test. This
|
294 |
|
|
just helps en passant with testing the interrupt stack work that's
|
295 |
|
|
been happening recently. C++ only, so not for test7.
|
296 |
|
|
|
297 |
|
|
1999-05-17 Hugo Tyson
|
298 |
|
|
|
299 |
|
|
* include/uit_func.inl (ter_tsk): Only up the priority of the
|
300 |
|
|
killee if priorities are not unique or we are not already
|
301 |
|
|
elevated. This is to prevent asserts with the bitmap scheduler.
|
302 |
|
|
(chg_pri): Support a level X feature, pri zero => reset to the
|
303 |
|
|
thread's initial priority.
|
304 |
|
|
|
305 |
|
|
1999-05-14 Hugo Tyson
|
306 |
|
|
|
307 |
|
|
* include/uit_objs.hxx: object array declaration macro now
|
308 |
|
|
contains constructor priority ordering rune; if 0'd out pending
|
309 |
|
|
99r1 compiler cutover.
|
310 |
|
|
|
311 |
|
|
1999-04-23 Hugo Tyson
|
312 |
|
|
|
313 |
|
|
* tests/testcx7.cxx: T2_MALLOC definition; only make it smaller
|
314 |
|
|
than the main consumer malloc if coaleasing is enabled, otherwise
|
315 |
|
|
the mempool cannot allocate blocks for the consumer for next time.
|
316 |
|
|
Fixes PR 18817 - only a random perm disable coalescence.
|
317 |
|
|
|
318 |
|
|
* tests/test7.c: Ditto.
|
319 |
|
|
|
320 |
|
|
1999-04-15 John Dallaway
|
321 |
|
|
|
322 |
|
|
* include/pkgconf/uitron.h: Tidy display string capitalization.
|
323 |
|
|
|
324 |
|
|
1999-04-09 Hugo Tyson
|
325 |
|
|
|
326 |
|
|
* include/uit_func.inl (dis_dsp): Remove bad old code which used
|
327 |
|
|
to lock the scheduler to implement dis_dsp() and ena_dsp() - which
|
328 |
|
|
also stopped the clock, for example. Instead change the calling
|
329 |
|
|
thread's priority to 0 internally so that it cannot be preempted
|
330 |
|
|
by uITRON threads at least, whose priorities are 1--N. Same
|
331 |
|
|
applies to loc/unl_cpu(). Save the "real" priority in a static,
|
332 |
|
|
and take notice of it everywhere relevant, such as thread and
|
333 |
|
|
system state inquiries, changing (our own) priority, checking for
|
334 |
|
|
dispatch enabled in sleeping calls, and so on.
|
335 |
|
|
|
336 |
|
|
* src/uit_func.cxx: New variable cyg_uitron_dis_dsp_old_priority
|
337 |
|
|
for holding the "real" priority of a thread whilst we change our
|
338 |
|
|
priority to zero (the highest) to prevent dispatching in dis_dsp()
|
339 |
|
|
or loc_cpu().
|
340 |
|
|
|
341 |
|
|
* include/uit_func.inl (get_tid): Return 0 for the task id if not
|
342 |
|
|
in a uITRON thread, this is better conformance to the spec.
|
343 |
|
|
|
344 |
|
|
1999-03-22 Hugo Tyson
|
345 |
|
|
|
346 |
|
|
* src/uit_objs.cxx:
|
347 |
|
|
Use CYGNUM_HAL_STACK_SIZE_TYPICAL for the stack size instead of
|
348 |
|
|
CYGNUM_HAL_MINIMUM_STACK_SIZE.
|
349 |
|
|
|
350 |
|
|
1999-02-23 Jonathan Larmour
|
351 |
|
|
|
352 |
|
|
* tests/test1.c, tests/test2.c, tests/test3.c, tests/test4.c,
|
353 |
|
|
tests/test5.c, tests/test6.c, tests/test7.c, tests/test8.c,
|
354 |
|
|
tests/test9.c, tests/testcxx.cxx, tests/testcx2.cxx,
|
355 |
|
|
tests/testcx3.cxx, tests/testcx4.cxx, tests/testcx5.cxx,
|
356 |
|
|
tests/testcx6.cxx, tests/testcx7.cxx, tests/testcx8.cxx,
|
357 |
|
|
tests/testcx9.cxx:
|
358 |
|
|
Change all non-applicable cases to use CYG_TEST_NA rather than
|
359 |
|
|
CYG_TEST_PASS/CYG_TEST_EXIT
|
360 |
|
|
|
361 |
|
|
1999-02-22 Hugo Tyson
|
362 |
|
|
|
363 |
|
|
* src/uit_objs.cxx: Eeeek! Previous fix was bogus: the override
|
364 |
|
|
was too late in the file to take effect. The declaration of the
|
365 |
|
|
objects (including stacks) is moved to below the override CPP
|
366 |
|
|
runes.
|
367 |
|
|
|
368 |
|
|
1999-02-12 Hugo Tyson
|
369 |
|
|
|
370 |
|
|
* src/uit_objs.cxx (CYG_UITRON_DECL):
|
371 |
|
|
Override CYGNUM_UITRON_STACK_SIZE if CYGNUM_HAL_MINIMUM_STACK_SIZE
|
372 |
|
|
demands it.
|
373 |
|
|
|
374 |
|
|
* include/pkgconf/uitron.h (CYGNUM_UITRON_STACK_SIZE):
|
375 |
|
|
Document that this option can be overridden by HALs demands.
|
376 |
|
|
|
377 |
|
|
1999-02-02 Jesper Skov
|
378 |
|
|
PR 18968
|
379 |
|
|
* tests/test2.c (task1):
|
380 |
|
|
* tests/testcx2.cxx (task1):
|
381 |
|
|
Reduce run time on SIM.
|
382 |
|
|
|
383 |
|
|
1999-01-26 Jesper Skov
|
384 |
|
|
PR 18788
|
385 |
|
|
* tests/test4.c (task1):
|
386 |
|
|
* tests/testcx4.cxx (task1):
|
387 |
|
|
Extend timeouts when running on HW to avoid failures due to
|
388 |
|
|
overhead of GDB interaction.
|
389 |
|
|
|
390 |
|
|
1999-01-25 Jesper Skov
|
391 |
|
|
PR 18576
|
392 |
|
|
* include/pkgconf/uitron.h (CYGDAT_UITRON_SEMA_INITIALIZERS):
|
393 |
|
|
Let default initializers have values that don't cause tests to
|
394 |
|
|
fail.
|
395 |
|
|
|
396 |
|
|
1998-11-25 Hugo Tyson
|
397 |
|
|
|
398 |
|
|
* include/uit_func.inl (del_xxx &c):
|
399 |
|
|
Make error returns more consistent; E_NOEXS rather than E_OBJ if
|
400 |
|
|
the object disappeared during a race.
|
401 |
|
|
|
402 |
|
|
1998-11-19 Hugo Tyson
|
403 |
|
|
|
404 |
|
|
* src/uit_func.cxx (SET_UP_PTRS):
|
405 |
|
|
PR 17999; work around codegen bug on tx39 with -Os.
|
406 |
|
|
The code is better with the fix regardless, so it's got no
|
407 |
|
|
downside. Explicitly condition whether to run a follow-on loop
|
408 |
|
|
rather than letting the for-loop sort it out itself.
|
409 |
|
|
|
410 |
|
|
1998-11-16 Hugo Tyson
|
411 |
|
|
|
412 |
|
|
* tests/testcx7.cxx (check_waitstate):
|
413 |
|
|
Add a routine to check the reported waiting state of the synch
|
414 |
|
|
object in question, and call it as necessary. This only added to
|
415 |
|
|
the C++ version of the test for enhanced coverage, in case the
|
416 |
|
|
enquiry call perturbs the object state; having both versions
|
417 |
|
|
present is better. This checks a very recent fix to
|
418 |
|
|
kernel...thread.cxx (1998-10-27).
|
419 |
|
|
|
420 |
|
|
1998-10-21 Hugo Tyson
|
421 |
|
|
|
422 |
|
|
* src/uit_func.cxx:
|
423 |
|
|
Provide weakly named dummies for task[1-4], which are the defaults
|
424 |
|
|
referred to by the task array, so that the uITRON system can be
|
425 |
|
|
initialized even when no uITRON tasks have been provided (so long
|
426 |
|
|
as no other changes to the task init configury have been made)
|
427 |
|
|
This does not pollute the namespace, for these are weak symbols.
|
428 |
|
|
Changing them to cyg_uitron_task... would be possible, but it
|
429 |
|
|
carries the false implication that those are cygnus names, when
|
430 |
|
|
they are really entirely up to the user.
|
431 |
|
|
|
432 |
|
|
* tests/test[123456789].c:
|
433 |
|
|
* tests/testcxx.cxx:
|
434 |
|
|
* tests/testcx[23456789].cxx:
|
435 |
|
|
Undo the previous change: remove dummies for task[1-4] when we
|
436 |
|
|
decide not to test anything, they will be provided with weak names
|
437 |
|
|
regardles in src/uit_func.cxx.
|
438 |
|
|
|
439 |
|
|
1998-10-20 Hugo Tyson
|
440 |
|
|
|
441 |
|
|
* tests/test[123456789].c:
|
442 |
|
|
* tests/testcxx.cxx:
|
443 |
|
|
* tests/testcx[23456789].cxx:
|
444 |
|
|
Provide dummies for task[1-4] when we decide not to test anything,
|
445 |
|
|
to encourage correct linking.
|
446 |
|
|
|
447 |
|
|
1998-10-16 Hugo Tyson
|
448 |
|
|
|
449 |
|
|
* tests/testcx*.cxx (cyg_start):
|
450 |
|
|
[all the C++ tests]
|
451 |
|
|
changed cyg_start to externC so that it truly does override the
|
452 |
|
|
default one; this is needed for handling the "I cannot test in
|
453 |
|
|
this configuration" failures. Of course the C ones were C to
|
454 |
|
|
start with.
|
455 |
|
|
|
456 |
|
|
1998-10-16 Hugo Tyson
|
457 |
|
|
|
458 |
|
|
* tests/test[123456789].c:
|
459 |
|
|
* tests/testcxx.cxx:
|
460 |
|
|
* tests/testcx[23456789].cxx:
|
461 |
|
|
All tests are now much more self-configuring wrt turning off
|
462 |
|
|
if there are no uITRON objects of the right type to manipulate.
|
463 |
|
|
The huge (50-line) #if statement is arranged the way it is so that
|
464 |
|
|
clauses checking on each feature can be pasted in and out easily.
|
465 |
|
|
So yes, the "&& 1" at the end has a purpose.
|
466 |
|
|
|
467 |
|
|
Here for the record is a table of feature versus test-used-in:
|
468 |
|
|
tsk :: 1 2 3 4 5 6 7 8 9
|
469 |
|
|
sem :: 2 3 5 6 7 8
|
470 |
|
|
flg :: 2 5 6 7
|
471 |
|
|
mbx :: 2 5 6 7
|
472 |
|
|
mpl :: 2 5 7 9
|
473 |
|
|
mpf :: 2 5 7 9
|
474 |
|
|
alm :: 4
|
475 |
|
|
cyc :: 4
|
476 |
|
|
|
477 |
|
|
|
478 |
|
|
1998-10-16 Hugo Tyson
|
479 |
|
|
|
480 |
|
|
* tests/test9.c:
|
481 |
|
|
* tests/testcx9.cxx:
|
482 |
|
|
New tests, test create and delete of memory pools
|
483 |
|
|
|
484 |
|
|
1998-10-15 Hugo Tyson
|
485 |
|
|
|
486 |
|
|
* include/pkgconf/uitron.h:
|
487 |
|
|
Add configury for create/delete of memory pools.
|
488 |
|
|
Tidy up naming of initializer macros to use for non-existent
|
489 |
|
|
(initially) uITRON objects.
|
490 |
|
|
Improve comments in CDL-- info fields.
|
491 |
|
|
|
492 |
|
|
* include/uit_func.h:
|
493 |
|
|
Add prototypes for cre/del_mpf/mpl().
|
494 |
|
|
|
495 |
|
|
* include/uit_func.inl:
|
496 |
|
|
Implement cre/del_mpf/mpl().
|
497 |
|
|
|
498 |
|
|
* src/uit_objs.cxx:
|
499 |
|
|
Support CYG_UIT_MEMPOOLFIXED_NOEXS/CYG_UIT_MEMPOOLVAR_NOEXS(...)
|
500 |
|
|
mempool construction macros for non-existent (initially) mempools.
|
501 |
|
|
Rename _NONE construction macros to _NOEXS which will make a lot
|
502 |
|
|
more sense to uITRON folks.
|
503 |
|
|
|
504 |
|
|
1998-10-14 Hugo Tyson
|
505 |
|
|
|
506 |
|
|
* include/pkgconf/uitron.h:
|
507 |
|
|
Add configury for create/delete of tasks.
|
508 |
|
|
|
509 |
|
|
* include/uit_func.h:
|
510 |
|
|
Add prototypes for cre/del_tsk(); correct comment in exd_tsk().
|
511 |
|
|
|
512 |
|
|
* include/uit_func.inl:
|
513 |
|
|
Implement cre/del_tsk() and complete exd_tsk().
|
514 |
|
|
Improve NULL/NADR checking on other cre/del calls.
|
515 |
|
|
|
516 |
|
|
* src/uit_func.cxx (cyg_uitron_start):
|
517 |
|
|
Deal better with start tasks stuff, for task create/delete.
|
518 |
|
|
|
519 |
|
|
* src/uit_objs.cxx:
|
520 |
|
|
Support CYG_UIT_TASK_NONE(...) task constructor for those tasks
|
521 |
|
|
which do not initially exist
|
522 |
|
|
|
523 |
|
|
* tests/PKGconf.mak:
|
524 |
|
|
Add new tests test8.c, testcx[678].cxx to the build.
|
525 |
|
|
|
526 |
|
|
* tests/test6.c:
|
527 |
|
|
Tidy comments, untabify.
|
528 |
|
|
|
529 |
|
|
* tests/test7.c:
|
530 |
|
|
Tidy comments, untabify, test creation with NADR record pointer.
|
531 |
|
|
No impact from the new cre/del_tsk() functionality on test7, since
|
532 |
|
|
a task may only be deleted when it is dormant, so deletion is NOT
|
533 |
|
|
another way out of a waiting state.
|
534 |
|
|
|
535 |
|
|
* tests/test8.c:
|
536 |
|
|
New test, tests cre_tsk() and del_tsk() and exd_tsk() ie. the
|
537 |
|
|
creation and deletion of tasks.
|
538 |
|
|
|
539 |
|
|
* tests/testcx6.cxx:
|
540 |
|
|
* tests/testcx7.cxx:
|
541 |
|
|
* tests/testcx8.cxx:
|
542 |
|
|
New tests, C++ versions of tests 6, 7, and 8.
|
543 |
|
|
|
544 |
|
|
1998-10-09 Hugo Tyson
|
545 |
|
|
|
546 |
|
|
* tests/test7.c:
|
547 |
|
|
Test interactions with deleting objects (as applicable) and
|
548 |
|
|
killing, signalling and the like. Also test killing the task
|
549 |
|
|
after other treatments more generically.
|
550 |
|
|
|
551 |
|
|
* tests/test6.c (task1):
|
552 |
|
|
Change "N/A:" to "N/A" in the exit message when we didn't actually
|
553 |
|
|
do any testing due to create/delete being disabled for all object
|
554 |
|
|
types.
|
555 |
|
|
|
556 |
|
|
1998-10-08 Hugo Tyson
|
557 |
|
|
|
558 |
|
|
In general, these changes are to support create/delete of uITRON
|
559 |
|
|
objects; this requires that an object can be destroyed whilst
|
560 |
|
|
there are threads waiting on it, and that they shall be awoken
|
561 |
|
|
with a specific return code E_DLT. The implementation uses an
|
562 |
|
|
array of pointers in addition to the array of objects: ptrs[N]
|
563 |
|
|
should either be NULL or &objs[N] in this version. That
|
564 |
|
|
restriction is not checked, in order that in future, true dynamic
|
565 |
|
|
allocation can be used, and ptrs[N] could point anywhere. The
|
566 |
|
|
implications of this are mainly in the area of getting the
|
567 |
|
|
addresses of objects, via the ptr array or from the object array?
|
568 |
|
|
The config of whether there is a ptr array is per object type.
|
569 |
|
|
|
570 |
|
|
* include/pkgconf/uitron.h:
|
571 |
|
|
Configury of the existence or not of create/delete for object
|
572 |
|
|
type: initially only SEMAS, MBOXES, FLAGS.
|
573 |
|
|
Configury of the number of objects created initially, if cre/del
|
574 |
|
|
are enabled.
|
575 |
|
|
|
576 |
|
|
* tests/test6.c:
|
577 |
|
|
* tests/test7.c:
|
578 |
|
|
* tests/PKGconf.mak:
|
579 |
|
|
Two new test programs (duh!): test6 tests create and delete of
|
580 |
|
|
SEMAS, MBOXES, FLAGS explicitly, for bad params handling, ability
|
581 |
|
|
to use after deletion and recreation &c &c. test7 tests the
|
582 |
|
|
semantics of sleeping on some synchronization primitive, permed
|
583 |
|
|
with suspension, signalling, killing, releasing and so forth.
|
584 |
|
|
Both will migrate into C++ versions also in future.
|
585 |
|
|
|
586 |
|
|
* include/uit_func.h:
|
587 |
|
|
Enable cre/del_{mbx,flg,sem} prototypes.
|
588 |
|
|
|
589 |
|
|
* include/uit_func.inl:
|
590 |
|
|
Implement cre/del_{mbx,flg,sem} depending on configury, and handle
|
591 |
|
|
the pointer arrays generally in other client routines.
|
592 |
|
|
|
593 |
|
|
* include/uit_objs.hxx:
|
594 |
|
|
Define the pointer arrays for access to created objects.
|
595 |
|
|
|
596 |
|
|
* include/uit_type.h:
|
597 |
|
|
Enable definitions of the structures used in create calls.
|
598 |
|
|
|
599 |
|
|
* src/uit_func.cxx:
|
600 |
|
|
Initialization code for the pointer arrays, akin to the task
|
601 |
|
|
startup code.
|
602 |
|
|
|
603 |
|
|
* src/uit_objs.cxx:
|
604 |
|
|
Instantiate the pointer arrays themselves.
|
605 |
|
|
|
606 |
|
|
|
607 |
|
|
1998-09-25 Bart Veer
|
608 |
|
|
|
609 |
|
|
* include/pkgconf/uitron.h:
|
610 |
|
|
PR 17482: added #ifdef protection. If CYGPKG_UITRON_MEMPOOLFIXED
|
611 |
|
|
is not defined then the contained option
|
612 |
|
|
CYGNUM_UITRON_MEMPOOLFIXED may not be defined either. Ditto for
|
613 |
|
|
CYGNUM_UITRON_MEMPOOLVAR which suffers from the same problem.
|
614 |
|
|
And ditto for CYGPKG_UITRON_SEMAS
|
615 |
|
|
|
616 |
|
|
1998-09-20 Mark Galassi
|
617 |
|
|
|
618 |
|
|
* include/pkgconf/uitron.h: added one or two CDL doc strings.
|
619 |
|
|
|
620 |
|
|
Tue Sep 15 19:12:28 1998 David Moore
|
621 |
|
|
|
622 |
|
|
* include/pkgconf/uitron.h: Cleaned up comments.
|
623 |
|
|
|
624 |
|
|
1998-09-12 Mark Galassi
|
625 |
|
|
small changes to the descriptive information in the uITRON CDL
|
626 |
|
|
|
627 |
|
|
1998-09-12 Mark Galassi
|
628 |
|
|
|
629 |
|
|
* include/pkgconf/uitron.h: small editing of the description
|
630 |
|
|
fields: renamed things like to NAME, so that it does not
|
631 |
|
|
confuse SGML when incorporated into the documentation.
|
632 |
|
|
Also added various "doc" fields to the CFG_DATA comments.
|
633 |
|
|
|
634 |
|
|
Wed Sep 9 18:36:15 1998 Hugo Tyson
|
635 |
|
|
|
636 |
|
|
* include/uit_func.inl:
|
637 |
|
|
* include/uit_objs.hxx:
|
638 |
|
|
* src/uit_objs.cxx:
|
639 |
|
|
Condition features on CYGPKG_UITRON_SEMAS [for example] as well as
|
640 |
|
|
|
641 |
|
|
compilation with no semas enabled. Ditto for flags, mboxes,
|
642 |
|
|
mempools fixed and variable, alarms and cyclics.
|
643 |
|
|
|
644 |
|
|
* include/pkgconf/uitron.h:
|
645 |
|
|
Add a couple of requires statements from cyclics and alarms on the
|
646 |
|
|
kernel clock.
|
647 |
|
|
Also change some grammar after review.
|
648 |
|
|
Add an option (actually a pair, makes it better documentation IMO)
|
649 |
|
|
to require strict semantics from the kernel setup.
|
650 |
|
|
Add an option to control the optional sema initializer; it was
|
651 |
|
|
omitted since the editor way of configury used a #if 0.
|
652 |
|
|
|
653 |
|
|
Fri Sep 4 17:54:29 1998 Hugo Tyson
|
654 |
|
|
|
655 |
|
|
* include/pkgconf/uitron.h:
|
656 |
|
|
Remove redundant and now unnecessary defs of CYGPKG_UITRON.
|
657 |
|
|
|
658 |
|
|
Wed Sep 2 19:06:17 1998 Hugo Tyson
|
659 |
|
|
|
660 |
|
|
* include/uit_func.inl:
|
661 |
|
|
Memory pools and message boxes and flags
|
662 |
|
|
and cnt_sem2-type semaphores now all have absolute timeouts
|
663 |
|
|
instead of relative ones in the timely wait functions.
|
664 |
|
|
We add in the current time here first.
|
665 |
|
|
|
666 |
|
|
Wed Sep 2 16:45:40 1998 Hugo Tyson
|
667 |
|
|
|
668 |
|
|
* include/pkgconf/uitron.h (CYGDAT_UITRON_TASK_INITIALIZERS):
|
669 |
|
|
Use the new kernel thread initializer with priority and thread
|
670 |
|
|
name in it.
|
671 |
|
|
|
672 |
|
|
* include/uit_func.inl:
|
673 |
|
|
* include/uit_objs.hxx:
|
674 |
|
|
* src/uit_func.cxx (cyg_uitron_start):
|
675 |
|
|
* src/uit_objs.cxx:
|
676 |
|
|
Our tasks are now Cyg_Threads rather than a derived class.
|
677 |
|
|
Original priorities of tasks are held in an array. An accessor
|
678 |
|
|
macro is used for the off-by-one nature of uitron IDs. The array
|
679 |
|
|
of original priorities is set up in cyg_uitron_start(), and
|
680 |
|
|
created in uit_objs.cxx.
|
681 |
|
|
|
682 |
|
|
Wed Sep 2 15:15:26 1998 Hugo Tyson
|
683 |
|
|
|
684 |
|
|
* include/pkgconf/uitron.h:
|
685 |
|
|
Comment more strongly in the 'description' that the number of
|
686 |
|
|
initializers better match the number of things specified.
|
687 |
|
|
|
688 |
|
|
Tue Sep 1 19:00:02 1998 Hugo Tyson
|
689 |
|
|
|
690 |
|
|
* include/uit_objs.hxx:
|
691 |
|
|
Do not include ; it is deprecated.
|
692 |
|
|
Instead, include only kernel headers that are needed.
|
693 |
|
|
|
694 |
|
|
* include/uit_func.inl (ref_sys):
|
695 |
|
|
Use new kernel function Cyg_Interrupt::interrupts_enabled()
|
696 |
|
|
instead of a state variable. Tidy up associated code.
|
697 |
|
|
Include kernel headers that are needed because they were not
|
698 |
|
|
included in uit_objs.hxx for tidiness.
|
699 |
|
|
|
700 |
|
|
* src/uit_func.cxx:
|
701 |
|
|
Elide state variable that used to be used for tracking interrupt
|
702 |
|
|
enabledness state.
|
703 |
|
|
|
704 |
|
|
* tests/testcx5.cxx (task1):
|
705 |
|
|
* tests/test5.c (task1):
|
706 |
|
|
Test interrupt enable and disable stuff, and status reporting.
|
707 |
|
|
|
708 |
|
|
Tue Sep 1 15:12:29 1998 Hugo Tyson
|
709 |
|
|
|
710 |
|
|
* include/uit_func.inl (ref_mpf):
|
711 |
|
|
Change comment "ECC" to "eCos".
|
712 |
|
|
|
713 |
|
|
1998-08-28 Bart Veer
|
714 |
|
|
|
715 |
|
|
* include/uit_func.inl:
|
716 |
|
|
* tests/test1.c, tests/test2.c, tests/test3.c, tests/test4.c,
|
717 |
|
|
tests/test5.c, tests/testcxx.cxx, tests/testcx2.cxx,
|
718 |
|
|
tests/testcx3.cxx, tests/testcx4.cxx, tests/testcx5.cxx:
|
719 |
|
|
|
720 |
|
|
Updated for new kernel configuration option symbol names
|
721 |
|
|
|
722 |
|
|
|
723 |
|
|
Fri Aug 28 09:21:55 1998 Jonathan Larmour
|
724 |
|
|
|
725 |
|
|
* src/uit_func.cxx (cyg_uitron_start):
|
726 |
|
|
Remove call to Cyg_Scheduler::start() and adjust comments to
|
727 |
|
|
explain where to call it from
|
728 |
|
|
|
729 |
|
|
* tests/test1.c, tests/test2.c, tests/test3.c, tests/test4.c,
|
730 |
|
|
tests/test5.c, tests/testcxx.cxx, tests/testcx2.cxx,
|
731 |
|
|
tests/testcx3.cxx, tests/testcx4.cxx, tests/testcx5.cxx:
|
732 |
|
|
Change the normal entry point at the top to be cyg_package_start()
|
733 |
|
|
under the new startup scheme. This overrides the default package
|
734 |
|
|
configuration and ensure cyg_uitron_start() gets called.
|
735 |
|
|
Change the "default" entry point at the bottom (when the test is
|
736 |
|
|
N/A for some reason) to cyg_start() under the new startup scheme.
|
737 |
|
|
|
738 |
|
|
Wed Aug 26 18:20:47 1998 Hugo Tyson
|
739 |
|
|
|
740 |
|
|
* include/pkgconf/uitron.h:
|
741 |
|
|
Initial version of cdl control statements for config options.
|
742 |
|
|
All very groovy, and looking good IMO.
|
743 |
|
|
A few FIX-MEs remain, no big deal.
|
744 |
|
|
|
745 |
|
|
Mon Aug 24 19:05:52 1998 Hugo Tyson
|
746 |
|
|
|
747 |
|
|
* include/pkgconf/uitron.h:
|
748 |
|
|
Change the names of config options to helpful, positive sense, and
|
749 |
|
|
tidy some of the names for inclusion in the GUI tool. Clean up
|
750 |
|
|
the namespace too.
|
751 |
|
|
|
752 |
|
|
* include/uit_func.h:
|
753 |
|
|
* include/uit_func.inl:
|
754 |
|
|
* src/uit_func.cxx:
|
755 |
|
|
* src/uit_objs.cxx:
|
756 |
|
|
Configure according to new option names and object construction
|
757 |
|
|
macros. Simple changes but widespread.
|
758 |
|
|
|
759 |
|
|
* tests/test[12345].c:
|
760 |
|
|
* tests/testcx[x2345].cxx:
|
761 |
|
|
Configure according to new option names.
|
762 |
|
|
Make it main( void ) to avoid a warning.
|
763 |
|
|
|
764 |
|
|
Fri Aug 21 18:45:16 1998 Hugo Tyson
|
765 |
|
|
|
766 |
|
|
* tests/testcx4.cxx (task1):
|
767 |
|
|
* tests/test4.c (task1):
|
768 |
|
|
* include/uit_func.inl (def_alm):
|
769 |
|
|
Tidy the alarm and timer funcs in the course of fixing a kernel
|
770 |
|
|
bug actually. Test the functionality affected by the kernel
|
771 |
|
|
change a bit more.
|
772 |
|
|
|
773 |
|
|
Thu Aug 20 14:33:36 1998 Hugo Tyson
|
774 |
|
|
|
775 |
|
|
* include/uit_func.inl (ref_alm):
|
776 |
|
|
Elide an unused variable following the previous change.
|
777 |
|
|
|
778 |
|
|
Mon Aug 17 15:45:07 1998 Hugo Tyson
|
779 |
|
|
|
780 |
|
|
* include/pkgconf/uitron.h:
|
781 |
|
|
Add the config option CYGSEM_UITRON_PARAMS_CHECK_NADR_ONLY.
|
782 |
|
|
|
783 |
|
|
* tests/testcxx.cxx:
|
784 |
|
|
* tests/testcx2.cxx:
|
785 |
|
|
* tests/testcx4.cxx:
|
786 |
|
|
Avoid testing with NULL as a bad parameter when only NADR is
|
787 |
|
|
checked. (NADR does not cast to any-pointer in C++ so we don't
|
788 |
|
|
test it in these programs) Check for NADR various places as well
|
789 |
|
|
as NULL.
|
790 |
|
|
|
791 |
|
|
* tests/test1.c (task1):
|
792 |
|
|
* tests/test2.c (task1):
|
793 |
|
|
* tests/test4.c (task1):
|
794 |
|
|
Avoid testing with NULL as a bad parameter when only NADR is
|
795 |
|
|
checked. Check for NADR various places as well as NULL, and test
|
796 |
|
|
NADR as a bad param as well as NULL.
|
797 |
|
|
|
798 |
|
|
|
799 |
|
|
Mon Aug 17 14:45:30 1998 Hugo Tyson
|
800 |
|
|
|
801 |
|
|
* include/uit_func.inl:
|
802 |
|
|
PR# 16536: Check for dormant tasks various places; E_OBJ
|
803 |
|
|
must be returned. All this error checking rather bloats the code,
|
804 |
|
|
unfortunately.
|
805 |
|
|
|
806 |
|
|
* tests/testcxx.cxx:
|
807 |
|
|
* tests/test1.c:
|
808 |
|
|
Test the new checks above.
|
809 |
|
|
|
810 |
|
|
Fri Aug 14 17:41:35 1998 Hugo Tyson
|
811 |
|
|
|
812 |
|
|
* include/uit_func.inl ([t]wai/pol_flg):
|
813 |
|
|
Check for zero in a wait-for-flag operation; such a wait can never
|
814 |
|
|
be awakened, and so should return E_PAR.
|
815 |
|
|
|
816 |
|
|
* tests/testcx2.cxx (task1):
|
817 |
|
|
* tests/test2.c (task1):
|
818 |
|
|
Test the above new checking.
|
819 |
|
|
|
820 |
|
|
Fri Jul 24 17:12:54 1998 Hugo Tyson
|
821 |
|
|
|
822 |
|
|
PR#15865
|
823 |
|
|
* include/uit_func.inl: return a bool (strictly 1 or 0) for wtsk
|
824 |
|
|
rather than -1 or zero as the spec implies.
|
825 |
|
|
ref_flg() ref_sem() only affected.
|
826 |
|
|
|
827 |
|
|
Fri Jul 24 13:26:51 1998 Hugo Tyson
|
828 |
|
|
|
829 |
|
|
PR#16531
|
830 |
|
|
* include/uit_func.inl: return E_OBJ when (force)resuming a
|
831 |
|
|
non-suspended task.
|
832 |
|
|
* tests/test1.c: test for that error code.
|
833 |
|
|
* tests/testcxx.cxx: test for that error code.
|
834 |
|
|
|
835 |
|
|
Fri Jul 24 13:02:46 1998 Hugo Tyson
|
836 |
|
|
|
837 |
|
|
* Changelog: Initial ChangeLog entry.
|
838 |
|
|
|
839 |
|
|
|
840 |
|
|
//===========================================================================
|
841 |
|
|
//####ECOSGPLCOPYRIGHTBEGIN####
|
842 |
|
|
// -------------------------------------------
|
843 |
|
|
// This file is part of eCos, the Embedded Configurable Operating System.
|
844 |
|
|
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
|
845 |
|
|
//
|
846 |
|
|
// eCos is free software; you can redistribute it and/or modify it under
|
847 |
|
|
// the terms of the GNU General Public License as published by the Free
|
848 |
|
|
// Software Foundation; either version 2 or (at your option) any later version.
|
849 |
|
|
//
|
850 |
|
|
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY
|
851 |
|
|
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
852 |
|
|
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
853 |
|
|
// for more details.
|
854 |
|
|
//
|
855 |
|
|
// You should have received a copy of the GNU General Public License along
|
856 |
|
|
// with eCos; if not, write to the Free Software Foundation, Inc.,
|
857 |
|
|
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
|
858 |
|
|
//
|
859 |
|
|
// As a special exception, if other files instantiate templates or use macros
|
860 |
|
|
// or inline functions from this file, or you compile this file and link it
|
861 |
|
|
// with other works to produce a work based on this file, this file does not
|
862 |
|
|
// by itself cause the resulting work to be covered by the GNU General Public
|
863 |
|
|
// License. However the source code for this file must still be made available
|
864 |
|
|
// in accordance with section (3) of the GNU General Public License.
|
865 |
|
|
//
|
866 |
|
|
// This exception does not invalidate any other reasons why a work based on
|
867 |
|
|
// this file might be covered by the GNU General Public License.
|
868 |
|
|
//
|
869 |
|
|
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
|
870 |
|
|
// at http://sources.redhat.com/ecos/ecos-license/
|
871 |
|
|
// -------------------------------------------
|
872 |
|
|
//####ECOSGPLCOPYRIGHTEND####
|
873 |
|
|
//===========================================================================
|