]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - packages/hal/powerpc/arch/v2_0/ChangeLog
unified MX27, MX25, MX37 trees
[karo-tx-redboot.git] / packages / hal / powerpc / arch / v2_0 / ChangeLog
1 2007-10-12  Gary Thomas  <gary@mlbassoc.com>
2
3         * src/vectors.S: Optimize system initialization of DATA/BSS/etc.
4
5 2006-04-18  Gary Thomas  <gary@mlbassoc.com>
6
7         * include/hal_arch.h: Adjust stack sizes - they were too small
8         (on machines with FPU) and didn't account for stack checking.
9
10 2005-07-29  Gary Thomas  <gary@mlbassoc.com>
11
12         * include/arch.inc: Add one-time-include protection since newer
13         versions of the GNU assembler complain about redefining macros.
14
15 2005-03-14  Peter Korsgaard  <jacmetd@sunsite.dk>
16
17         * src/redboot_linux_exec.c (do_exec): Correctly set bi_size.
18
19 2004-11-04  Peter Korsgaard  <jacmet@sunsite.dk>
20
21         * src/ppc_stub.c (__is_single_step): Removed compiler warning
22         about pointer / integer comparison.
23         
24 2004-05-27  Gary Thomas  <gary@mlbassoc.com>
25
26         * src/redboot_linux_exec.c (do_exec): Be sensitive to value in
27         "entry_address" as this can indicate if the image to be executed
28         is valid (the "load" functions set it to "NO_MEMORY" when invalid)
29
30 2004-04-29  Jonathan Larmour  <jifl@eCosCentric.com>
31
32         * include/hal_arch.h (HAL_SET_GDB_FLOATING_POINT_REGISTERS): Make
33         absolutely safe with respect to strict-aliasing.
34         (HAL_SET_GDB_FLOATING_POINT_REGISTERS): Ditto.
35
36 2004-04-23  Gary Thomas  <gary@mlbassoc.com>
37
38         * include/hal_arch.h: 
39         * src/redboot_linux_exec.c (do_exec): Fix compiler warning about bad
40         cast (dereferencing type-punned pointer will break strict-aliasing rules)
41
42 2004-04-22  Jani Monoses <jani@iv.ro>
43
44          * cdl/hal_powerpc.cdl :
45          Invoke tail with stricter syntax that works in latest coreutils. 
46
47 2003-12-11  Gary Thomas  <gary@mlbassoc.com>
48
49         * include/hal_intr.h: Add macros to manipulate machine check enable
50         bit in the MSR.
51
52 2003-12-08  Gary Thomas  <gary@mlbassoc.com>
53
54         * src/hal_misc.c (cyg_hal_exception_handler): Only declare __mem_fault_handler
55         if GDB stubs are included (and it will be used).
56
57         * src/vectors.S: Minor change which makes newer versions of assembler
58         happy (at least for binutils-2.14.90.0.6).
59
60 2003-12-05  Andrew Lunn  <andrew.lunn@ascom.ch>
61
62         * include/hal_intr.h: hal_delay_us() is a C function.
63
64 2003-10-28  Gary Thomas  <gary@mlbassoc.com>
65
66         * src/vectors.S: Revert change to interrupt handling (see below) which
67         was over-exuberant on platforms without MMU (but with FP).
68
69 2003-09-19  Gary Thomas  <gary@mlbassoc.com>
70
71         * src/vectors.S: Respect initial MMU settings when handling interrupts
72         and exceptions.  Previously, the code would always reenable the MMU,
73         even if it wasn't on when the interrupt occurred.
74
75         * include/hal_io.h: Allow variants to provide I/O definitions
76
77         * cdl/hal_powerpc.cdl: Allow override of CYGHWR_HAL_POWERPC_ENABLE_MMU
78
79 2003-08-28  Gary Thomas  <gary@mlbassoc.com>
80
81         * src/redboot_linux_exec.c: New file - architecture level
82         support for booting Linux kernel from RedBoot.
83
84         * cdl/hal_powerpc.cdl: Linux booting from RedBoot is 
85         now supported at the architecture level.  Changes to support 
86         architecture/platform layering.
87
88 2003-08-19  Gary Thomas  <gary@mlbassoc.com>
89
90         * src/hal_intr.c (hal_IRQ_init): Precalculate clock tick per
91         microsecond (us) ratio to reduce overheads in delay.  Without
92         this, delays of small numbers of microseconds were inaccurate.
93
94 2003-08-06  Bob Koninckx <bob.koninckx@mech.kuleuven.ac.be>
95
96         * src/vectors.S (cyg_hal_default_interrupt_vsr): Removed ifdef on
97         CYGFUN_HAL_COMMON_KERNEL_SUPPORT around call to interrupt_end().
98
99 2003-04-10  Nick Garnett  <nickg@balti.calivar.com>
100
101         * src/powerpc.ld: 
102         Added .eh_frame to data section. This is a stopgap fix to allow
103         C++ programs that define exceptions to link and run. It does not
104         allow them to actually throw exceptions, since that depends on
105         compiler changes that have not been made. Further, more
106         far-reaching, linker script changes will also be needs when that
107         happens.
108         Added libsupc++.a to GROUP() directive for GCC versions later than
109         3.0.
110
111 2003-03-08  Jonathan Larmour  <jifl@eCosCentric.com>
112
113         * include/hal_arch.h (HAL_THREAD_INIT_CONTEXT): Initialize
114         what would be FP and LR in the previous stack frame to make
115         GDB backtraces happy.
116
117 2003-01-03  Gary Thomas  <gary@mlbassoc.com>
118
119         * include/hal_mem.h (CYGARC_MEMDESC_NOCACHE_PA): New macro which
120         allows defining non-cached space with non 1-1 mapping.
121
122 2002-12-24  Gary Thomas  <gary@mlbassoc.com>
123
124         * src/vectors.S: 
125         * cdl/hal_powerpc.cdl: Add option to allow ROM code to simply
126         jump to the startup code, instead of using an absolute address.
127
128 2002-11-14  Gary Thomas  <gthomas@ecoscentric.com>
129
130         * src/vectors.S: Provide pointer to saved registers on interrupt.
131         This is necessary for profiling support.
132         
133 2002-11-20  Gary Thomas  <gary@mlbassoc.com>
134
135         * src/hal_mk_defs.c: Allow platforms to provide their own definitions.
136
137 2002-11-14  Bob Koninckx <bob.koninckx@mech.kuleuven.ac.be>
138
139         * include/hal_arch.h: 
140         * include/ppc_stub.h: 
141         * src/ppc_stub.c: 
142         floating point support in GDB - definitions/implementation
143
144 2002-11-13  Gary Thomas  <gthomas@ecoscentric.com>
145
146         * src/hal_misc.c (hal_enable_caches): Support new CDL options for
147         how [mode] to enable DATA cache.
148
149 2002-08-05  Gary Thomas  <gary@chez-thomas.org>
150 2002-08-05  Bob Koninckx <bob.koninckx@mech.kuleuven.ac.be>     
151
152         * include/arch.inc: hal_fpu_load regs was not loading registers!
153
154 2002-08-01  Gary Thomas  <gary@mlbassoc.com>
155  
156         * include/hal_io.h: 
157         * include/hal_intr.h: Allow more variant/platform overrides.
158  
159 2002-04-29  Jonathan Larmour  <jlarmour@redhat.com>
160
161         * src/vectors.S:
162         Don't use .file as it can confuse debugging since the .file
163         doesn't contain the path and therefore the debugger will never
164         know where it lives! This conflicts with using -Wa,--gstabs.
165
166 2002-04-25  Jonathan Larmour  <jlarmour@redhat.com>
167
168         * src/ppc_stub.c (__computeSignal): Only handle ITLB/DTLB MISS if
169         defined by platform.
170
171 2002-04-24  Bob Koninckx <bob.koninckx@mech.kuleuven.ac.be>
172 2002-04-24  Jonathan Larmour  <jlarmour@redhat.com>
173
174         * include/hal_arch.h (HAL_SavedRegisters): Add FP regs.
175         * include/arch.inc: Add FPU register names.
176         Implement hal_fpu_save and hal_fpu_load.
177         * src/context.S: save/restore FP regs.
178         * src/hal_mk_defs.c (main): Export CYGARC_JMPBUF_F* for FPU regs.
179         * src/ppc_stub.c (__computeSignal): SW_EMUL is support by 5xx.
180         ITLB and DTLB MISS only supported by 8xx.
181         * cdl/hal_powerpc.cdl (CYGHWR_HAL_POWERPC_VECTOR_BASE): Take
182         CYGHWR_HAL_POWERPC_FORCE_VECTOR_BASE_LOW into account.
183
184 2002-04-11  Gary Thomas  <gthomas@redhat.com>
185
186         * src/hal_misc.c (hal_enable_caches): Change cache handling & setup to
187         be controlled by common CDL (like other platforms/architectures).
188
189         * src/hal_intr.c (hal_delay_us): Didn't work if there are less than
190         one decrementer tick per micro-second.  Used a calculation that seems
191         to work no matter how the decrementer is configured.
192
193 2002-04-08  Gary Thomas  <gthomas@redhat.com>
194
195         * src/vectors.S (_hal_hardware_init_done): Can't copy vectors until
196         DRAM is setup (like the comment said all along).
197
198 2002-03-08  Gary Thomas  <gthomas@redhat.com>
199
200         * src/vectors.S (_hal_hardware_init_done): New label - used by
201         ROMRAM code to figure out relative addressing.
202
203 2002-01-23  Gary Thomas  <gthomas@redhat.com>
204
205         * src/hal_mk_defs.c (main): Clean up compile warning.
206
207 2001-11-16  Nick Garnett  <nickg@redhat.com>
208
209         * include/hal_arch.h (HAL_MSBIT_INDEX): Fixed this macro so that
210         it actually works!
211
212 2001-11-15  Jesper Skov  <jskov@redhat.com>
213
214         * src/hal_misc.c (hal_arch_default_isr): Added return
215         statement (found by Christoph Csebits).
216
217 2001-02-23  Jesper Skov  <jskov@redhat.com>
218
219         * src/powerpc.ld: Added .2ram section matching to .data section.
220
221 2001-02-05  Jesper Skov  <jskov@redhat.com>
222
223         * src/ppc_stub.c (__computeSignal): Hack to allow thread debugging
224         on 40x cores.
225
226 2001-01-24  Jesper Skov  <jskov@redhat.com>
227
228         * src/powerpc.ld: Added .sdata to .sdata pattern.
229
230 2001-01-16  Gary Thomas  <gthomas@redhat.com>
231
232         * src/vectors.S (_start): Set up IRQ environment _before_ calling
233         constructors - since they may need it to work.
234
235 2001-01-15  Gary Thomas  <gthomas@redhat.com>
236
237         * src/ppc_stub.c: Define new method for achieving single stepping
238         when processor (like 40x) does not support it in hardware.  This
239         method will be invoked if the variant or plaform define the 
240         symbol CYGNUM_HAL_NO_VECTOR_TRACE.
241
242 2001-01-03  Gary Thomas  <gthomas@redhat.com>
243
244         * src/hal_intr.c (hal_delay_us): Fix some problems - didn't
245         always work properly, especially on fast processors.
246
247 2000-11-21  Gary Thomas  <gthomas@redhat.com>
248
249         * src/vectors.S (rom_vectors): Special handling when vectors
250         can't be easily aligned, etc. (Work around messy hardware).
251
252 2000-11-04  Gary Thomas  <gthomas@redhat.com>
253
254         * src/vectors.S: Minor changes in support of PPC40x.  This
255         platform has no cache control - if the MMU is on, it's on.
256         This causes some interesting cache coherency problems in the
257         interrupt/exception handlers.  Note: it may be possible to
258         overcome this by use of the DCCR register (untested).
259
260         * src/powerpc.ld: Fix problems with 'sbss6', etc.
261
262         * src/hal_mk_defs.c: Use variant/platform macros for additional
263         symbols, rather than direcly polluting this file.
264
265         * include/hal_intr.h: Allow variant/platform to define clock
266         setup (since the 40x does not have a decrementer!)
267
268 2000-10-31  Jonathan Larmour  <jlarmour@redhat.com>
269
270         * src/powerpc.ld: Use .sdata.* rather than .sdata* so that .sdata2
271         doesn't get matched so that the linker script symbols are still valid.
272         Ditto for .sbss*.
273
274 2000-10-24  Jonathan Larmour  <jlarmour@redhat.com>
275
276         * src/powerpc.ld: Match multiple sections where relevant (.bss*,
277         .sbss*, .sdata*, etc.)
278
279 2000-10-20  Jesper Skov  <jskov@redhat.com>
280
281         * src/hal_misc.c: Update __mem_fault_handler declaration.
282
283 2000-10-20  Gary Thomas  <gthomas@redhat.com>
284
285         * src/hal_intr.c (hal_delay_us): 
286         * include/hal_intr.h (HAL_DELAY_US): New function.
287
288 2000-10-16  Jonathan Larmour  <jlarmour@redhat.com>
289
290         * include/hal_arch.h (CYGARC_JMP_BUF_SIZE): Define hal_jmp_buf
291         in terms of this.
292
293 2000-08-15  Gary Thomas  <gthomas@redhat.com>
294
295         * src/hal_mk_defs.c: Export memory layout for use by assembly code.
296
297 2000-06-27  Jesper Skov  <jskov@redhat.com>
298
299         * src/vectors.S: Removed unnecessary
300         CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT checks.
301
302 2000-06-21  Nick Garnett  <nickg@cygnus.co.uk>
303
304         * src/ppc_stub.c (__is_breakpoint_function): Removed use of
305         CYG_LABEL_NAME() and added underscore to _breakinst.
306
307         * src/powerpc.ld:
308         Switched to new table definition mechanism.
309
310         * include/basetype.h: Removed definition of CYG_LABEL_NAME().
311
312 2000-06-15  Jesper Skov  <jskov@redhat.com>
313
314         * include/hal_intr.h: Added HAL_DEFAULT_ISR.
315
316 2000-06-13  Jesper Skov  <jskov@redhat.com>
317
318         * src/powerpc.ld (hal_virtual_vector_table): Added.
319
320         * src/hal_misc.c (hal_arch_default_isr): Added, replacing
321         hal_default_isr which was moved to common HAL.
322
323         * src/vectors.S: Changes to support ctrlC via virtual vector table.
324
325 2000-06-08  Jesper Skov  <jskov@redhat.com>
326
327         * include/hal_arch.h (CYGARC_HAL_SAVE_GP, CYGARC_HAL_RESTORE_GP):
328         Added.
329
330 2000-04-14  Jesper Skov  <jskov@redhat.com>
331
332         * src/hal_misc.c (hal_idle_thread_action): Moved some of the code
333         to variant idle functions which now get called.
334         (hal_enable_caches): Moved serialization code to 8xx variant init.
335
336         * src/vectors.S (restore_state): Use hal_fpu_load and
337         hal_variant_load. Reported by Sergei Organov (osv at javad.ru).
338
339 2000-04-11  Jesper Skov  <jskov@redhat.com>
340
341         * src/powerpc.ld: VSR table location is controlled by CDL.
342         
343         * cdl/hal_powerpc.cdl: Added new options to control vector base
344         and MMU activation. Based on a patch from Sergei Organov (osv at
345         javad.ru).
346
347 2000-04-06  Jonathan Larmour  <jlarmour@redhat.co.uk>
348
349         * include/hal_intr.h (HAL_CLOCK_RESET): Prevent warning
350         (patch thanks to Sergei Organov (osv at javad.ru))
351
352 2000-03-13  Jesper Skov  <jskov@redhat.com>
353         Case 103356
354         * include/hal_intr.h (HAL_CLOCK_RESET): Add to decrementer instead
355         of storing, thus reducing time skew somewhat.
356
357 2000-03-02  Jesper Skov  <jskov@redhat.com>
358
359         * src/vectors.S: Leave vectors for SIM.
360
361         * include/hal_intr.h: Clean up interrupt macros.
362
363 2000-03-01  Jonathan Larmour  <jlarmour@redhat.co.uk>
364
365         * cdl/hal_powerpc.cdl: If including stubs, default to copying vectors
366
367         * include/ppc_stub.h: Make C++ safe
368
369 2000-03-01  Jesper Skov  <jskov@redhat.com>
370
371         * cdl/hal_powerpc.cdl: CYGSEM_HAL_USE_ROM_MONITOR precludes
372         CYGSEM_HAL_POWERPC_COPY_VECTORS.
373
374 2000-02-29  Gary Thomas  <gthomas@cygnus.co.uk>
375
376         * src/vectors.S (_start): Actually copy exception vectors if
377         "copy vectors" selected and not running from ROM (useful if
378         booting using PPCbug).
379
380 2000-02-28  Jesper Skov  <jskov@redhat.com>
381
382         * cdl/hal_powerpc.cdl: Add copy vectors option.
383         * src/vectors.S: Leave out vectors if they are not used. Also
384         clean up r1/sp usage.
385         * include/arch.inc: CYGPKG_HAL_POWERPC_MPC603 ->
386         CYGPKG_HAL_POWERPC_PPC603
387
388         CR 902165-CR
389         Ensure proper switch to interrupt stack for execution of DSRs:
390         * src/vectors.S: Leave interrupt enable in exception handling to
391         interrupt_end code. restore_state and
392         hal_interrupt_stack_call_pending_DSRs updated to use interupt
393         macros.
394         * src/context.S: Restore interrupt state on context load.
395         * include/arch.inc: Added interrupt macros.
396         * include/hal_arch.h: Init thread struct with interrupt setting.
397
398 2000-02-25  Jesper Skov  <jskov@redhat.com>
399
400         * src/vectors.S:
401         * include/ppc_regs.h: 
402         Mangle MSR symbols and remove CYG_MSR_NO_INTS.
403
404 2000-02-22  Jesper Skov  <jskov@redhat.com>
405
406         * src/vectors.S: 
407         * src/hal_mk_defs.c:
408         * include/pkgconf/hal_powerpc.h: 
409         * cdl/hal_powerpc.cdl: 
410         * include/hal_arch.h: 
411         Added option for stack frame debug walls.
412         
413         * src/context.S: 
414         * src/hal_mk_defs.c:
415         * include/hal_arch.h: 
416         Oops. hal_jmp_buf should be an array, or callers will
417         copy-on-call.
418
419 2000-02-21  Jesper Skov  <jskov@redhat.com>
420
421         * src/vectors.S: Added context_size marker.
422
423         * include/hal_intr.h:
424         * src/hal_mk_defs.c: 
425         * src/context.S: 
426         * src/vectors.S: 
427         * src/PKGconf.mak: 
428         * cdl/hal_powerpc.cdl: 
429         Added autogenerated assembly header with computed structure
430         offsets like in ARM HAL. Changed setjmp code to use generated
431         offsets.
432         Made the file public to allow variant/arch sharing.
433         Use auto-created offsets for saving/restoring exception frames.
434         
435 2000-02-16  Jesper Skov  <jskov@redhat.com>
436
437         * cdl/hal_powerpc.cdl: removed fix me
438
439 2000-02-11  Jesper Skov  <jskov@redhat.com>
440
441         * include/hal_cache.h: 
442         * include/hal_mem.h: 
443         Moved memory mapping definition to new file.
444
445         * include/hal_cache.h: Deleted 60x macros.
446
447         * src/hal_misc.c: Moved MMU functions to variant files.
448
449         * src/hal_intr.c (hal_IRQ_init): Moved code to MPC8xx variant
450         directory.
451
452         * include/hal_intr.h: Added hal_variant_IRQ_init declaration.
453
454         * tests/PKGconf.mak:
455         * tests/intr0.c:
456         * cdl/hal_powerpc.cdl: 
457         Moved intr0 test to MPC8xx variant directory.
458
459 2000-02-10  Jesper Skov  <jskov@redhat.com>
460
461         * include/hal_intr.h: Added HAL_VSR_SET_TO_ECOS_HANDLER
462
463         * src/vectors.S: Renamed default VSR handlers.
464
465 2000-02-07  Jesper Skov  <jskov@redhat.com>
466
467         * src/vectors.S: Cleaned up vector code a bit. Leave vector
468         initialization to variant code.
469         Add a bit of text explaining why exception code was changed.
470         Get rid of STARTUP_STUBS conditions.
471
472         * src/powerpc.ld: VSR table resides at fixed address.
473
474         * src/hal_misc.c: Fixed compiler warning.
475
476         * include/pkgconf/hal_powerpc.h: Add variant option.
477         Include variant headers.
478         
479         * include/ppc_regs.h: 
480         * include/hal_intr.h:
481         * include/hal_cache.h:
482         Moved variant definitions into new variant header files.
483
484         * cdl/hal_powerpc.cdl: Add interface for CPU variants.
485
486 2000-02-03  Jesper Skov  <jskov@redhat.com>
487
488         * tests/intr0.c: 
489         * tests/PKGconf.mak: 
490         * include/hal_cache.h:
491         * include/hal_intr.h:
492         * include/ppc_regs.h:
493         * include/ppc.inc:
494         * src/hal_intr.c:
495         * src/hal_misc.c:
496         * src/ppc_stub.c:
497         * src/vectors.S:
498         CYG_HAL_POWERPC_x->CYGPKG_...
499         
500 2000-01-28  Gary Thomas  <gthomas@cygnus.co.uk>
501
502         * src/powerpc.ld: Add support for network package.
503
504 2000-01-26  Jesper Skov  <jskov@redhat.com>
505
506         * include/hal_cache.h: Include plf_cache.h
507
508         * src/hal_misc.c: Moved cache init control settings to plf_cache.h
509
510 2000-01-24  Jesper Skov  <jskov@cygnus.co.uk>
511
512         * src/hal_misc.c: Depend on CYGSEM_HAL_ROM_MONITOR instead of
513         CYG_HAL_ROM_MONITOR.
514
515 2000-01-19  Hugo Tyson  <hmt@cygnus.co.uk>
516
517         * cdl/*.cdl: Add descriptions to a number of options &c which were
518         lacking same, also tidied up other typos as noticed en passant.
519
520 1999-12-02  John Dallaway  <jld@cygnus.co.uk>
521
522         * cdl/hal_powerpc.cdl:
523
524         Use the <PACKAGE> token in custom rules.
525
526 1999-12-01  John Dallaway  <jld@cygnus.co.uk>
527
528         * cdl/hal_powerpc.cdl:
529
530         Use the <PREFIX> token in custom rules.
531
532 1999-11-04  John Dallaway  <jld@cygnus.co.uk>
533
534         * cdl/hal_powerpc.cdl:
535
536         Output custom rule dependency information to .deps files in
537         the current directory.
538
539         Dispense with the need to create a 'src' sub-directory.
540
541 1999-11-03  John Dallaway  <jld@cygnus.co.uk>
542
543         * cdl/hal_powerpc.cdl: Define build options.
544
545 1999-09-28  Jesper Skov  <jskov@cygnus.co.uk>
546
547         * tests/intr0.c: Added some more debug output.
548
549 1999-09-23  Jonathan Larmour  <jlarmour@cygnus.co.uk>
550
551         * src/hal_misc.c (cyg_hal_exception_handler): Catch exceptions
552         generated from within the GDB stub so we can recover from bad memory
553         accesses
554         Also part of the fix for case 102104
555
556 1999-09-23  Jesper Skov  <jskov@cygnus.co.uk>
557         Case 102104
558         * include/hal_cache.h (HAL_ICACHE_SYNC): Invalidate I cache.
559
560 1999-09-06  Jesper Skov  <jskov@cygnus.co.uk>
561
562         * src/hal_misc.c (hal_null_call): 
563         * src/vectors.S: 
564         Trap calls to address 0.
565         
566 1999-09-01  Gary Thomas  <gthomas@cygnus.co.uk>
567
568         * src/hal_misc.c: Clean up list of included files.  <hal.h>
569         now provides target and platform specifics.
570
571         * src/hal_intr.c: CYGFUN_HAL_COMMON_KERNEL_SUPPORT should only
572         be defined if CYGPKG_KERNEL is defined.  This needs to be fixed
573         in a more generic fashion when full CDL becomes available.
574
575         * src/vectors.S: Exception and interrupt handling were enabling
576         CPU interrupts when it wasn't safe nor warranted.
577
578 1999-08-16  Jesper Skov <jskov@cygnus.co.uk>
579         From Bob Koninckx <bob.koninckx@mail.mech.kuleuven.ac.be>
580
581         * src/ppc_stub.c (__clear_single_step): Clear irq_state to prevent
582         interrupt avalanche.
583
584 1999-06-29  Hugo Tyson  <hmt@cygnus.co.uk>
585
586         * include/hal_intr.h (CYGNUM_HAL_EXCEPTION_DATA_ACCESS): Define
587         this for handling MACHINE_CHECK if an MPC860 - it never generates
588         ISI nor DSI exceptions, only machine check.  This allows libc to
589         catch SEGVs from this unexpected quarter.
590
591 1999-06-28  Hugo Tyson  <hmt@cygnus.co.uk>
592
593         * include/ppc_regs.h: Add proper definitions of timebase regs.
594
595         * tests/intr0.c: Add some useful debugging printouts and recording
596         of state, and make more platform-portable; the rate of PTA is not
597         always 1:32 wrt the timebase.
598
599 1999-06-27  Gary Thomas  <gthomas@cygnus.co.uk>
600
601         * src/vectors.S (_start): Call platform dependent IRQ setup (see
602         next note).
603
604         * src/hal_intr.c (hal_IRQ_init): New platform dependent function
605         used to setup whatever is necessary to handle interrupts.
606         Add basic "wiring" of CPM to SIU interrupts.
607
608         * include/hal_intr.h: Fix CPM interrupt macros - control register
609         is 32 bits, not 16.
610
611 1999-06-24  Jesper Skov  <jskov@cygnus.co.uk>
612
613         * misc/CPUMask8xx.c: Added.
614
615 1999-06-24  Hugo Tyson  <hmt@cygnus.co.uk>
616
617         * src/hal_misc.c (cyg_hal_exception_handler): If the decrementer
618         has underflowed when we are returning from an exception, then we
619         reset it here; this is harmless if all is well, and required if
620         the QUICC-equipped MPC860 is getting confused about interrupts
621         following an exception.  Only in QUICC configurations.
622
623 1999-06-22  Hugo Tyson  <hmt@cygnus.co.uk>
624
625         * src/vectors.S (_start): Support breaking back into the stub ROM
626         when we see a breakpoint, if RAM start and RAM-based vectors for
627         the stub.  Rather than using a direct jump, instead skip copying
628         the program exception vectors - leave the stub's vec in place.
629         Controlled by CYGPRI_STUBROM_HAS_RAM_VECTORS, which varies from
630         platform to platform.
631
632 1999-06-18  Hugo Tyson  <hmt@cygnus.co.uk>
633
634         * src/hal_misc.c (hal_enable_caches): Change the configuration,
635         the better to accommodate differing platform requirements viz a
636         viz cache enabling and so on.
637
638 1999-06-17  Hugo Tyson  <hmt@cygnus.co.uk>
639
640         * src/vectors.S (CYG_MSR): define correctly for copying vectors,
641         even if ROM start.  Complete system init for ROM start.
642
643 1999-06-15  Hugo Tyson  <hmt@cygnus.co.uk>
644
645         * include/ppc.inc: Add definitions of FUNC_START and FUNC_END.
646         They are needed by platform code.
647
648         * src/vectors.S: Remove definition of FUNC_START.
649
650 1999-06-11  Hugo Tyson  <hmt@cygnus.co.uk>
651
652         * src/vectors.S (_start): remove some platform-conditional
653         initialization code; it is now in hal_hardware_init in the
654         platform HAL.
655
656         * src/hal_misc.c: remove very-platform-conditional definition of
657         memory descriptor table - it is now in platform HALs.
658         
659         * include/ppc_regs.h: simplify definition of CYGARC_REG_IMM_BASE.
660
661         * include/hal_cache.h (CYGARC_MEMDESC_CACHE): ...and other
662         macros... add support for external definitions of memory
663         descriptor table used in platform-specific initialization of MMU.
664
665 1999-06-10  Hugo Tyson  <hmt@cygnus.co.uk>
666
667         * src/vectors.S (_start): Add better support for various startup
668         options, including CygMon loading.
669
670         * src/PKGconf.mak (COMPILE): remove quicc_smc.c; it has been
671         reorganized and renamed into the FADS component.
672
673         * include/quicc_smc.h, src/ppc_860.h, src/quicc_smc.c: removed;
674         reorganized and renamed into the FADS component.
675
676         * src/hal_misc.c (hal_idle_thread_action): Add some useful
677         debugging for interrupt/clock of the MBX860/PPC860; normally
678         disabled, so no effect on code.
679
680         * include/ppc_regs.h: Different default value for
681         CYGARC_REG_IMM_BASE if MBX board (ie. the way CygMon sets it up).
682         This is a temporary measure.
683
684 1999-06-08  Jesper Skov  <jskov@cygnus.co.uk>
685
686         * include/hal_intr.h: 
687         * src/vectors.S (hal_vsr_table): 
688         * src/hal_misc.c (hal_default_decrementer_isr): 
689         Use NOP default ISR for decrementer.
690         Fix hal_intr macros.
691         
692 1999-06-04  Jesper Skov  <jskov@cygnus.co.uk>
693         PR 20146
694         * src/ppc_860.h: Added padding to some structures, reported by
695         Jean-Dominique Orvoen (orvoen@email.enst.fr)
696
697 1999-05-26  Jesper Skov  <jskov@cygnus.co.uk>
698
699         * include/hal_cache.h (HAL_DCACHE_LOCK):
700         Fixed asm constraint.
701
702 1999-05-25  Jesper Skov  <jskov@cygnus.co.uk>
703
704         * include/hal_intr.h:
705         * src/vectors.S (hal_interrupt_stack_call_pending_DSRs): 
706         Added call_pending_DSR magic.
707
708 1999-05-21  Hugo Tyson  <hmt@cygnus.co.uk>
709
710         * include/hal_intr.h: Define HAL_INTERRUPT_STACK_BASE and
711         HAL_INTERRUPT_STACK_TOP so that stack usage macros in
712         kernel/.../stackmon.hxx can work.
713
714         * src/vectors.S (cyg_interrupt_stack_base): Define this symbol for
715         the interrupt stack and its friend for the stack top so that we
716         can publish them with nice names.
717
718 1999-05-13  Hugo Tyson  <hmt@cygnus.co.uk>
719
720         * include/hal_arch.h (HAL_THREAD_INIT_CONTEXT): Align stack
721         (rather conservatively) before use.
722
723 1999-04-28  Bart Veer  <bartv@cygnus.co.uk>
724
725         * src/PKGconf.mak: 
726         Remove the -n argument to tail, it does not appear to be required
727         on any supported host and causes problems with some
728         implementations of tail.
729
730 1999-04-19  Jesper Skov  <jskov@cygnus.co.uk>
731         PR 19861
732         * src/vectors.S (_start): Rewrote the hal_zero_bss code in
733         assembly. When compiling with -O0 the C function accesses the
734         previous stack frame upon return, causing a crash.
735
736 1999-04-15  Jonathan Larmour  <jlarmour@cygnus.co.uk>
737
738         * src/powerpc.ld: Define __bss_start/__bss_end around the BSS, and
739         __sbss_start/__sbss_end around the SBSS
740         * src/vectors.S (_start): Call C function to clear BSS.
741         * src/hal_misc.c (hal_zero_bss): Use __bss_end rather than _end when
742         clearing BSS. Clear SBSS similarly but separately since the MLT
743         may have them in non-contiguous parts of memory.
744         
745         These fix PR 19750
746
747 1999-04-14  Jesper Skov  <jskov@cygnus.co.uk>
748
749         * include/hal_cache.h: Added HAL_xCACHE_IS_ENABLED macros.
750
751 1999-04-14  Jonathan Larmour  <jlarmour@cygnus.co.uk>
752
753         * src/PKGconf.mak (EXTRAS): Don't generate extras.o here any more
754         But do define EXTRAS every time for the linker script
755
756 1999-04-09  Jesper Skov  <jskov@cygnus.co.uk>
757
758         * src/ppc_stub.c:
759         Moved get_register and put_register to hal_stub.c.
760
761 1999-04-08  John Dallaway  <jld@cygnus.co.uk>
762
763         * src/*.ld: Revised SECTION_* macro arguments to
764         avoid padded output sections (PR 19787)
765
766 1999-04-07  Gary Thomas  <gthomas@cygnus.co.uk>
767
768         * include/hal_arch.h (CYGNUM_HAL_STACK_SIZE_xxx): Increase to more
769         realistic values.  PR 19748.
770
771 1999-03-31  Jesper Skov  <jskov@cygnus.co.uk>
772         PR 19741
773         * src/vectors.S:
774         * src/ppc_stub.c (__computeSignal): 
775         Added some comments about the use of MSR/SRR1. Masked out reserved
776         bits of MSR before restoring it.
777         
778 1999-03-23  Jesper Skov  <jskov@cygnus.co.uk>
779
780         * include/hal_arch.h: Added stack values.
781
782 1999-03-22  Jonathan Larmour  <jlarmour@cygnus.co.uk>
783
784         * include/ppc_stub.h: Update copyright
785
786         * src/ppc_stub.c: Update copyright
787
788 1999-03-22  Hugo Tyson  <hmt@cygnus.co.uk>
789
790         * include/hal_arch.h: 
791         Use CYGNUM_HAL_STACK_SIZE_TYPICAL for the stack size instead of
792         CYGNUM_HAL_MINIMUM_STACK_SIZE.
793
794 1999-03-22  Jesper Skov  <jskov@cygnus.co.uk>
795
796         * tests/intr0.c: 
797         * include/ppc.inc: 
798         * include/hal_arch.h:
799         Cleaned up some FIX MEs.
800
801 1999-03-18  Jesper Skov  <jskov@cygnus.co.uk>
802
803         * include/ppc.inc: Removed exception safety margin.
804
805 1999-03-17  John Dallaway  <jld@cygnus.co.uk>
806
807         * src/PKGconf.mak: Remove dependence on echo '-e' switch.
808
809 1999-03-16  Jesper Skov  <jskov@cygnus.co.uk>
810
811         * src/hal_misc.c: Moved extern declarations out of function body
812         to avoid compiler warnings.
813
814 1999-03-12  Jesper Skov  <jskov@cygnus.co.uk>
815
816         * include/hal_arch.h (CYGNUM_HAL_MINIMUM_STACK_SIZE): Increased to
817         2kB for safety.
818
819         * include/ppc.inc: Reduced exception stack frame safety gap
820         to 64 bytes.
821
822 1999-03-12  Gary Thomas  <gthomas@cygnus.co.uk>
823
824         * include/hal_arch.h (CYGNUM_HAL_MINIMUM_STACK_SIZE): 
825         Added HAL stack size definition.
826
827 1999-03-10  Jesper Skov  <jskov@cygnus.co.uk>
828
829         * include/hal_intr.h (HAL_INTERRUPT_IN_USE): Added.
830
831 1999-03-08  Nick Garnett  <nickg@cygnus.co.uk>
832
833         * src/powerpc.ld:
834         Added alignment before definition of __DEVTAB__.        
835
836 1999-03-08  Jesper Skov  <jskov@cygnus.co.uk>
837
838         * include/hal_intr.h: Removed workaround.
839
840 1999-03-05  Jesper Skov  <jskov@cygnus.co.uk>
841
842         * include/hal_intr.h (cyg_hal_interrupt_set_level): Disable this
843         function as a temporary workaround to PR 19400.
844
845 1999-03-05  Gary Thomas  <gthomas@cygnus.co.uk>
846
847         * src/PKGconf.mak: 
848         * src/powerpc.ld: Clean up I/O package changes.
849
850 1999-03-04  Jonathan Larmour  <jlarmour@cygnus.co.uk>
851
852         * src/powerpc.ld:
853         Add INPUT(libextras.a), add libextras.a to GROUP() and include
854         new section for device driver table
855
856 1999-02-26  Jesper Skov  <jskov@cygnus.co.uk>
857
858         * include/hal_intr.h: Removed FIX ME.
859
860 1999-02-26  Jesper Skov  <jskov@cygnus.co.uk>
861
862         * include/hal_intr.h:
863         * src/ppc_stub.c (__computeSignal): 
864         Renamed CYGNUM_HAL_HWVECTOR_DECREMENTER to
865         CYGNUM_HAL_VECTOR_DECREMENTER.
866
867 1999-02-25  Nick Garnett  <nickg@cygnus.co.uk>
868
869         * src/vectors.S:
870         Changed label used to access scheduler lock to one that is not
871         mangled by C++. This is intended to make support for interrupt
872         handling in non-kernel configurations easier.
873
874 1999-02-23  Jesper Skov  <jskov@cygnus.co.uk>
875
876         * src/ppc_stub.c (__computeSignal): Renamed
877         CYGNUM_HAL_VECTOR_DECREMENTER to CYGNUM_HAL_HWVECTOR_DECREMENTER.
878
879 1999-02-20  Jonathan Larmour  <jlarmour@cygnus.co.uk>
880
881         * include/hal_arch.h: 
882         Rename deliver_exception() -> cyg_hal_deliver_exception()
883
884         * include/hal_intr.h:
885         Reorganise vector/interrupt/exception names according to purpose
886         Add decoded exception vectors (decoded from PROGRAM exception)
887         QA improvements
888
889         * include/ppc_regs.h:
890         Add defines for access to SRR0 and SRR1 registers
891
892         * src/hal_intr.c:
893         Rename CYG_VECTOR_* according to hal_intr.h changes above
894         QA improvements
895
896         * src/hal_misc.c:
897         Decode PROGRAM vector using SSR1 register
898         QA improvements
899
900         * src/ppc_stub.c:
901         Rename CYG_VECTOR_* according to hal_intr.h changes above
902
903         * src/quicc_smc.c:
904         Add a FIX ME
905
906         * src/vectors.S:
907         Rename exception_handler -> cyg_hal_exception_handler
908
909         * tests/intr0.c:
910         Rename CYG_VECTOR_* -> CYGNUM_HAL_INTERRUPT_* due to hal_intr.h
911         changes above
912
913 1999-02-17  Jesper Skov  <jskov@cygnus.co.uk>
914
915         * src/ppc_stub.c (__computeSignal): Moved special GDB signal
916         handling to generic-stub.c.
917
918 1999-02-17  Jesper Skov  <jskov@cygnus.co.uk>
919
920         * src/hal_misc.c (hal_default_isr): Always print out vector number
921         in hal_default_interrupt.
922
923 1999-02-16  Jesper Skov  <jskov@cygnus.co.uk>
924
925         * src/vectors.S: Changed set_debug_traps to initialize_stub.
926
927         * src/ppc_stub.c: 
928         * include/ppc_stub.h: 
929         Cleaned up to only include arch specific stub code.
930
931 1999-02-05  Jesper Skov  <jskov@cygnus.co.uk>
932
933         * src/ppc_stub.c: 
934         * src/hal_misc.c: 
935         * src/hal_intr.c: 
936         * src/vectors.S: 
937         * include/ppc_regs.h: 
938         * include/hal_intr.h: 
939         * include/hal_cache.h: 
940         Cleaned up the MPC823/850 code.
941
942 1999-02-05  Jesper Skov  <jskov@cygnus.co.uk>
943
944         * include/hal_intr.h (HAL_CLOCK_LATENCY): Return 0 when the result
945         is due to a bogus timer interrupt.
946
947 1999-02-05  John Dallaway  <jld@cygnus.co.uk>
948
949         * src/powerpc.ld: Add LMA_EQ_VMA macro definition.
950
951 1999-01-29  Jesper Skov  <jskov@cygnus.co.uk>
952
953         * src/hal_misc.c: 
954         * src/ppc_stub.c: 
955         * src/vectors.S: 
956         * include/ppc_regs.h: 
957         * include/hal_intr.h: 
958         * include/hal_cache.h:
959         Added MPC823/850 support. Some of it needs cleaning up a bit.
960
961 1999-01-22  Jesper Skov  <jskov@cygnus.co.uk>
962         PR 18879
963         * include/quicc_smc.h:
964         * src/quicc_smc.c:
965         Fix compiler warnings.
966
967 1999-01-22  Jesper Skov  <jskov@cygnus.co.uk>
968
969         * include/quicc_smc.h:
970         * src/ppc_860.h:
971         * src/quicc_smc.c:
972         Added UNSUPPORTED headers.
973
974 1999-01-21  Jonathan Larmour  <jlarmour@cygnus.co.uk>
975
976         * src/hal_misc.c (cyg_hal_invoke_constructors): 
977         Add code to deal with CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG
978         Tidy up and update description header
979         Shorten needlessly long lines
980
981         * src/vectors.S:
982         Remove all traces of non-CYG_KERNEL_USE_INIT_PRIORITY code
983         Tidy up and update description header
984         Shorten needlessly long lines
985
986 1999-01-21  Jesper Skov  <jskov@cygnus.co.uk>
987         Merge with FADS branch.
988
989         1998-12-17  Jesper Skov  <jskov@cygnus.co.uk>
990
991         * src/ppc_860.h: Added as private header.
992
993         * src/PKGconf.mak (COMPILE): Added quicc_smc.c.
994
995         * include/quicc_smc.h: Prefix exported names with cyg_.
996
997         * src/quicc_smc.c: Use ppc_860.h as a private header.
998         Made all but the necessary functions static. Prefixed the rest
999         with cyg_.
1000         Moved the RS232 interface enabling here from hal_diag since it
1001         is apparently required by both hal_stub and hal_diag.
1002
1003 1999-01-20  Jesper Skov  <jskov@cygnus.co.uk>
1004
1005         * src/powerpc.ld (SECTION_bss): Added align statement.
1006
1007 1999-01-20  Jesper Skov  <jskov@cygnus.co.uk>
1008
1009         * src/vectors.S: Changed _STUB to _STUBS. 
1010
1011 1999-01-19  Jesper Skov  <jskov@cygnus.co.uk>
1012
1013         * src/vectors.S: 
1014         * src/hal_misc.c (hal_enable_caches):
1015         Also support HAL_STARTUP_STUB.
1016         
1017 1999-01-15  Jesper Skov  <jskov@cygnus.co.uk>
1018
1019         * src/hal_misc.c:
1020         * src/hal_intr.c: 
1021         Move external declarations out of functions.
1022
1023 1999-01-14  Jesper Skov  <jskov@cygnus.co.uk>
1024
1025         * src/vectors.S (_start): Copy data to RAM before calling C
1026         functions (or "don't initialize the MMU with random data").
1027
1028         * src/hal_misc.c: ROM is cache inhibited.
1029
1030 1999-01-13  Gary Thomas  <gthomas@cygnus.co.uk>
1031
1032         * include/basetype.h: CYG_DOUBLE_BYTEORDER now in <infra/cyg_type.h>
1033
1034 1999-01-12  Gary Thomas  <gthomas@cygnus.co.uk>
1035
1036         * include/basetype.h (CYG_DOUBLE_BYTEORDER): Define ordering
1037         for words within double.
1038
1039 1999-01-11  Jesper Skov  <jskov@cygnus.co.uk>
1040
1041         * include/hal_io.h: Fixed indentation.
1042
1043 1999-01-05  Jesper Skov  <jskov@cygnus.co.uk>
1044
1045         * include/hal_intr.h (HAL_CLOCK_RESET): Undid below change;
1046         doesn't always work.
1047
1048 1998-12-15  Jesper Skov  <jskov@cygnus.co.uk>
1049
1050         * include/hal_intr.h (HAL_CLOCK_RESET): Add rather than store to
1051         avoid wall-clock drift.
1052
1053 1998-12-11  Jesper Skov  <jskov@cygnus.co.uk>
1054
1055         * src/vectors.S: Cleaned up code to use r14/r15 during
1056         interrupt/exception handling, which is necessary to support
1057         -msdata.
1058         Put hal tables in sdata section when smaller than threshold.
1059         
1060 1998-12-11  Jesper Skov  <jskov@cygnus.co.uk>
1061
1062         * include/hal_cache.h: Defined three more macros.
1063
1064 1998-12-10  Jesper Skov  <jskov@cygnus.co.uk>
1065
1066         * include/hal_cache.h: Defined three more macros.
1067
1068 1998-12-10  Jesper Skov  <jskov@cygnus.co.uk>
1069
1070         * src/vectors.S: Make the program exception jump to ROM if no GDB
1071         stub was configured.
1072
1073 1998-12-10  Jesper Skov  <jskov@cygnus.co.uk>
1074
1075         * include/hal_cache.h: Added HAL_ICACHE_UNLOCK_ALL and
1076         HAL_DCACHE_UNLOCK_ALL for sim (unused).
1077
1078 1998-12-10  Jesper Skov  <jskov@cygnus.co.uk>
1079
1080         * include/hal_cache.h: Defined cache locking macros. Changed
1081         invalidate macros not to unlock.
1082
1083         * include/ppc_regs.h: Added some instruction cache definitions.
1084
1085         * src/hal_misc.c (hal_enable_caches): Unlock caches before
1086         invalidating.
1087
1088 1998-12-09  Jesper Skov  <jskov@cygnus.co.uk>
1089
1090         * src/hal_misc.c (hal_enable_caches): Don't enable caches when
1091         configured for ROM.
1092
1093 1998-12-09  Jesper Skov  <jskov@cygnus.co.uk>
1094
1095         * include/ppc_regs.h: TBx_W are SPR registers.
1096
1097         * src/vectors.S (_init_CPU, _start): Added a few sync instructions.
1098
1099 1998-12-08  Jesper Skov  <jskov@cygnus.co.uk>
1100
1101         * include/ppc_regs.h (CYGARC_REG_IMM_OR_CSNT): Fixed typo.
1102
1103 1998-12-08  Jesper Skov  <jskov@cygnus.co.uk>
1104
1105         * include/ppc_regs.h: Added more definitions.
1106
1107 1998-12-07  Jesper Skov  <jskov@cygnus.co.uk>
1108
1109         * src/vectors.S (_init_CPU): Proper solution to the problem of
1110         MMU/cache initialization.
1111
1112 1998-12-07  Jesper Skov  <jskov@cygnus.co.uk>
1113
1114         * src/vectors.S (_start): Map RAM before accessing it. Only
1115         disable MMU just before (re)programming it.
1116
1117 1998-12-04  Jesper Skov  <jskov@cygnus.co.uk>
1118
1119         * src/hal_intr.c:
1120         * src/hal_intr.cxx:
1121         * src/PKGconf.mak:
1122         Renamed hal_intr.cxx to hal_intr.c.
1123         
1124 1998-12-04  Jesper Skov  <jskov@cygnus.co.uk>
1125
1126         * tests/intr0.c: Improved somewhat. Also fixes PR 18440.
1127
1128         * src/hal_intr.cxx:
1129         * src/PKGconf.mak:
1130         Added hal_intr.cxx.
1131
1132         * include/ppc_regs.h: More register definitions.
1133
1134         * include/hal_intr.h: Handle decrementer in HAL_INTERRUPT_ mask
1135         and configure macros.
1136         Added declarations for interrupt arbiters.
1137
1138 1998-12-02  Jesper Skov  <jskov@cygnus.co.uk>
1139         PR 18425
1140
1141         * src/vectors.S:
1142         * include/ppc_regs.h:
1143         * include/hal_intr.h:
1144         Prefixed remaining definitions used by hal_intr.h.
1145
1146         * include/hal_intr.h:
1147         Added more definitions. Fixed wrong TBx_R values.
1148
1149 1998-12-01  Jesper Skov  <jskov@cygnus.co.uk>
1150
1151         * tests/PKGconf.mak:
1152         * tests/intr0.c:
1153         First simple test of 860 specific interrupt handling.
1154
1155         * src/vectors.S (__default_interrupt_vsr): Don't shift decoded
1156         vector number.
1157
1158         * src/hal_misc.c (hal_clear_MMU): Added.
1159         (hal_MMU_init): Call hal_clear_MMU to ensure a sane MMU state.
1160
1161         * include/ppc_regs.h: Added even more definitions.
1162
1163         * include/hal_intr.h: Fixed interrupt functions to deal with
1164         interleaved IRQ/LVL vectors.
1165
1166 1998-11-30  Jesper Skov  <jskov@cygnus.co.uk>
1167
1168         * src/vectors.S (__default_interrupt_vsr): Always call
1169         cyg_hal_gdb_isr when GDB_BREAK support is enabled.
1170         Added comment about nesting.
1171
1172 1998-11-30  Jesper Skov  <jskov@cygnus.co.uk>
1173
1174         * include/ppc_regs.h: Added a few more definitions.
1175
1176         * src/vectors.S (decode_interrupt): Added 1st level arbitration
1177         for MPC860.
1178
1179         * include/hal_intr.h: Added (properly ordered) LVL vectors.
1180         Changed if/else to switch/case.
1181         Added configuration of priorities/level.
1182
1183 1998-11-30  Jesper Skov  <jskov@cygnus.co.uk>
1184
1185         * src/vectors.S (decode_interrupt): Update the vector in the state
1186         frame.
1187
1188 1998-11-27  Jesper Skov  <jskov@cygnus.co.uk>
1189
1190         * include/ppc_regs.h: Added more 860 IMM registers.
1191
1192         * include/hal_io.h: Changed HAL_IO_BARRIER so it can be used from
1193         C++.
1194
1195         * include/hal_intr.h: First part of 860 interrupt controller
1196         support.
1197
1198         * src/vectors.S: 
1199         * include/hal_intr.h:
1200         Exchanged extern and decrementer interrupt ISR vectors to allow
1201         more sensible extension.
1202         
1203 1998-11-27  Jesper Skov  <jskov@cygnus.co.uk>
1204
1205         * src/hal_misc.c: The memory map descriptor table is now weakly
1206         defined so applications can override it.
1207
1208 1998-11-26  Jesper Skov  <jskov@cygnus.co.uk>
1209
1210         * include/ppc_regs.h: 
1211         * src/hal_misc.c (hal_map_memory):
1212         Added handling of Guarded attribute.
1213
1214 1998-11-26  Jesper Skov  <jskov@cygnus.co.uk>
1215
1216         * include/hal_arch.h: Added definition for magic constant.
1217
1218 1998-11-26  Jesper Skov  <jskov@cygnus.co.uk>
1219
1220         * src/vectors.S: 
1221         * include/hal_arch.h: 
1222         * include/ppc.inc:
1223         Moved SPR definitions to ppc_regs.h.
1224         
1225 1998-11-26  Jesper Skov  <jskov@cygnus.co.uk>
1226
1227         * src/vectors.S: 
1228         * src/ppc_stub.c: 
1229         * src/hal_misc.c: 
1230         Changes due to ppc_regs.h cleanup.
1231
1232         * src/ppc_stub.h: Added convenience definition for SP register.
1233
1234         * include/ppc_regs.h: Got rid of GDB register definitions.
1235         Cleaned up a bit.
1236
1237         * include/ppc_regs.h: 
1238         * include/hal_cache.h: 
1239         Prefixed register names with CYGARC_REG_ to avoid name space
1240         pollution.
1241
1242         * include/hal_arch.h: 
1243         * src/context.S: 
1244         Replaced magic constants in jmpbuf with defines.
1245
1246 1998-11-25  Jesper Skov  <jskov@cygnus.co.uk>
1247
1248         * src/vectors.S (__start): Got rid of a few magic constants.
1249
1250         * include/hal_intr.h (HAL_CLOCK_INITIALIZE,
1251         HAL_CLOCK_RESET): Cleaned up a bit.
1252
1253         * include/ppc_regs.h: Added DC_ADR_ and TBU/TBL macros.
1254
1255         * include/hal_cache.h: Got rid of a few magic constants. 
1256         Changed types in cyg_memdesc_t. 
1257         * src/hal_misc.c (hal_map_memory): Changed argument types.
1258
1259         * include/hal_arch.h: Changed a few comments.
1260
1261 1998-11-23  Jesper Skov  <jskov@cygnus.co.uk>
1262
1263         * src/vectors.S: Cleaned up CYG_MSR definition.
1264
1265         * src/hal_misc.c (mem_map): Added mapping for SIM.
1266         (hal_map_memory): Added 603 BAT mapping.
1267
1268         * include/ppc_regs.h: Added definitions for BATs.
1269
1270 1998-11-19  Jesper Skov  <jskov@cygnus.co.uk>
1271
1272         * include/ppc_regs.h: 
1273         * include/hal_cache.h: 
1274         Use operand constants to pass macro values to assembly code.
1275
1276 1998-11-18  Jesper Skov  <jskov@cygnus.co.uk>
1277
1278         * src/context.S: 
1279         * include/ppc.inc: 
1280         * include/hal_arch.h:
1281         Improved GDB thread info output by making a context switch frame
1282         look like an exception/interrupt frame.
1283         
1284 1998-11-18  Gary Thomas  <gthomas@cygnus.co.uk>
1285
1286         * include/hal_intr.h: Add support for interrupt latency
1287         measurements, controlled by CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY.
1288
1289 1998-11-18  Jesper Skov  <jskov@cygnus.co.uk>
1290
1291         * include/ppc.inc: Renamed CYG_HAL_POWERPC_MP860 to
1292         CYG_HAL_POWERPC_MPC860.
1293
1294 1998-11-17  Jesper Skov  <jskov@cygnus.co.uk>
1295
1296         * hal/powerpc/arch/current/include/hal_cache.h
1297         * hal/powerpc/arch/current/include/hal_intr.h
1298         * hal/powerpc/arch/current/include/ppc_regs.h
1299         * hal/powerpc/arch/current/src/hal_misc.c
1300         * hal/powerpc/arch/current/src/ppc_stub.c
1301         * hal/powerpc/arch/current/src/vectors.S
1302         Renamed CYG_HAL_POWERPC_MP860 to CYG_HAL_POWERPC_MPC860.
1303
1304 1998-11-16  Jesper Skov  <jskov@cygnus.co.uk>
1305
1306         * src/vectors.S:
1307         * include/hal_intr.h: 
1308         Added vector translation.
1309
1310         * src/vectors.S: Use r14 instead of r15 in interrupt handler.
1311
1312 1998-11-09  Jesper Skov  <jskov@cygnus.co.uk>
1313
1314         * include/hal_cache.h: Added memory mapping structure.
1315
1316         * src/hal_misc.c (hal_MMU_init): Cleaned up memory mapping.
1317
1318 1998-11-09  Jesper Skov  <jskov@cygnus.co.uk>
1319
1320         * src/hal_misc.c (hal_enable_caches): Also disable serialization.
1321
1322         * include/ppc_regs.h: Added more register definitions.
1323
1324 1998-11-06  Jesper Skov  <jskov@cygnus.co.uk>
1325
1326         * src/vectors.S: Don't enable MMU when target is SIM. Caches are
1327         not used anyway, and there's a serious performance hit.
1328         (added comment).
1329
1330 1998-11-04  Jesper Skov  <jskov@cygnus.co.uk>
1331
1332         * include/hal_cache.h: Proper separation of SIM and MPC860 cache
1333         defines.
1334
1335 1998-11-04  Jesper Skov  <jskov@cygnus.co.uk>
1336
1337         * src/ppc_stub.c (cyg_hal_gdb_interrupt,
1338         cyg_hal_gdb_remove_break): Add cache flushes after fiddling with
1339         the program data.
1340
1341         * src/vectors.S (__default_interrupt_vsr,
1342         __default_exception_vsr): Enable MMU on entry.
1343
1344 1998-11-04  Jesper Skov  <jskov@cygnus.co.uk>
1345
1346         * src/vectors.S: Make calls to MMU init function and cache
1347         enabling function. Enable MMU.
1348
1349         * src/hal_misc.c (hal_map_memory, hal_MMU_init,
1350         hal_enable_caches): Added.
1351
1352         * include/ppc_regs.h: Added MMU register definitions.
1353
1354         * include/hal_cache.h: Enabled cache macros and made them work
1355         properly.
1356
1357 1998-11-02  Jesper Skov  <jskov@cygnus.co.uk>
1358
1359         * include/ppc_stub.h: 
1360         * src/ppc_stub.c (cyg_hal_gdb_interrupt,
1361         cyg_hal_gdb_remove_break): New names for the new GDB BREAK support
1362         functions.
1363
1364 1998-11-02  Jesper Skov  <jskov@cygnus.co.uk>
1365
1366         * src/vectors.S (__default_interrupt_vsr): Fill r15 before doing
1367         cyg_hal_gdb_isr call, or it might be skipped.
1368         cyg_hal_gdb_isr now takes PC as first argument.
1369
1370         * src/ppc_stub.c:
1371         * src/ppc_stub.h:
1372         Added proper GDB interrupt support.
1373
1374 1998-10-27  Jesper Skov  <jskov@cygnus.co.uk>
1375
1376         * src/vectors.S: Also save registers 13-15 in minimum context for
1377         convenience.
1378
1379 1998-10-25  Jesper Skov  <jskov@cygnus.co.uk>
1380
1381         * src/vectors.S: Removed pkgconf/kernel.h include fix-me.
1382
1383 1998-10-23  Jesper Skov  <jskov@cygnus.co.uk>
1384
1385         * include/ppc_stub.h: Include generic-stub.h from hal.
1386
1387 Fri Oct 23 04:47:11 1998  Jonathan Larmour  <jlarmour@cygnus.co.uk>
1388
1389         * include/hal_cache.h: 
1390         Include HAL configuration file to be sure we get all the right
1391         defines. This is a potential problem, that I had thought may be
1392         the cause of PR 17839, but that turned out to be a config tool
1393         problem
1394         
1395 1998-10-16  Bart Veer  <bartv@cygnus.co.uk>
1396
1397         * src/vectors.S (__interrupt_stack):
1398         Made the interrupt stack size configurable.
1399
1400 1998-10-15  Jesper Skov  <jskov@cygnus.co.uk>
1401
1402         * src/ppc_stub.c (__computeSignal): Use SIGSYS for 'sc'
1403         exceptions.
1404
1405 1998-10-15  Jesper Skov  <jskov@cygnus.co.uk>
1406         PR 17808
1407
1408         * include/hal_arch.h (HAL_JMP_BUF_SIZE): Increased to 23.
1409
1410         * src/context.S (hal_setjmp, hal_longjmp): Also save CR[2-4].
1411
1412 1998-10-15  Jesper Skov  <jskov@cygnus.co.uk>
1413
1414         * src/vectors.S: CYGDBG_KERNEL_DEBUG_GDB_INCLUDE_STUBS changed to
1415         CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS.
1416
1417 1998-10-15  Jesper Skov  <jskov@cygnus.co.uk>
1418
1419         * src/ppc_stub.c: Replaced include <signal.h> with SIGxxx
1420         definitions.
1421
1422 1998-10-15  Jesper Skov  <jskov@cygnus.co.uk>
1423
1424         * src/ppc_stub.c: Graceful error if attempted compiled for
1425         simulator. 
1426         Also do proper include of dbg-threads-api.h.
1427
1428         * src/vectors.S: Changed CYG_HAL_GDB_BREAK to
1429         CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT.
1430
1431 1998-10-15  Jesper Skov  <jskov@cygnus.co.uk>
1432
1433         * src/ppc_stub.c (single_step, clear_single_step): Disable
1434         interrupts when doing a single-step.
1435
1436 1998-10-14  Nick Garnett  <nickg@cygnus.co.uk>
1437
1438         * include/hal_io.h: 
1439         * src/ppc_stub.c: 
1440         * src/hal_misc.c:
1441         Minor modifications to permit building without kernel.
1442
1443 1998-10-14  Jesper Skov  <jskov@cygnus.co.uk>
1444
1445         * include/hal_intr.h (HAL_QUERY_INTERRUPTS): Fixed to do the right
1446         thing.
1447
1448 1998-10-13  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1449
1450         * src/ppc_stub.c: 
1451         * src/hal_misc.c: 
1452         Added thread support. Primarily a change in the way registers are
1453         accessed.
1454
1455         * include/hal_arch.h (HAL_GET_GDB_REGISTERS,
1456         HAL_SET_GDB_REGISTERS): Added a few more registers.
1457
1458 1998-10-12  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1459
1460         * Reverted below to avoid problems with test farm. Waiting for
1461         approval of other diffs.
1462
1463 1998-10-12  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1464
1465         * src/ppc_stub.c: 
1466         * src/hal_misc.c: 
1467         Added thread support. Primarily a change in the way registers are
1468         accessed.
1469
1470         * include/hal_arch.h (HAL_GET_GDB_REGISTERS,
1471         HAL_SET_GDB_REGISTERS): Added a few more registers.
1472
1473 1998-10-12  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1474
1475         * include/ppc_stub.h: Added CYGONCE protection.
1476         Fixed warning.
1477
1478 1998-10-09  Jesper Skov  <jskov@cygnus.co.uk>
1479
1480         * include/hal_intr.h: Added HAL_TRANSLATE_VECTOR.
1481
1482 1998-10-08  Jesper Skov  <jskov@cygnus.co.uk>
1483
1484         * src/vectors.S: Protect kernel.h inclusion by CYGPKG_KERNEL.
1485
1486 1998-10-08  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1487
1488         * include/hal_arch.h
1489         * include/ppc_regs.h
1490         * src/hal_misc.c
1491         Changed /**/ comments to //.
1492
1493 1998-10-08  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1494
1495         * src/makefile: Removed.
1496
1497 1998-10-08  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1498
1499         * include/basetype.h:
1500         * include/hal_arch.h:
1501         * include/hal_cache.h:
1502         * include/hal_intr.h:
1503         * include/hal_io.h:
1504         * include/ppc_regs.h:
1505         * include/pkgconf/hal_powerpc.h:
1506         * src/context.S:
1507         * src/hal_misc.c:
1508         * src/vectors.S:
1509         Expanded TABs.
1510
1511 1998-10-08  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1512
1513         * src/vectors.S: Added GDB interrupt support.
1514         Call GDB stub init at startup.
1515
1516 1998-10-08  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1517
1518         * include/ppc_regs.h: Added defines for Internal Memory Map. Added
1519         CYGONCE protection.
1520
1521 1998-10-07  Jesper Skov  <jskov@cygnus.co.uk>
1522
1523         * include/hal_io.h: Enforce in-order IO.
1524
1525 1998-10-01  Jesper Skov  <jskov@cygnus.co.uk>
1526
1527         * src/vectors.S (_start): Comment change.
1528
1529         * include/hal_intr.h: Added empty HAL_INTERRUPT_SET_LEVEL macro.
1530
1531 Thu Sep 17 17:40:01 1998  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1532
1533         * src/vectors.S: Simulator does not support DER register.
1534
1535 1998-09-14  Bart Veer  <bartv@cygnus.co.uk>
1536
1537         * src/PKGconf.mak: 
1538         Made vectors.o dependent on the various files that can contain
1539         makefile variables or rules. This is needed after changes to
1540         pkgconf.tcl for PRs 17195 and 17286.
1541
1542 1998-09-12  Bart Veer  <bartv@cygnus.co.uk>
1543
1544         * include/pkgconf/hal_powerpc.h:
1545         Added missing descriptions (PR 17184)
1546
1547         * src/hal_misc.c (exception_handler): 
1548         Sort out exception handling options (PR 16953)
1549
1550 Fri Sep  4 12:03:54 1998  Jesper Skov  <jskov@cygnus.co.uk>
1551
1552         * src/context.S: Always save/restore CR as the compiler may only
1553         do a partial restore.
1554
1555 Thu Sep  3 10:12:46 1998  Jesper Skov  <jskov@cygnus.co.uk>
1556
1557         * include/hal_cache.h: Replaced CACHE macros with dummies. The
1558         errata for the revision A.2 MPC860 is pretty grim wrt cache side
1559         effects.
1560         
1561         * include/hal_cache.h: 
1562         * include/hal_io.h: 
1563         * include/hal_arch.h: 
1564         * include/hal_intr.h:
1565         Wrapped multi-line macros with CYG_MACRO_START/END.
1566
1567 1998-09-02  Bart Veer  <bartv@cygnus.co.uk>
1568
1569         * include/pkgconf/hal_powerpc.h:
1570         New header file for architecture-specific configuration options
1571
1572         * tests/PKGconf.mak: 
1573         * src/PKGconf.mak: 
1574         Sort out package naming conventions.
1575
1576 1998-09-01  Nick Garnett  <nickg@cygnus.co.uk>
1577
1578         * include/hal_intr.h:
1579         Added CYG_VSR_COUNT, CYG_EXCEPTION_COUNT and CYG_ISR_COUNT.
1580
1581 Tue Sep  1 14:43:48 1998  Jesper Skov  <jskov@cygnus.co.uk>
1582
1583         * include/hal_cache.h (HAL_DCACHE_SYNC): Write data in the cache
1584         back to memory.
1585         (HAL_ICACHE_SYNC): Do nothing.
1586
1587 Tue Sep  1 10:26:10 1998  Jesper Skov  <jskov@cygnus.co.uk>
1588
1589         * src/hal_misc.c: Define empty __eabi to override compiler
1590         generated version of the same.
1591
1592 Mon Aug 31 16:32:34 1998  Jesper Skov  <jskov@cygnus.co.uk>
1593
1594         * src/hal_misc.c (cyg_hal_invoke_constructors): Renamed from
1595         __eabi.
1596
1597 Mon Aug 31 16:31:18 1998  Jesper Skov  <jskov@cygnus.co.uk>
1598
1599         * src/vectors.S (_start): Call C++ constructors.
1600
1601 Mon Aug 31 15:32:22 1998  Jesper Skov  <jskov@cygnus.co.uk>
1602
1603         * src/vectors.S (__default_interrupt_vsr): Added config options:
1604         CYGFUN_HAL_COMMON_KERNEL_SUPPORT and
1605         CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK.
1606         (restore_state): Moved from bottom of __default_exception_vsr to
1607         bottom of __default_interrupt_vsr.
1608
1609 Mon Aug 31 13:33:04 1998  Jesper Skov  <jskov@cygnus.co.uk>
1610
1611         * src/ppc_stub.c (__computeSignal): Added handling of MC860
1612         specific exceptions.
1613         Made VECTOR_PROGRAM decode actual exception type.
1614
1615         * include/hal_intr.h: Defined MC860 specific vectors.
1616
1617 Mon Aug 31 10:12:44 1998  Jesper Skov  <jskov@cygnus.co.uk>
1618
1619         * src/hal_misc.c: 
1620         * src/vectors.S:
1621         Added ha_default_isr.
1622
1623         * include/hal_cache.h:
1624         * include/ppc_regs.h:
1625         Defined HAL_DCACHE_x macros.
1626
1627         * include/hal_arch.h:
1628         * src/hal_misc:
1629         Added hal_idle_thread_action.
1630
1631 1998-08-28  Bart Veer  <bartv@cygnus.co.uk>
1632
1633         * src/vectors.S, src/context.S, src/hal_misc.c, src/ppc_stub.c,
1634         include/hal_intr.h : 
1635         Updated for new kernel configuration option symbol names
1636
1637 Fri Aug 28 17:55:46 1998  Jesper Skov  <jskov@cygnus.co.uk>
1638
1639         * src/vectors.S: Added some more comments.
1640         (_start): Disable 860 "Development Support" as it breaks PowerPC
1641         standard single-stepping exceptions.
1642
1643         * src/ppc_stub.c: Handle single-step exceptions properly. Also
1644         enable exception-after-branch.
1645
1646 Fri Aug 28 17:41:34 1998  Jesper Skov  <jskov@cygnus.co.uk>
1647
1648         * include/ppc_regs.h: Added some more definitions.
1649
1650         * include/hal_cache.h: Defined HAL_ICACHE_x macros.
1651
1652         * include/hal_arch.h (HAL_BREAKINST): Use same opcode as GDB.
1653
1654 Fri Aug 28 10:11:06 1998  Jonathan Larmour  <jlarmour@cygnus.co.uk>
1655
1656         * src/vectors.S (_start): 
1657         Change call of main() to cyg_start(), and change comments
1658         accordingly. Definitely never call exit().
1659
1660 Thu Aug 27 15:30:27 1998  Jesper Skov  <jskov@cygnus.co.uk>
1661
1662         * include/ppc_stub.h (REGSIZE): Floats are 64 bit.
1663
1664 Thu Aug 27 13:58:16 1998  Jesper Skov  <jskov@cygnus.co.uk>
1665
1666         * src/hal_misc.c: Removed GDB C-C stuff again.
1667
1668 Wed Aug 26 16:05:53 1998  Jesper Skov  <jskov@cygnus.co.uk>
1669
1670         * src/hal_misc.c (hal_ctrlc_isr, hal_init_ctrlc_intr):
1671         Added GDB C-C support (temporary location).
1672
1673 Wed Aug 26 15:12:31 1998  Jesper Skov  <jskov@cygnus.co.uk>
1674
1675         * src/hal_misc.c (__eabi): Changed to match the constructor table
1676         generated by the linker script.
1677
1678 Wed Aug 26 09:38:07 1998  Jesper Skov  <jskov@cygnus.co.uk>
1679
1680         * include/hal_arch.h (HAL_GET_GDB_REGISTERS): Fixed typo.
1681         (HAL_SET_GDB_REGISTERS): Same.
1682
1683 1998-08-25  Nick Garnett  <nickg@cygnus.co.uk>
1684
1685         * src/vectors.S:
1686         Now pass pointer to saved registers as third argument to
1687         interrupt_end().
1688
1689         * include/hal_arch.h:
1690         Added macros to support GDB.
1691
1692 Tue Aug 25 16:57:27 1998  Jesper Skov  <jskov@cygnus.co.uk>
1693
1694         * src/ppc_stub.c: Comment changes.
1695
1696 Tue Aug 25 11:11:49 1998  Jesper Skov  <jskov@cygnus.co.uk>
1697
1698         * include/hal_intr.h (HAL_INTERRUPT_ATTACH): Added cast to avoid
1699         compiler warning.
1700
1701 Tue Aug 25 11:08:00 1998  Jesper Skov  <jskov@cygnus.co.uk>
1702
1703         * include/hal_arch.h (HAL_REORDER_BARRIER): Added side effect to
1704         "memory".
1705
1706 Mon Aug 24 13:15:07 1998  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1707
1708         * include/ppc_stub.h: Corrected NUMREGS.
1709
1710 Mon Aug 24 11:14:08 1998  Jesper Skov  <jskov@cygnus.co.uk>
1711
1712         * src/vectors.S (__default_exception_vsr): Don't access register
1713         hid0.
1714
1715 Mon Aug 24 10:37:04 1998  Jesper Skov  <jskov@cygnus.co.uk>
1716
1717         * src/vectors.S (_start): Removed non-functional OCD control.
1718
1719 1998-08-21  Nick Garnett  <nickg@cygnus.co.uk>
1720
1721         * include/hal_cache.h:
1722         Now includes cyg_type.h rather than ktypes.h.   
1723
1724 Thu Aug 20 17:43:50 1998  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1725
1726         * src/vectors.S: Disable OCD control to allow debugging of gdb
1727                 stub.
1728                 
1729         * src/vectors.S: Temporary stack definition.
1730
1731 Thu Aug 20 17:37:10 1998  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1732
1733         * src/hal_misc.c: Added GDB stub support.
1734
1735         * include/ppc.inc: Added some 860 register definitions.
1736
1737         * include/hal_arch.h: Added breakpoint stuff.
1738
1739 Thu Aug 20 16:07:03 1998  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1740
1741         * src/PKGconf.mak: Include GDB support files.
1742
1743 Thu Aug 20 16:00:21 1998  Jesper Skov  <jskov@lassi.cygnus.co.uk>
1744
1745         * include/ppc_stub.h:
1746         * include/ppc_regs.h:
1747         * src/ppc_stub.c:
1748         Added for GDB support.
1749
1750 Tue Aug 18 18:44:00 1998  Jesper Skov  <jskov@cygnus.co.uk>
1751
1752         * include/hal_intr.h: 
1753         * include/hal_arch.h:
1754         Use cyg_type.h rather than ktypes.h.
1755
1756 Tue Aug 18 18:38:43 1998  Jesper Skov  <jskov@cygnus.co.uk>
1757
1758         * include/basetype.h: Fixed typo.
1759
1760 1998-08-18  Nick Garnett  <nickg@cygnus.co.uk>
1761
1762         * src/context.S: 
1763         * src/hal_misc.c: 
1764         * include/hal_intr.h: 
1765         * src/vectors.S:
1766         Now uses hal.h rather than kernel.h.
1767
1768 Mon Aug 17 16:23:46 1998  Jesper Skov  <jskov@cygnus.co.uk>
1769
1770         * include/hal_intr.h (HAL_DISABLE_INTERRUPTS): Fix MACRO line
1771         continuation.
1772         (HAL_RESTORE_INTERRUPTS): Same.
1773
1774 //===========================================================================
1775 //####ECOSGPLCOPYRIGHTBEGIN####
1776 // -------------------------------------------
1777 // This file is part of eCos, the Embedded Configurable Operating System.
1778 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
1779 //
1780 // eCos is free software; you can redistribute it and/or modify it under
1781 // the terms of the GNU General Public License as published by the Free
1782 // Software Foundation; either version 2 or (at your option) any later version.
1783 //
1784 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
1785 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
1786 // FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1787 // for more details.
1788 //
1789 // You should have received a copy of the GNU General Public License along
1790 // with eCos; if not, write to the Free Software Foundation, Inc.,
1791 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
1792 //
1793 // As a special exception, if other files instantiate templates or use macros
1794 // or inline functions from this file, or you compile this file and link it
1795 // with other works to produce a work based on this file, this file does not
1796 // by itself cause the resulting work to be covered by the GNU General Public
1797 // License. However the source code for this file must still be made available
1798 // in accordance with section (3) of the GNU General Public License.
1799 //
1800 // This exception does not invalidate any other reasons why a work based on
1801 // this file might be covered by the GNU General Public License.
1802 //
1803 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
1804 // at http://sources.redhat.com/ecos/ecos-license/
1805 // -------------------------------------------
1806 //####ECOSGPLCOPYRIGHTEND####
1807 //===========================================================================