1 2005-07-29 Gary Thomas <gary@mlbassoc.com>
3 * include/arch.inc: Add one-time-include protection since newer
4 versions of the GNU assembler complain about redefining macros.
6 2005-03-14 Peter Korsgaard <jacmetd@sunsite.dk>
8 * src/redboot_linux_exec.c (do_exec): Correctly set bi_size.
10 2004-11-04 Peter Korsgaard <jacmet@sunsite.dk>
12 * src/ppc_stub.c (__is_single_step): Removed compiler warning
13 about pointer / integer comparison.
15 2004-05-27 Gary Thomas <gary@mlbassoc.com>
17 * src/redboot_linux_exec.c (do_exec): Be sensitive to value in
18 "entry_address" as this can indicate if the image to be executed
19 is valid (the "load" functions set it to "NO_MEMORY" when invalid)
21 2004-04-29 Jonathan Larmour <jifl@eCosCentric.com>
23 * include/hal_arch.h (HAL_SET_GDB_FLOATING_POINT_REGISTERS): Make
24 absolutely safe with respect to strict-aliasing.
25 (HAL_SET_GDB_FLOATING_POINT_REGISTERS): Ditto.
27 2004-04-23 Gary Thomas <gary@mlbassoc.com>
30 * src/redboot_linux_exec.c (do_exec): Fix compiler warning about bad
31 cast (dereferencing type-punned pointer will break strict-aliasing rules)
33 2004-04-22 Jani Monoses <jani@iv.ro>
35 * cdl/hal_powerpc.cdl :
36 Invoke tail with stricter syntax that works in latest coreutils.
38 2003-12-11 Gary Thomas <gary@mlbassoc.com>
40 * include/hal_intr.h: Add macros to manipulate machine check enable
43 2003-12-08 Gary Thomas <gary@mlbassoc.com>
45 * src/hal_misc.c (cyg_hal_exception_handler): Only declare __mem_fault_handler
46 if GDB stubs are included (and it will be used).
48 * src/vectors.S: Minor change which makes newer versions of assembler
49 happy (at least for binutils-2.14.90.0.6).
51 2003-12-05 Andrew Lunn <andrew.lunn@ascom.ch>
53 * include/hal_intr.h: hal_delay_us() is a C function.
55 2003-10-28 Gary Thomas <gary@mlbassoc.com>
57 * src/vectors.S: Revert change to interrupt handling (see below) which
58 was over-exuberant on platforms without MMU (but with FP).
60 2003-09-19 Gary Thomas <gary@mlbassoc.com>
62 * src/vectors.S: Respect initial MMU settings when handling interrupts
63 and exceptions. Previously, the code would always reenable the MMU,
64 even if it wasn't on when the interrupt occurred.
66 * include/hal_io.h: Allow variants to provide I/O definitions
68 * cdl/hal_powerpc.cdl: Allow override of CYGHWR_HAL_POWERPC_ENABLE_MMU
70 2003-08-28 Gary Thomas <gary@mlbassoc.com>
72 * src/redboot_linux_exec.c: New file - architecture level
73 support for booting Linux kernel from RedBoot.
75 * cdl/hal_powerpc.cdl: Linux booting from RedBoot is
76 now supported at the architecture level. Changes to support
77 architecture/platform layering.
79 2003-08-19 Gary Thomas <gary@mlbassoc.com>
81 * src/hal_intr.c (hal_IRQ_init): Precalculate clock tick per
82 microsecond (us) ratio to reduce overheads in delay. Without
83 this, delays of small numbers of microseconds were inaccurate.
85 2003-08-06 Bob Koninckx <bob.koninckx@mech.kuleuven.ac.be>
87 * src/vectors.S (cyg_hal_default_interrupt_vsr): Removed ifdef on
88 CYGFUN_HAL_COMMON_KERNEL_SUPPORT around call to interrupt_end().
90 2003-04-10 Nick Garnett <nickg@balti.calivar.com>
93 Added .eh_frame to data section. This is a stopgap fix to allow
94 C++ programs that define exceptions to link and run. It does not
95 allow them to actually throw exceptions, since that depends on
96 compiler changes that have not been made. Further, more
97 far-reaching, linker script changes will also be needs when that
99 Added libsupc++.a to GROUP() directive for GCC versions later than
102 2003-03-08 Jonathan Larmour <jifl@eCosCentric.com>
104 * include/hal_arch.h (HAL_THREAD_INIT_CONTEXT): Initialize
105 what would be FP and LR in the previous stack frame to make
106 GDB backtraces happy.
108 2003-01-03 Gary Thomas <gary@mlbassoc.com>
110 * include/hal_mem.h (CYGARC_MEMDESC_NOCACHE_PA): New macro which
111 allows defining non-cached space with non 1-1 mapping.
113 2002-12-24 Gary Thomas <gary@mlbassoc.com>
116 * cdl/hal_powerpc.cdl: Add option to allow ROM code to simply
117 jump to the startup code, instead of using an absolute address.
119 2002-11-14 Gary Thomas <gthomas@ecoscentric.com>
121 * src/vectors.S: Provide pointer to saved registers on interrupt.
122 This is necessary for profiling support.
124 2002-11-20 Gary Thomas <gary@mlbassoc.com>
126 * src/hal_mk_defs.c: Allow platforms to provide their own definitions.
128 2002-11-14 Bob Koninckx <bob.koninckx@mech.kuleuven.ac.be>
130 * include/hal_arch.h:
131 * include/ppc_stub.h:
133 floating point support in GDB - definitions/implementation
135 2002-11-13 Gary Thomas <gthomas@ecoscentric.com>
137 * src/hal_misc.c (hal_enable_caches): Support new CDL options for
138 how [mode] to enable DATA cache.
140 2002-08-05 Gary Thomas <gary@chez-thomas.org>
141 2002-08-05 Bob Koninckx <bob.koninckx@mech.kuleuven.ac.be>
143 * include/arch.inc: hal_fpu_load regs was not loading registers!
145 2002-08-01 Gary Thomas <gary@mlbassoc.com>
148 * include/hal_intr.h: Allow more variant/platform overrides.
150 2002-04-29 Jonathan Larmour <jlarmour@redhat.com>
153 Don't use .file as it can confuse debugging since the .file
154 doesn't contain the path and therefore the debugger will never
155 know where it lives! This conflicts with using -Wa,--gstabs.
157 2002-04-25 Jonathan Larmour <jlarmour@redhat.com>
159 * src/ppc_stub.c (__computeSignal): Only handle ITLB/DTLB MISS if
162 2002-04-24 Bob Koninckx <bob.koninckx@mech.kuleuven.ac.be>
163 2002-04-24 Jonathan Larmour <jlarmour@redhat.com>
165 * include/hal_arch.h (HAL_SavedRegisters): Add FP regs.
166 * include/arch.inc: Add FPU register names.
167 Implement hal_fpu_save and hal_fpu_load.
168 * src/context.S: save/restore FP regs.
169 * src/hal_mk_defs.c (main): Export CYGARC_JMPBUF_F* for FPU regs.
170 * src/ppc_stub.c (__computeSignal): SW_EMUL is support by 5xx.
171 ITLB and DTLB MISS only supported by 8xx.
172 * cdl/hal_powerpc.cdl (CYGHWR_HAL_POWERPC_VECTOR_BASE): Take
173 CYGHWR_HAL_POWERPC_FORCE_VECTOR_BASE_LOW into account.
175 2002-04-11 Gary Thomas <gthomas@redhat.com>
177 * src/hal_misc.c (hal_enable_caches): Change cache handling & setup to
178 be controlled by common CDL (like other platforms/architectures).
180 * src/hal_intr.c (hal_delay_us): Didn't work if there are less than
181 one decrementer tick per micro-second. Used a calculation that seems
182 to work no matter how the decrementer is configured.
184 2002-04-08 Gary Thomas <gthomas@redhat.com>
186 * src/vectors.S (_hal_hardware_init_done): Can't copy vectors until
187 DRAM is setup (like the comment said all along).
189 2002-03-08 Gary Thomas <gthomas@redhat.com>
191 * src/vectors.S (_hal_hardware_init_done): New label - used by
192 ROMRAM code to figure out relative addressing.
194 2002-01-23 Gary Thomas <gthomas@redhat.com>
196 * src/hal_mk_defs.c (main): Clean up compile warning.
198 2001-11-16 Nick Garnett <nickg@redhat.com>
200 * include/hal_arch.h (HAL_MSBIT_INDEX): Fixed this macro so that
203 2001-11-15 Jesper Skov <jskov@redhat.com>
205 * src/hal_misc.c (hal_arch_default_isr): Added return
206 statement (found by Christoph Csebits).
208 2001-02-23 Jesper Skov <jskov@redhat.com>
210 * src/powerpc.ld: Added .2ram section matching to .data section.
212 2001-02-05 Jesper Skov <jskov@redhat.com>
214 * src/ppc_stub.c (__computeSignal): Hack to allow thread debugging
217 2001-01-24 Jesper Skov <jskov@redhat.com>
219 * src/powerpc.ld: Added .sdata to .sdata pattern.
221 2001-01-16 Gary Thomas <gthomas@redhat.com>
223 * src/vectors.S (_start): Set up IRQ environment _before_ calling
224 constructors - since they may need it to work.
226 2001-01-15 Gary Thomas <gthomas@redhat.com>
228 * src/ppc_stub.c: Define new method for achieving single stepping
229 when processor (like 40x) does not support it in hardware. This
230 method will be invoked if the variant or plaform define the
231 symbol CYGNUM_HAL_NO_VECTOR_TRACE.
233 2001-01-03 Gary Thomas <gthomas@redhat.com>
235 * src/hal_intr.c (hal_delay_us): Fix some problems - didn't
236 always work properly, especially on fast processors.
238 2000-11-21 Gary Thomas <gthomas@redhat.com>
240 * src/vectors.S (rom_vectors): Special handling when vectors
241 can't be easily aligned, etc. (Work around messy hardware).
243 2000-11-04 Gary Thomas <gthomas@redhat.com>
245 * src/vectors.S: Minor changes in support of PPC40x. This
246 platform has no cache control - if the MMU is on, it's on.
247 This causes some interesting cache coherency problems in the
248 interrupt/exception handlers. Note: it may be possible to
249 overcome this by use of the DCCR register (untested).
251 * src/powerpc.ld: Fix problems with 'sbss6', etc.
253 * src/hal_mk_defs.c: Use variant/platform macros for additional
254 symbols, rather than direcly polluting this file.
256 * include/hal_intr.h: Allow variant/platform to define clock
257 setup (since the 40x does not have a decrementer!)
259 2000-10-31 Jonathan Larmour <jlarmour@redhat.com>
261 * src/powerpc.ld: Use .sdata.* rather than .sdata* so that .sdata2
262 doesn't get matched so that the linker script symbols are still valid.
265 2000-10-24 Jonathan Larmour <jlarmour@redhat.com>
267 * src/powerpc.ld: Match multiple sections where relevant (.bss*,
268 .sbss*, .sdata*, etc.)
270 2000-10-20 Jesper Skov <jskov@redhat.com>
272 * src/hal_misc.c: Update __mem_fault_handler declaration.
274 2000-10-20 Gary Thomas <gthomas@redhat.com>
276 * src/hal_intr.c (hal_delay_us):
277 * include/hal_intr.h (HAL_DELAY_US): New function.
279 2000-10-16 Jonathan Larmour <jlarmour@redhat.com>
281 * include/hal_arch.h (CYGARC_JMP_BUF_SIZE): Define hal_jmp_buf
284 2000-08-15 Gary Thomas <gthomas@redhat.com>
286 * src/hal_mk_defs.c: Export memory layout for use by assembly code.
288 2000-06-27 Jesper Skov <jskov@redhat.com>
290 * src/vectors.S: Removed unnecessary
291 CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT checks.
293 2000-06-21 Nick Garnett <nickg@cygnus.co.uk>
295 * src/ppc_stub.c (__is_breakpoint_function): Removed use of
296 CYG_LABEL_NAME() and added underscore to _breakinst.
299 Switched to new table definition mechanism.
301 * include/basetype.h: Removed definition of CYG_LABEL_NAME().
303 2000-06-15 Jesper Skov <jskov@redhat.com>
305 * include/hal_intr.h: Added HAL_DEFAULT_ISR.
307 2000-06-13 Jesper Skov <jskov@redhat.com>
309 * src/powerpc.ld (hal_virtual_vector_table): Added.
311 * src/hal_misc.c (hal_arch_default_isr): Added, replacing
312 hal_default_isr which was moved to common HAL.
314 * src/vectors.S: Changes to support ctrlC via virtual vector table.
316 2000-06-08 Jesper Skov <jskov@redhat.com>
318 * include/hal_arch.h (CYGARC_HAL_SAVE_GP, CYGARC_HAL_RESTORE_GP):
321 2000-04-14 Jesper Skov <jskov@redhat.com>
323 * src/hal_misc.c (hal_idle_thread_action): Moved some of the code
324 to variant idle functions which now get called.
325 (hal_enable_caches): Moved serialization code to 8xx variant init.
327 * src/vectors.S (restore_state): Use hal_fpu_load and
328 hal_variant_load. Reported by Sergei Organov (osv at javad.ru).
330 2000-04-11 Jesper Skov <jskov@redhat.com>
332 * src/powerpc.ld: VSR table location is controlled by CDL.
334 * cdl/hal_powerpc.cdl: Added new options to control vector base
335 and MMU activation. Based on a patch from Sergei Organov (osv at
338 2000-04-06 Jonathan Larmour <jlarmour@redhat.co.uk>
340 * include/hal_intr.h (HAL_CLOCK_RESET): Prevent warning
341 (patch thanks to Sergei Organov (osv at javad.ru))
343 2000-03-13 Jesper Skov <jskov@redhat.com>
345 * include/hal_intr.h (HAL_CLOCK_RESET): Add to decrementer instead
346 of storing, thus reducing time skew somewhat.
348 2000-03-02 Jesper Skov <jskov@redhat.com>
350 * src/vectors.S: Leave vectors for SIM.
352 * include/hal_intr.h: Clean up interrupt macros.
354 2000-03-01 Jonathan Larmour <jlarmour@redhat.co.uk>
356 * cdl/hal_powerpc.cdl: If including stubs, default to copying vectors
358 * include/ppc_stub.h: Make C++ safe
360 2000-03-01 Jesper Skov <jskov@redhat.com>
362 * cdl/hal_powerpc.cdl: CYGSEM_HAL_USE_ROM_MONITOR precludes
363 CYGSEM_HAL_POWERPC_COPY_VECTORS.
365 2000-02-29 Gary Thomas <gthomas@cygnus.co.uk>
367 * src/vectors.S (_start): Actually copy exception vectors if
368 "copy vectors" selected and not running from ROM (useful if
369 booting using PPCbug).
371 2000-02-28 Jesper Skov <jskov@redhat.com>
373 * cdl/hal_powerpc.cdl: Add copy vectors option.
374 * src/vectors.S: Leave out vectors if they are not used. Also
375 clean up r1/sp usage.
376 * include/arch.inc: CYGPKG_HAL_POWERPC_MPC603 ->
377 CYGPKG_HAL_POWERPC_PPC603
380 Ensure proper switch to interrupt stack for execution of DSRs:
381 * src/vectors.S: Leave interrupt enable in exception handling to
382 interrupt_end code. restore_state and
383 hal_interrupt_stack_call_pending_DSRs updated to use interupt
385 * src/context.S: Restore interrupt state on context load.
386 * include/arch.inc: Added interrupt macros.
387 * include/hal_arch.h: Init thread struct with interrupt setting.
389 2000-02-25 Jesper Skov <jskov@redhat.com>
392 * include/ppc_regs.h:
393 Mangle MSR symbols and remove CYG_MSR_NO_INTS.
395 2000-02-22 Jesper Skov <jskov@redhat.com>
399 * include/pkgconf/hal_powerpc.h:
400 * cdl/hal_powerpc.cdl:
401 * include/hal_arch.h:
402 Added option for stack frame debug walls.
406 * include/hal_arch.h:
407 Oops. hal_jmp_buf should be an array, or callers will
410 2000-02-21 Jesper Skov <jskov@redhat.com>
412 * src/vectors.S: Added context_size marker.
414 * include/hal_intr.h:
419 * cdl/hal_powerpc.cdl:
420 Added autogenerated assembly header with computed structure
421 offsets like in ARM HAL. Changed setjmp code to use generated
423 Made the file public to allow variant/arch sharing.
424 Use auto-created offsets for saving/restoring exception frames.
426 2000-02-16 Jesper Skov <jskov@redhat.com>
428 * cdl/hal_powerpc.cdl: removed fix me
430 2000-02-11 Jesper Skov <jskov@redhat.com>
432 * include/hal_cache.h:
434 Moved memory mapping definition to new file.
436 * include/hal_cache.h: Deleted 60x macros.
438 * src/hal_misc.c: Moved MMU functions to variant files.
440 * src/hal_intr.c (hal_IRQ_init): Moved code to MPC8xx variant
443 * include/hal_intr.h: Added hal_variant_IRQ_init declaration.
447 * cdl/hal_powerpc.cdl:
448 Moved intr0 test to MPC8xx variant directory.
450 2000-02-10 Jesper Skov <jskov@redhat.com>
452 * include/hal_intr.h: Added HAL_VSR_SET_TO_ECOS_HANDLER
454 * src/vectors.S: Renamed default VSR handlers.
456 2000-02-07 Jesper Skov <jskov@redhat.com>
458 * src/vectors.S: Cleaned up vector code a bit. Leave vector
459 initialization to variant code.
460 Add a bit of text explaining why exception code was changed.
461 Get rid of STARTUP_STUBS conditions.
463 * src/powerpc.ld: VSR table resides at fixed address.
465 * src/hal_misc.c: Fixed compiler warning.
467 * include/pkgconf/hal_powerpc.h: Add variant option.
468 Include variant headers.
470 * include/ppc_regs.h:
471 * include/hal_intr.h:
472 * include/hal_cache.h:
473 Moved variant definitions into new variant header files.
475 * cdl/hal_powerpc.cdl: Add interface for CPU variants.
477 2000-02-03 Jesper Skov <jskov@redhat.com>
481 * include/hal_cache.h:
482 * include/hal_intr.h:
483 * include/ppc_regs.h:
489 CYG_HAL_POWERPC_x->CYGPKG_...
491 2000-01-28 Gary Thomas <gthomas@cygnus.co.uk>
493 * src/powerpc.ld: Add support for network package.
495 2000-01-26 Jesper Skov <jskov@redhat.com>
497 * include/hal_cache.h: Include plf_cache.h
499 * src/hal_misc.c: Moved cache init control settings to plf_cache.h
501 2000-01-24 Jesper Skov <jskov@cygnus.co.uk>
503 * src/hal_misc.c: Depend on CYGSEM_HAL_ROM_MONITOR instead of
506 2000-01-19 Hugo Tyson <hmt@cygnus.co.uk>
508 * cdl/*.cdl: Add descriptions to a number of options &c which were
509 lacking same, also tidied up other typos as noticed en passant.
511 1999-12-02 John Dallaway <jld@cygnus.co.uk>
513 * cdl/hal_powerpc.cdl:
515 Use the <PACKAGE> token in custom rules.
517 1999-12-01 John Dallaway <jld@cygnus.co.uk>
519 * cdl/hal_powerpc.cdl:
521 Use the <PREFIX> token in custom rules.
523 1999-11-04 John Dallaway <jld@cygnus.co.uk>
525 * cdl/hal_powerpc.cdl:
527 Output custom rule dependency information to .deps files in
528 the current directory.
530 Dispense with the need to create a 'src' sub-directory.
532 1999-11-03 John Dallaway <jld@cygnus.co.uk>
534 * cdl/hal_powerpc.cdl: Define build options.
536 1999-09-28 Jesper Skov <jskov@cygnus.co.uk>
538 * tests/intr0.c: Added some more debug output.
540 1999-09-23 Jonathan Larmour <jlarmour@cygnus.co.uk>
542 * src/hal_misc.c (cyg_hal_exception_handler): Catch exceptions
543 generated from within the GDB stub so we can recover from bad memory
545 Also part of the fix for case 102104
547 1999-09-23 Jesper Skov <jskov@cygnus.co.uk>
549 * include/hal_cache.h (HAL_ICACHE_SYNC): Invalidate I cache.
551 1999-09-06 Jesper Skov <jskov@cygnus.co.uk>
553 * src/hal_misc.c (hal_null_call):
555 Trap calls to address 0.
557 1999-09-01 Gary Thomas <gthomas@cygnus.co.uk>
559 * src/hal_misc.c: Clean up list of included files. <hal.h>
560 now provides target and platform specifics.
562 * src/hal_intr.c: CYGFUN_HAL_COMMON_KERNEL_SUPPORT should only
563 be defined if CYGPKG_KERNEL is defined. This needs to be fixed
564 in a more generic fashion when full CDL becomes available.
566 * src/vectors.S: Exception and interrupt handling were enabling
567 CPU interrupts when it wasn't safe nor warranted.
569 1999-08-16 Jesper Skov <jskov@cygnus.co.uk>
570 From Bob Koninckx <bob.koninckx@mail.mech.kuleuven.ac.be>
572 * src/ppc_stub.c (__clear_single_step): Clear irq_state to prevent
575 1999-06-29 Hugo Tyson <hmt@cygnus.co.uk>
577 * include/hal_intr.h (CYGNUM_HAL_EXCEPTION_DATA_ACCESS): Define
578 this for handling MACHINE_CHECK if an MPC860 - it never generates
579 ISI nor DSI exceptions, only machine check. This allows libc to
580 catch SEGVs from this unexpected quarter.
582 1999-06-28 Hugo Tyson <hmt@cygnus.co.uk>
584 * include/ppc_regs.h: Add proper definitions of timebase regs.
586 * tests/intr0.c: Add some useful debugging printouts and recording
587 of state, and make more platform-portable; the rate of PTA is not
588 always 1:32 wrt the timebase.
590 1999-06-27 Gary Thomas <gthomas@cygnus.co.uk>
592 * src/vectors.S (_start): Call platform dependent IRQ setup (see
595 * src/hal_intr.c (hal_IRQ_init): New platform dependent function
596 used to setup whatever is necessary to handle interrupts.
597 Add basic "wiring" of CPM to SIU interrupts.
599 * include/hal_intr.h: Fix CPM interrupt macros - control register
602 1999-06-24 Jesper Skov <jskov@cygnus.co.uk>
604 * misc/CPUMask8xx.c: Added.
606 1999-06-24 Hugo Tyson <hmt@cygnus.co.uk>
608 * src/hal_misc.c (cyg_hal_exception_handler): If the decrementer
609 has underflowed when we are returning from an exception, then we
610 reset it here; this is harmless if all is well, and required if
611 the QUICC-equipped MPC860 is getting confused about interrupts
612 following an exception. Only in QUICC configurations.
614 1999-06-22 Hugo Tyson <hmt@cygnus.co.uk>
616 * src/vectors.S (_start): Support breaking back into the stub ROM
617 when we see a breakpoint, if RAM start and RAM-based vectors for
618 the stub. Rather than using a direct jump, instead skip copying
619 the program exception vectors - leave the stub's vec in place.
620 Controlled by CYGPRI_STUBROM_HAS_RAM_VECTORS, which varies from
621 platform to platform.
623 1999-06-18 Hugo Tyson <hmt@cygnus.co.uk>
625 * src/hal_misc.c (hal_enable_caches): Change the configuration,
626 the better to accommodate differing platform requirements viz a
627 viz cache enabling and so on.
629 1999-06-17 Hugo Tyson <hmt@cygnus.co.uk>
631 * src/vectors.S (CYG_MSR): define correctly for copying vectors,
632 even if ROM start. Complete system init for ROM start.
634 1999-06-15 Hugo Tyson <hmt@cygnus.co.uk>
636 * include/ppc.inc: Add definitions of FUNC_START and FUNC_END.
637 They are needed by platform code.
639 * src/vectors.S: Remove definition of FUNC_START.
641 1999-06-11 Hugo Tyson <hmt@cygnus.co.uk>
643 * src/vectors.S (_start): remove some platform-conditional
644 initialization code; it is now in hal_hardware_init in the
647 * src/hal_misc.c: remove very-platform-conditional definition of
648 memory descriptor table - it is now in platform HALs.
650 * include/ppc_regs.h: simplify definition of CYGARC_REG_IMM_BASE.
652 * include/hal_cache.h (CYGARC_MEMDESC_CACHE): ...and other
653 macros... add support for external definitions of memory
654 descriptor table used in platform-specific initialization of MMU.
656 1999-06-10 Hugo Tyson <hmt@cygnus.co.uk>
658 * src/vectors.S (_start): Add better support for various startup
659 options, including CygMon loading.
661 * src/PKGconf.mak (COMPILE): remove quicc_smc.c; it has been
662 reorganized and renamed into the FADS component.
664 * include/quicc_smc.h, src/ppc_860.h, src/quicc_smc.c: removed;
665 reorganized and renamed into the FADS component.
667 * src/hal_misc.c (hal_idle_thread_action): Add some useful
668 debugging for interrupt/clock of the MBX860/PPC860; normally
669 disabled, so no effect on code.
671 * include/ppc_regs.h: Different default value for
672 CYGARC_REG_IMM_BASE if MBX board (ie. the way CygMon sets it up).
673 This is a temporary measure.
675 1999-06-08 Jesper Skov <jskov@cygnus.co.uk>
677 * include/hal_intr.h:
678 * src/vectors.S (hal_vsr_table):
679 * src/hal_misc.c (hal_default_decrementer_isr):
680 Use NOP default ISR for decrementer.
683 1999-06-04 Jesper Skov <jskov@cygnus.co.uk>
685 * src/ppc_860.h: Added padding to some structures, reported by
686 Jean-Dominique Orvoen (orvoen@email.enst.fr)
688 1999-05-26 Jesper Skov <jskov@cygnus.co.uk>
690 * include/hal_cache.h (HAL_DCACHE_LOCK):
691 Fixed asm constraint.
693 1999-05-25 Jesper Skov <jskov@cygnus.co.uk>
695 * include/hal_intr.h:
696 * src/vectors.S (hal_interrupt_stack_call_pending_DSRs):
697 Added call_pending_DSR magic.
699 1999-05-21 Hugo Tyson <hmt@cygnus.co.uk>
701 * include/hal_intr.h: Define HAL_INTERRUPT_STACK_BASE and
702 HAL_INTERRUPT_STACK_TOP so that stack usage macros in
703 kernel/.../stackmon.hxx can work.
705 * src/vectors.S (cyg_interrupt_stack_base): Define this symbol for
706 the interrupt stack and its friend for the stack top so that we
707 can publish them with nice names.
709 1999-05-13 Hugo Tyson <hmt@cygnus.co.uk>
711 * include/hal_arch.h (HAL_THREAD_INIT_CONTEXT): Align stack
712 (rather conservatively) before use.
714 1999-04-28 Bart Veer <bartv@cygnus.co.uk>
717 Remove the -n argument to tail, it does not appear to be required
718 on any supported host and causes problems with some
719 implementations of tail.
721 1999-04-19 Jesper Skov <jskov@cygnus.co.uk>
723 * src/vectors.S (_start): Rewrote the hal_zero_bss code in
724 assembly. When compiling with -O0 the C function accesses the
725 previous stack frame upon return, causing a crash.
727 1999-04-15 Jonathan Larmour <jlarmour@cygnus.co.uk>
729 * src/powerpc.ld: Define __bss_start/__bss_end around the BSS, and
730 __sbss_start/__sbss_end around the SBSS
731 * src/vectors.S (_start): Call C function to clear BSS.
732 * src/hal_misc.c (hal_zero_bss): Use __bss_end rather than _end when
733 clearing BSS. Clear SBSS similarly but separately since the MLT
734 may have them in non-contiguous parts of memory.
738 1999-04-14 Jesper Skov <jskov@cygnus.co.uk>
740 * include/hal_cache.h: Added HAL_xCACHE_IS_ENABLED macros.
742 1999-04-14 Jonathan Larmour <jlarmour@cygnus.co.uk>
744 * src/PKGconf.mak (EXTRAS): Don't generate extras.o here any more
745 But do define EXTRAS every time for the linker script
747 1999-04-09 Jesper Skov <jskov@cygnus.co.uk>
750 Moved get_register and put_register to hal_stub.c.
752 1999-04-08 John Dallaway <jld@cygnus.co.uk>
754 * src/*.ld: Revised SECTION_* macro arguments to
755 avoid padded output sections (PR 19787)
757 1999-04-07 Gary Thomas <gthomas@cygnus.co.uk>
759 * include/hal_arch.h (CYGNUM_HAL_STACK_SIZE_xxx): Increase to more
760 realistic values. PR 19748.
762 1999-03-31 Jesper Skov <jskov@cygnus.co.uk>
765 * src/ppc_stub.c (__computeSignal):
766 Added some comments about the use of MSR/SRR1. Masked out reserved
767 bits of MSR before restoring it.
769 1999-03-23 Jesper Skov <jskov@cygnus.co.uk>
771 * include/hal_arch.h: Added stack values.
773 1999-03-22 Jonathan Larmour <jlarmour@cygnus.co.uk>
775 * include/ppc_stub.h: Update copyright
777 * src/ppc_stub.c: Update copyright
779 1999-03-22 Hugo Tyson <hmt@cygnus.co.uk>
781 * include/hal_arch.h:
782 Use CYGNUM_HAL_STACK_SIZE_TYPICAL for the stack size instead of
783 CYGNUM_HAL_MINIMUM_STACK_SIZE.
785 1999-03-22 Jesper Skov <jskov@cygnus.co.uk>
789 * include/hal_arch.h:
790 Cleaned up some FIX MEs.
792 1999-03-18 Jesper Skov <jskov@cygnus.co.uk>
794 * include/ppc.inc: Removed exception safety margin.
796 1999-03-17 John Dallaway <jld@cygnus.co.uk>
798 * src/PKGconf.mak: Remove dependence on echo '-e' switch.
800 1999-03-16 Jesper Skov <jskov@cygnus.co.uk>
802 * src/hal_misc.c: Moved extern declarations out of function body
803 to avoid compiler warnings.
805 1999-03-12 Jesper Skov <jskov@cygnus.co.uk>
807 * include/hal_arch.h (CYGNUM_HAL_MINIMUM_STACK_SIZE): Increased to
810 * include/ppc.inc: Reduced exception stack frame safety gap
813 1999-03-12 Gary Thomas <gthomas@cygnus.co.uk>
815 * include/hal_arch.h (CYGNUM_HAL_MINIMUM_STACK_SIZE):
816 Added HAL stack size definition.
818 1999-03-10 Jesper Skov <jskov@cygnus.co.uk>
820 * include/hal_intr.h (HAL_INTERRUPT_IN_USE): Added.
822 1999-03-08 Nick Garnett <nickg@cygnus.co.uk>
825 Added alignment before definition of __DEVTAB__.
827 1999-03-08 Jesper Skov <jskov@cygnus.co.uk>
829 * include/hal_intr.h: Removed workaround.
831 1999-03-05 Jesper Skov <jskov@cygnus.co.uk>
833 * include/hal_intr.h (cyg_hal_interrupt_set_level): Disable this
834 function as a temporary workaround to PR 19400.
836 1999-03-05 Gary Thomas <gthomas@cygnus.co.uk>
839 * src/powerpc.ld: Clean up I/O package changes.
841 1999-03-04 Jonathan Larmour <jlarmour@cygnus.co.uk>
844 Add INPUT(libextras.a), add libextras.a to GROUP() and include
845 new section for device driver table
847 1999-02-26 Jesper Skov <jskov@cygnus.co.uk>
849 * include/hal_intr.h: Removed FIX ME.
851 1999-02-26 Jesper Skov <jskov@cygnus.co.uk>
853 * include/hal_intr.h:
854 * src/ppc_stub.c (__computeSignal):
855 Renamed CYGNUM_HAL_HWVECTOR_DECREMENTER to
856 CYGNUM_HAL_VECTOR_DECREMENTER.
858 1999-02-25 Nick Garnett <nickg@cygnus.co.uk>
861 Changed label used to access scheduler lock to one that is not
862 mangled by C++. This is intended to make support for interrupt
863 handling in non-kernel configurations easier.
865 1999-02-23 Jesper Skov <jskov@cygnus.co.uk>
867 * src/ppc_stub.c (__computeSignal): Renamed
868 CYGNUM_HAL_VECTOR_DECREMENTER to CYGNUM_HAL_HWVECTOR_DECREMENTER.
870 1999-02-20 Jonathan Larmour <jlarmour@cygnus.co.uk>
872 * include/hal_arch.h:
873 Rename deliver_exception() -> cyg_hal_deliver_exception()
875 * include/hal_intr.h:
876 Reorganise vector/interrupt/exception names according to purpose
877 Add decoded exception vectors (decoded from PROGRAM exception)
880 * include/ppc_regs.h:
881 Add defines for access to SRR0 and SRR1 registers
884 Rename CYG_VECTOR_* according to hal_intr.h changes above
888 Decode PROGRAM vector using SSR1 register
892 Rename CYG_VECTOR_* according to hal_intr.h changes above
898 Rename exception_handler -> cyg_hal_exception_handler
901 Rename CYG_VECTOR_* -> CYGNUM_HAL_INTERRUPT_* due to hal_intr.h
904 1999-02-17 Jesper Skov <jskov@cygnus.co.uk>
906 * src/ppc_stub.c (__computeSignal): Moved special GDB signal
907 handling to generic-stub.c.
909 1999-02-17 Jesper Skov <jskov@cygnus.co.uk>
911 * src/hal_misc.c (hal_default_isr): Always print out vector number
912 in hal_default_interrupt.
914 1999-02-16 Jesper Skov <jskov@cygnus.co.uk>
916 * src/vectors.S: Changed set_debug_traps to initialize_stub.
919 * include/ppc_stub.h:
920 Cleaned up to only include arch specific stub code.
922 1999-02-05 Jesper Skov <jskov@cygnus.co.uk>
928 * include/ppc_regs.h:
929 * include/hal_intr.h:
930 * include/hal_cache.h:
931 Cleaned up the MPC823/850 code.
933 1999-02-05 Jesper Skov <jskov@cygnus.co.uk>
935 * include/hal_intr.h (HAL_CLOCK_LATENCY): Return 0 when the result
936 is due to a bogus timer interrupt.
938 1999-02-05 John Dallaway <jld@cygnus.co.uk>
940 * src/powerpc.ld: Add LMA_EQ_VMA macro definition.
942 1999-01-29 Jesper Skov <jskov@cygnus.co.uk>
947 * include/ppc_regs.h:
948 * include/hal_intr.h:
949 * include/hal_cache.h:
950 Added MPC823/850 support. Some of it needs cleaning up a bit.
952 1999-01-22 Jesper Skov <jskov@cygnus.co.uk>
954 * include/quicc_smc.h:
956 Fix compiler warnings.
958 1999-01-22 Jesper Skov <jskov@cygnus.co.uk>
960 * include/quicc_smc.h:
963 Added UNSUPPORTED headers.
965 1999-01-21 Jonathan Larmour <jlarmour@cygnus.co.uk>
967 * src/hal_misc.c (cyg_hal_invoke_constructors):
968 Add code to deal with CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG
969 Tidy up and update description header
970 Shorten needlessly long lines
973 Remove all traces of non-CYG_KERNEL_USE_INIT_PRIORITY code
974 Tidy up and update description header
975 Shorten needlessly long lines
977 1999-01-21 Jesper Skov <jskov@cygnus.co.uk>
978 Merge with FADS branch.
980 1998-12-17 Jesper Skov <jskov@cygnus.co.uk>
982 * src/ppc_860.h: Added as private header.
984 * src/PKGconf.mak (COMPILE): Added quicc_smc.c.
986 * include/quicc_smc.h: Prefix exported names with cyg_.
988 * src/quicc_smc.c: Use ppc_860.h as a private header.
989 Made all but the necessary functions static. Prefixed the rest
991 Moved the RS232 interface enabling here from hal_diag since it
992 is apparently required by both hal_stub and hal_diag.
994 1999-01-20 Jesper Skov <jskov@cygnus.co.uk>
996 * src/powerpc.ld (SECTION_bss): Added align statement.
998 1999-01-20 Jesper Skov <jskov@cygnus.co.uk>
1000 * src/vectors.S: Changed _STUB to _STUBS.
1002 1999-01-19 Jesper Skov <jskov@cygnus.co.uk>
1005 * src/hal_misc.c (hal_enable_caches):
1006 Also support HAL_STARTUP_STUB.
1008 1999-01-15 Jesper Skov <jskov@cygnus.co.uk>
1012 Move external declarations out of functions.
1014 1999-01-14 Jesper Skov <jskov@cygnus.co.uk>
1016 * src/vectors.S (_start): Copy data to RAM before calling C
1017 functions (or "don't initialize the MMU with random data").
1019 * src/hal_misc.c: ROM is cache inhibited.
1021 1999-01-13 Gary Thomas <gthomas@cygnus.co.uk>
1023 * include/basetype.h: CYG_DOUBLE_BYTEORDER now in <infra/cyg_type.h>
1025 1999-01-12 Gary Thomas <gthomas@cygnus.co.uk>
1027 * include/basetype.h (CYG_DOUBLE_BYTEORDER): Define ordering
1028 for words within double.
1030 1999-01-11 Jesper Skov <jskov@cygnus.co.uk>
1032 * include/hal_io.h: Fixed indentation.
1034 1999-01-05 Jesper Skov <jskov@cygnus.co.uk>
1036 * include/hal_intr.h (HAL_CLOCK_RESET): Undid below change;
1037 doesn't always work.
1039 1998-12-15 Jesper Skov <jskov@cygnus.co.uk>
1041 * include/hal_intr.h (HAL_CLOCK_RESET): Add rather than store to
1042 avoid wall-clock drift.
1044 1998-12-11 Jesper Skov <jskov@cygnus.co.uk>
1046 * src/vectors.S: Cleaned up code to use r14/r15 during
1047 interrupt/exception handling, which is necessary to support
1049 Put hal tables in sdata section when smaller than threshold.
1051 1998-12-11 Jesper Skov <jskov@cygnus.co.uk>
1053 * include/hal_cache.h: Defined three more macros.
1055 1998-12-10 Jesper Skov <jskov@cygnus.co.uk>
1057 * include/hal_cache.h: Defined three more macros.
1059 1998-12-10 Jesper Skov <jskov@cygnus.co.uk>
1061 * src/vectors.S: Make the program exception jump to ROM if no GDB
1062 stub was configured.
1064 1998-12-10 Jesper Skov <jskov@cygnus.co.uk>
1066 * include/hal_cache.h: Added HAL_ICACHE_UNLOCK_ALL and
1067 HAL_DCACHE_UNLOCK_ALL for sim (unused).
1069 1998-12-10 Jesper Skov <jskov@cygnus.co.uk>
1071 * include/hal_cache.h: Defined cache locking macros. Changed
1072 invalidate macros not to unlock.
1074 * include/ppc_regs.h: Added some instruction cache definitions.
1076 * src/hal_misc.c (hal_enable_caches): Unlock caches before
1079 1998-12-09 Jesper Skov <jskov@cygnus.co.uk>
1081 * src/hal_misc.c (hal_enable_caches): Don't enable caches when
1084 1998-12-09 Jesper Skov <jskov@cygnus.co.uk>
1086 * include/ppc_regs.h: TBx_W are SPR registers.
1088 * src/vectors.S (_init_CPU, _start): Added a few sync instructions.
1090 1998-12-08 Jesper Skov <jskov@cygnus.co.uk>
1092 * include/ppc_regs.h (CYGARC_REG_IMM_OR_CSNT): Fixed typo.
1094 1998-12-08 Jesper Skov <jskov@cygnus.co.uk>
1096 * include/ppc_regs.h: Added more definitions.
1098 1998-12-07 Jesper Skov <jskov@cygnus.co.uk>
1100 * src/vectors.S (_init_CPU): Proper solution to the problem of
1101 MMU/cache initialization.
1103 1998-12-07 Jesper Skov <jskov@cygnus.co.uk>
1105 * src/vectors.S (_start): Map RAM before accessing it. Only
1106 disable MMU just before (re)programming it.
1108 1998-12-04 Jesper Skov <jskov@cygnus.co.uk>
1113 Renamed hal_intr.cxx to hal_intr.c.
1115 1998-12-04 Jesper Skov <jskov@cygnus.co.uk>
1117 * tests/intr0.c: Improved somewhat. Also fixes PR 18440.
1123 * include/ppc_regs.h: More register definitions.
1125 * include/hal_intr.h: Handle decrementer in HAL_INTERRUPT_ mask
1126 and configure macros.
1127 Added declarations for interrupt arbiters.
1129 1998-12-02 Jesper Skov <jskov@cygnus.co.uk>
1133 * include/ppc_regs.h:
1134 * include/hal_intr.h:
1135 Prefixed remaining definitions used by hal_intr.h.
1137 * include/hal_intr.h:
1138 Added more definitions. Fixed wrong TBx_R values.
1140 1998-12-01 Jesper Skov <jskov@cygnus.co.uk>
1142 * tests/PKGconf.mak:
1144 First simple test of 860 specific interrupt handling.
1146 * src/vectors.S (__default_interrupt_vsr): Don't shift decoded
1149 * src/hal_misc.c (hal_clear_MMU): Added.
1150 (hal_MMU_init): Call hal_clear_MMU to ensure a sane MMU state.
1152 * include/ppc_regs.h: Added even more definitions.
1154 * include/hal_intr.h: Fixed interrupt functions to deal with
1155 interleaved IRQ/LVL vectors.
1157 1998-11-30 Jesper Skov <jskov@cygnus.co.uk>
1159 * src/vectors.S (__default_interrupt_vsr): Always call
1160 cyg_hal_gdb_isr when GDB_BREAK support is enabled.
1161 Added comment about nesting.
1163 1998-11-30 Jesper Skov <jskov@cygnus.co.uk>
1165 * include/ppc_regs.h: Added a few more definitions.
1167 * src/vectors.S (decode_interrupt): Added 1st level arbitration
1170 * include/hal_intr.h: Added (properly ordered) LVL vectors.
1171 Changed if/else to switch/case.
1172 Added configuration of priorities/level.
1174 1998-11-30 Jesper Skov <jskov@cygnus.co.uk>
1176 * src/vectors.S (decode_interrupt): Update the vector in the state
1179 1998-11-27 Jesper Skov <jskov@cygnus.co.uk>
1181 * include/ppc_regs.h: Added more 860 IMM registers.
1183 * include/hal_io.h: Changed HAL_IO_BARRIER so it can be used from
1186 * include/hal_intr.h: First part of 860 interrupt controller
1190 * include/hal_intr.h:
1191 Exchanged extern and decrementer interrupt ISR vectors to allow
1192 more sensible extension.
1194 1998-11-27 Jesper Skov <jskov@cygnus.co.uk>
1196 * src/hal_misc.c: The memory map descriptor table is now weakly
1197 defined so applications can override it.
1199 1998-11-26 Jesper Skov <jskov@cygnus.co.uk>
1201 * include/ppc_regs.h:
1202 * src/hal_misc.c (hal_map_memory):
1203 Added handling of Guarded attribute.
1205 1998-11-26 Jesper Skov <jskov@cygnus.co.uk>
1207 * include/hal_arch.h: Added definition for magic constant.
1209 1998-11-26 Jesper Skov <jskov@cygnus.co.uk>
1212 * include/hal_arch.h:
1214 Moved SPR definitions to ppc_regs.h.
1216 1998-11-26 Jesper Skov <jskov@cygnus.co.uk>
1221 Changes due to ppc_regs.h cleanup.
1223 * src/ppc_stub.h: Added convenience definition for SP register.
1225 * include/ppc_regs.h: Got rid of GDB register definitions.
1228 * include/ppc_regs.h:
1229 * include/hal_cache.h:
1230 Prefixed register names with CYGARC_REG_ to avoid name space
1233 * include/hal_arch.h:
1235 Replaced magic constants in jmpbuf with defines.
1237 1998-11-25 Jesper Skov <jskov@cygnus.co.uk>
1239 * src/vectors.S (__start): Got rid of a few magic constants.
1241 * include/hal_intr.h (HAL_CLOCK_INITIALIZE,
1242 HAL_CLOCK_RESET): Cleaned up a bit.
1244 * include/ppc_regs.h: Added DC_ADR_ and TBU/TBL macros.
1246 * include/hal_cache.h: Got rid of a few magic constants.
1247 Changed types in cyg_memdesc_t.
1248 * src/hal_misc.c (hal_map_memory): Changed argument types.
1250 * include/hal_arch.h: Changed a few comments.
1252 1998-11-23 Jesper Skov <jskov@cygnus.co.uk>
1254 * src/vectors.S: Cleaned up CYG_MSR definition.
1256 * src/hal_misc.c (mem_map): Added mapping for SIM.
1257 (hal_map_memory): Added 603 BAT mapping.
1259 * include/ppc_regs.h: Added definitions for BATs.
1261 1998-11-19 Jesper Skov <jskov@cygnus.co.uk>
1263 * include/ppc_regs.h:
1264 * include/hal_cache.h:
1265 Use operand constants to pass macro values to assembly code.
1267 1998-11-18 Jesper Skov <jskov@cygnus.co.uk>
1271 * include/hal_arch.h:
1272 Improved GDB thread info output by making a context switch frame
1273 look like an exception/interrupt frame.
1275 1998-11-18 Gary Thomas <gthomas@cygnus.co.uk>
1277 * include/hal_intr.h: Add support for interrupt latency
1278 measurements, controlled by CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY.
1280 1998-11-18 Jesper Skov <jskov@cygnus.co.uk>
1282 * include/ppc.inc: Renamed CYG_HAL_POWERPC_MP860 to
1283 CYG_HAL_POWERPC_MPC860.
1285 1998-11-17 Jesper Skov <jskov@cygnus.co.uk>
1287 * hal/powerpc/arch/current/include/hal_cache.h
1288 * hal/powerpc/arch/current/include/hal_intr.h
1289 * hal/powerpc/arch/current/include/ppc_regs.h
1290 * hal/powerpc/arch/current/src/hal_misc.c
1291 * hal/powerpc/arch/current/src/ppc_stub.c
1292 * hal/powerpc/arch/current/src/vectors.S
1293 Renamed CYG_HAL_POWERPC_MP860 to CYG_HAL_POWERPC_MPC860.
1295 1998-11-16 Jesper Skov <jskov@cygnus.co.uk>
1298 * include/hal_intr.h:
1299 Added vector translation.
1301 * src/vectors.S: Use r14 instead of r15 in interrupt handler.
1303 1998-11-09 Jesper Skov <jskov@cygnus.co.uk>
1305 * include/hal_cache.h: Added memory mapping structure.
1307 * src/hal_misc.c (hal_MMU_init): Cleaned up memory mapping.
1309 1998-11-09 Jesper Skov <jskov@cygnus.co.uk>
1311 * src/hal_misc.c (hal_enable_caches): Also disable serialization.
1313 * include/ppc_regs.h: Added more register definitions.
1315 1998-11-06 Jesper Skov <jskov@cygnus.co.uk>
1317 * src/vectors.S: Don't enable MMU when target is SIM. Caches are
1318 not used anyway, and there's a serious performance hit.
1321 1998-11-04 Jesper Skov <jskov@cygnus.co.uk>
1323 * include/hal_cache.h: Proper separation of SIM and MPC860 cache
1326 1998-11-04 Jesper Skov <jskov@cygnus.co.uk>
1328 * src/ppc_stub.c (cyg_hal_gdb_interrupt,
1329 cyg_hal_gdb_remove_break): Add cache flushes after fiddling with
1332 * src/vectors.S (__default_interrupt_vsr,
1333 __default_exception_vsr): Enable MMU on entry.
1335 1998-11-04 Jesper Skov <jskov@cygnus.co.uk>
1337 * src/vectors.S: Make calls to MMU init function and cache
1338 enabling function. Enable MMU.
1340 * src/hal_misc.c (hal_map_memory, hal_MMU_init,
1341 hal_enable_caches): Added.
1343 * include/ppc_regs.h: Added MMU register definitions.
1345 * include/hal_cache.h: Enabled cache macros and made them work
1348 1998-11-02 Jesper Skov <jskov@cygnus.co.uk>
1350 * include/ppc_stub.h:
1351 * src/ppc_stub.c (cyg_hal_gdb_interrupt,
1352 cyg_hal_gdb_remove_break): New names for the new GDB BREAK support
1355 1998-11-02 Jesper Skov <jskov@cygnus.co.uk>
1357 * src/vectors.S (__default_interrupt_vsr): Fill r15 before doing
1358 cyg_hal_gdb_isr call, or it might be skipped.
1359 cyg_hal_gdb_isr now takes PC as first argument.
1363 Added proper GDB interrupt support.
1365 1998-10-27 Jesper Skov <jskov@cygnus.co.uk>
1367 * src/vectors.S: Also save registers 13-15 in minimum context for
1370 1998-10-25 Jesper Skov <jskov@cygnus.co.uk>
1372 * src/vectors.S: Removed pkgconf/kernel.h include fix-me.
1374 1998-10-23 Jesper Skov <jskov@cygnus.co.uk>
1376 * include/ppc_stub.h: Include generic-stub.h from hal.
1378 Fri Oct 23 04:47:11 1998 Jonathan Larmour <jlarmour@cygnus.co.uk>
1380 * include/hal_cache.h:
1381 Include HAL configuration file to be sure we get all the right
1382 defines. This is a potential problem, that I had thought may be
1383 the cause of PR 17839, but that turned out to be a config tool
1386 1998-10-16 Bart Veer <bartv@cygnus.co.uk>
1388 * src/vectors.S (__interrupt_stack):
1389 Made the interrupt stack size configurable.
1391 1998-10-15 Jesper Skov <jskov@cygnus.co.uk>
1393 * src/ppc_stub.c (__computeSignal): Use SIGSYS for 'sc'
1396 1998-10-15 Jesper Skov <jskov@cygnus.co.uk>
1399 * include/hal_arch.h (HAL_JMP_BUF_SIZE): Increased to 23.
1401 * src/context.S (hal_setjmp, hal_longjmp): Also save CR[2-4].
1403 1998-10-15 Jesper Skov <jskov@cygnus.co.uk>
1405 * src/vectors.S: CYGDBG_KERNEL_DEBUG_GDB_INCLUDE_STUBS changed to
1406 CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS.
1408 1998-10-15 Jesper Skov <jskov@cygnus.co.uk>
1410 * src/ppc_stub.c: Replaced include <signal.h> with SIGxxx
1413 1998-10-15 Jesper Skov <jskov@cygnus.co.uk>
1415 * src/ppc_stub.c: Graceful error if attempted compiled for
1417 Also do proper include of dbg-threads-api.h.
1419 * src/vectors.S: Changed CYG_HAL_GDB_BREAK to
1420 CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT.
1422 1998-10-15 Jesper Skov <jskov@cygnus.co.uk>
1424 * src/ppc_stub.c (single_step, clear_single_step): Disable
1425 interrupts when doing a single-step.
1427 1998-10-14 Nick Garnett <nickg@cygnus.co.uk>
1432 Minor modifications to permit building without kernel.
1434 1998-10-14 Jesper Skov <jskov@cygnus.co.uk>
1436 * include/hal_intr.h (HAL_QUERY_INTERRUPTS): Fixed to do the right
1439 1998-10-13 Jesper Skov <jskov@lassi.cygnus.co.uk>
1443 Added thread support. Primarily a change in the way registers are
1446 * include/hal_arch.h (HAL_GET_GDB_REGISTERS,
1447 HAL_SET_GDB_REGISTERS): Added a few more registers.
1449 1998-10-12 Jesper Skov <jskov@lassi.cygnus.co.uk>
1451 * Reverted below to avoid problems with test farm. Waiting for
1452 approval of other diffs.
1454 1998-10-12 Jesper Skov <jskov@lassi.cygnus.co.uk>
1458 Added thread support. Primarily a change in the way registers are
1461 * include/hal_arch.h (HAL_GET_GDB_REGISTERS,
1462 HAL_SET_GDB_REGISTERS): Added a few more registers.
1464 1998-10-12 Jesper Skov <jskov@lassi.cygnus.co.uk>
1466 * include/ppc_stub.h: Added CYGONCE protection.
1469 1998-10-09 Jesper Skov <jskov@cygnus.co.uk>
1471 * include/hal_intr.h: Added HAL_TRANSLATE_VECTOR.
1473 1998-10-08 Jesper Skov <jskov@cygnus.co.uk>
1475 * src/vectors.S: Protect kernel.h inclusion by CYGPKG_KERNEL.
1477 1998-10-08 Jesper Skov <jskov@lassi.cygnus.co.uk>
1479 * include/hal_arch.h
1480 * include/ppc_regs.h
1482 Changed /**/ comments to //.
1484 1998-10-08 Jesper Skov <jskov@lassi.cygnus.co.uk>
1486 * src/makefile: Removed.
1488 1998-10-08 Jesper Skov <jskov@lassi.cygnus.co.uk>
1490 * include/basetype.h:
1491 * include/hal_arch.h:
1492 * include/hal_cache.h:
1493 * include/hal_intr.h:
1495 * include/ppc_regs.h:
1496 * include/pkgconf/hal_powerpc.h:
1502 1998-10-08 Jesper Skov <jskov@lassi.cygnus.co.uk>
1504 * src/vectors.S: Added GDB interrupt support.
1505 Call GDB stub init at startup.
1507 1998-10-08 Jesper Skov <jskov@lassi.cygnus.co.uk>
1509 * include/ppc_regs.h: Added defines for Internal Memory Map. Added
1512 1998-10-07 Jesper Skov <jskov@cygnus.co.uk>
1514 * include/hal_io.h: Enforce in-order IO.
1516 1998-10-01 Jesper Skov <jskov@cygnus.co.uk>
1518 * src/vectors.S (_start): Comment change.
1520 * include/hal_intr.h: Added empty HAL_INTERRUPT_SET_LEVEL macro.
1522 Thu Sep 17 17:40:01 1998 Jesper Skov <jskov@lassi.cygnus.co.uk>
1524 * src/vectors.S: Simulator does not support DER register.
1526 1998-09-14 Bart Veer <bartv@cygnus.co.uk>
1529 Made vectors.o dependent on the various files that can contain
1530 makefile variables or rules. This is needed after changes to
1531 pkgconf.tcl for PRs 17195 and 17286.
1533 1998-09-12 Bart Veer <bartv@cygnus.co.uk>
1535 * include/pkgconf/hal_powerpc.h:
1536 Added missing descriptions (PR 17184)
1538 * src/hal_misc.c (exception_handler):
1539 Sort out exception handling options (PR 16953)
1541 Fri Sep 4 12:03:54 1998 Jesper Skov <jskov@cygnus.co.uk>
1543 * src/context.S: Always save/restore CR as the compiler may only
1544 do a partial restore.
1546 Thu Sep 3 10:12:46 1998 Jesper Skov <jskov@cygnus.co.uk>
1548 * include/hal_cache.h: Replaced CACHE macros with dummies. The
1549 errata for the revision A.2 MPC860 is pretty grim wrt cache side
1552 * include/hal_cache.h:
1554 * include/hal_arch.h:
1555 * include/hal_intr.h:
1556 Wrapped multi-line macros with CYG_MACRO_START/END.
1558 1998-09-02 Bart Veer <bartv@cygnus.co.uk>
1560 * include/pkgconf/hal_powerpc.h:
1561 New header file for architecture-specific configuration options
1563 * tests/PKGconf.mak:
1565 Sort out package naming conventions.
1567 1998-09-01 Nick Garnett <nickg@cygnus.co.uk>
1569 * include/hal_intr.h:
1570 Added CYG_VSR_COUNT, CYG_EXCEPTION_COUNT and CYG_ISR_COUNT.
1572 Tue Sep 1 14:43:48 1998 Jesper Skov <jskov@cygnus.co.uk>
1574 * include/hal_cache.h (HAL_DCACHE_SYNC): Write data in the cache
1576 (HAL_ICACHE_SYNC): Do nothing.
1578 Tue Sep 1 10:26:10 1998 Jesper Skov <jskov@cygnus.co.uk>
1580 * src/hal_misc.c: Define empty __eabi to override compiler
1581 generated version of the same.
1583 Mon Aug 31 16:32:34 1998 Jesper Skov <jskov@cygnus.co.uk>
1585 * src/hal_misc.c (cyg_hal_invoke_constructors): Renamed from
1588 Mon Aug 31 16:31:18 1998 Jesper Skov <jskov@cygnus.co.uk>
1590 * src/vectors.S (_start): Call C++ constructors.
1592 Mon Aug 31 15:32:22 1998 Jesper Skov <jskov@cygnus.co.uk>
1594 * src/vectors.S (__default_interrupt_vsr): Added config options:
1595 CYGFUN_HAL_COMMON_KERNEL_SUPPORT and
1596 CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK.
1597 (restore_state): Moved from bottom of __default_exception_vsr to
1598 bottom of __default_interrupt_vsr.
1600 Mon Aug 31 13:33:04 1998 Jesper Skov <jskov@cygnus.co.uk>
1602 * src/ppc_stub.c (__computeSignal): Added handling of MC860
1603 specific exceptions.
1604 Made VECTOR_PROGRAM decode actual exception type.
1606 * include/hal_intr.h: Defined MC860 specific vectors.
1608 Mon Aug 31 10:12:44 1998 Jesper Skov <jskov@cygnus.co.uk>
1612 Added ha_default_isr.
1614 * include/hal_cache.h:
1615 * include/ppc_regs.h:
1616 Defined HAL_DCACHE_x macros.
1618 * include/hal_arch.h:
1620 Added hal_idle_thread_action.
1622 1998-08-28 Bart Veer <bartv@cygnus.co.uk>
1624 * src/vectors.S, src/context.S, src/hal_misc.c, src/ppc_stub.c,
1625 include/hal_intr.h :
1626 Updated for new kernel configuration option symbol names
1628 Fri Aug 28 17:55:46 1998 Jesper Skov <jskov@cygnus.co.uk>
1630 * src/vectors.S: Added some more comments.
1631 (_start): Disable 860 "Development Support" as it breaks PowerPC
1632 standard single-stepping exceptions.
1634 * src/ppc_stub.c: Handle single-step exceptions properly. Also
1635 enable exception-after-branch.
1637 Fri Aug 28 17:41:34 1998 Jesper Skov <jskov@cygnus.co.uk>
1639 * include/ppc_regs.h: Added some more definitions.
1641 * include/hal_cache.h: Defined HAL_ICACHE_x macros.
1643 * include/hal_arch.h (HAL_BREAKINST): Use same opcode as GDB.
1645 Fri Aug 28 10:11:06 1998 Jonathan Larmour <jlarmour@cygnus.co.uk>
1647 * src/vectors.S (_start):
1648 Change call of main() to cyg_start(), and change comments
1649 accordingly. Definitely never call exit().
1651 Thu Aug 27 15:30:27 1998 Jesper Skov <jskov@cygnus.co.uk>
1653 * include/ppc_stub.h (REGSIZE): Floats are 64 bit.
1655 Thu Aug 27 13:58:16 1998 Jesper Skov <jskov@cygnus.co.uk>
1657 * src/hal_misc.c: Removed GDB C-C stuff again.
1659 Wed Aug 26 16:05:53 1998 Jesper Skov <jskov@cygnus.co.uk>
1661 * src/hal_misc.c (hal_ctrlc_isr, hal_init_ctrlc_intr):
1662 Added GDB C-C support (temporary location).
1664 Wed Aug 26 15:12:31 1998 Jesper Skov <jskov@cygnus.co.uk>
1666 * src/hal_misc.c (__eabi): Changed to match the constructor table
1667 generated by the linker script.
1669 Wed Aug 26 09:38:07 1998 Jesper Skov <jskov@cygnus.co.uk>
1671 * include/hal_arch.h (HAL_GET_GDB_REGISTERS): Fixed typo.
1672 (HAL_SET_GDB_REGISTERS): Same.
1674 1998-08-25 Nick Garnett <nickg@cygnus.co.uk>
1677 Now pass pointer to saved registers as third argument to
1680 * include/hal_arch.h:
1681 Added macros to support GDB.
1683 Tue Aug 25 16:57:27 1998 Jesper Skov <jskov@cygnus.co.uk>
1685 * src/ppc_stub.c: Comment changes.
1687 Tue Aug 25 11:11:49 1998 Jesper Skov <jskov@cygnus.co.uk>
1689 * include/hal_intr.h (HAL_INTERRUPT_ATTACH): Added cast to avoid
1692 Tue Aug 25 11:08:00 1998 Jesper Skov <jskov@cygnus.co.uk>
1694 * include/hal_arch.h (HAL_REORDER_BARRIER): Added side effect to
1697 Mon Aug 24 13:15:07 1998 Jesper Skov <jskov@lassi.cygnus.co.uk>
1699 * include/ppc_stub.h: Corrected NUMREGS.
1701 Mon Aug 24 11:14:08 1998 Jesper Skov <jskov@cygnus.co.uk>
1703 * src/vectors.S (__default_exception_vsr): Don't access register
1706 Mon Aug 24 10:37:04 1998 Jesper Skov <jskov@cygnus.co.uk>
1708 * src/vectors.S (_start): Removed non-functional OCD control.
1710 1998-08-21 Nick Garnett <nickg@cygnus.co.uk>
1712 * include/hal_cache.h:
1713 Now includes cyg_type.h rather than ktypes.h.
1715 Thu Aug 20 17:43:50 1998 Jesper Skov <jskov@lassi.cygnus.co.uk>
1717 * src/vectors.S: Disable OCD control to allow debugging of gdb
1720 * src/vectors.S: Temporary stack definition.
1722 Thu Aug 20 17:37:10 1998 Jesper Skov <jskov@lassi.cygnus.co.uk>
1724 * src/hal_misc.c: Added GDB stub support.
1726 * include/ppc.inc: Added some 860 register definitions.
1728 * include/hal_arch.h: Added breakpoint stuff.
1730 Thu Aug 20 16:07:03 1998 Jesper Skov <jskov@lassi.cygnus.co.uk>
1732 * src/PKGconf.mak: Include GDB support files.
1734 Thu Aug 20 16:00:21 1998 Jesper Skov <jskov@lassi.cygnus.co.uk>
1736 * include/ppc_stub.h:
1737 * include/ppc_regs.h:
1739 Added for GDB support.
1741 Tue Aug 18 18:44:00 1998 Jesper Skov <jskov@cygnus.co.uk>
1743 * include/hal_intr.h:
1744 * include/hal_arch.h:
1745 Use cyg_type.h rather than ktypes.h.
1747 Tue Aug 18 18:38:43 1998 Jesper Skov <jskov@cygnus.co.uk>
1749 * include/basetype.h: Fixed typo.
1751 1998-08-18 Nick Garnett <nickg@cygnus.co.uk>
1755 * include/hal_intr.h:
1757 Now uses hal.h rather than kernel.h.
1759 Mon Aug 17 16:23:46 1998 Jesper Skov <jskov@cygnus.co.uk>
1761 * include/hal_intr.h (HAL_DISABLE_INTERRUPTS): Fix MACRO line
1763 (HAL_RESTORE_INTERRUPTS): Same.
1765 //===========================================================================
1766 //####ECOSGPLCOPYRIGHTBEGIN####
1767 // -------------------------------------------
1768 // This file is part of eCos, the Embedded Configurable Operating System.
1769 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
1771 // eCos is free software; you can redistribute it and/or modify it under
1772 // the terms of the GNU General Public License as published by the Free
1773 // Software Foundation; either version 2 or (at your option) any later version.
1775 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
1776 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
1777 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
1778 // for more details.
1780 // You should have received a copy of the GNU General Public License along
1781 // with eCos; if not, write to the Free Software Foundation, Inc.,
1782 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
1784 // As a special exception, if other files instantiate templates or use macros
1785 // or inline functions from this file, or you compile this file and link it
1786 // with other works to produce a work based on this file, this file does not
1787 // by itself cause the resulting work to be covered by the GNU General Public
1788 // License. However the source code for this file must still be made available
1789 // in accordance with section (3) of the GNU General Public License.
1791 // This exception does not invalidate any other reasons why a work based on
1792 // this file might be covered by the GNU General Public License.
1794 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
1795 // at http://sources.redhat.com/ecos/ecos-license/
1796 // -------------------------------------------
1797 //####ECOSGPLCOPYRIGHTEND####
1798 //===========================================================================