2005-04-26 Joel Sherrill * console/uart.h: Eliminate tabs. 2005-04-15 Jennifer Averett PR 779/bsp * clock/p_clock.c, console/console.c, console/uart.c, console/uart.h, irq/irq.c, irq/irq.h, irq/irq_init.c: powerpc: add parameter to new exception interrupt handlers 2005-03-14 Joel Sherrill * pci/pci.c, pci/pci.h, pci/pcifinddevice.c: Continue PCI API unification. All use pci_find_device(). Also reformat to remove tabs. 2005-03-04 Joel Sherrill * pci/pci.c, pci/pcifinddevice.c, startup/bspstart.c: Make PCI initialize function part of the unified PCI API as pci_initialize(). 2005-02-17 Ralf Corsepius * startup/bspstart.c: Eliminate rtems_unsigned32. 2005-02-17 Ralf Corsepius * startup/bspstart.c: include . Use PPC_MINIMUM_STACK_FRAME_SIZE instead of CPU_MINIMUM_STACK_FRAME_SIZE. 2005-02-17 Ralf Corsepius * start/start.S: include . Use PPC_MINIMUM_STACK_FRAME_SIZE instead of CPU_MINIMUM_STACK_FRAME_SIZE. 2005-02-12 Joel Sherrill * pci/pci.h: Remove contents that are duplicates of the pci.h in cpukit and include rtems/pci.h for the base set of PCI functionality. 2005-01-22 Ralf Corsepius * tod/todcfg.c: size_t RTC_Count. 2005-01-04 Joel Sherrill * ChangeLog, startup/bspstart.c, tod/todcfg.c: Remove warnings. 2004-11-30 Greg Menke PR 729/bsps * bootloader/pci.c: Removed the r->size=0 and r->base=0 assignement which makes too-large regions conflict with onboard hardware, replacing it with sfree which deletes the memory region from the setup code, leaving it disabled. 2004-11-30 Greg Menke PR 728/bsps * bootloader/ppcboot.lds: Modified ppcboot.lds to include new .data and .rodata sections being generated by gcc-3.3.3 and above, the lack of which was causing the bootloader to crash. 2004-09-27 Greg Menke PR 606/bsps * bootloader/pci.c: Fixed IO remapping so buses >= 1 are remapped. Reduced PCI space to match bat2. Fixed incorrect region size calculation in pci_read_bases. Set PCI latency timers to known sane values. Changed bridge PCI settings to minimum sane instead of whatever sounded neat in the PCI spec. Force pf regions to memory mapped to preserve byte access. 2004-09-27 Greg Menke PR 606/bsps * bootloader/pci.c: Fixed IO remapping so buses >= 1 are remapped. Reduced PCI space to match bat2. Fixed incorrect region size calculation in pci_read_bases. Set PCI latency timers to known sane values. Changed bridge PCI settings to minimum sane instead of whatever sounded neat in the PCI spec. Force pf regions to memory mapped to preserve byte access. 2003-07-16 Greg Menke PR 432/bsps * bootloader/pci.c: Re-instated code that prevents remapping small IO regions, which if remapped would cause i8259 registers to move out from under the #define'd base addresses. * startup/bspstart.c: Reduced BAT2 PCI memory allocation to 256 megs, I incorrectly had extended it which would cause problems with PCI devices that defined prefetchable memory. 2003-06-13 Greg Menke PR 405/bsps * bootloader/pci.c: Added support for configuring devices for pci busses > 0 * pci/pci.c, pci/pci.h: Added FixupPCI() to store vectors in the INTERRUPT_LINE register of pci devices any # of hops away from the host processor. * motorola/motorola.c, motorola/motorola.h: Added interrupt routing tables in support of FixupPCI. This is board-specific, each board will have to supply information for FixupPCI() to do anything for it. * startup/bspstart.c: Extended bat2 to cover entire PCI address space. * irq/irq.c, irq/irq.h: Added support for shared interrupts. Existing single hander vectors are undisturbed, a new function added to allow adding/removing handlers from a vector. 2003-06-13 Till Straumann PR 415/bsps * include/bsp.h, pci/detect_raven_bridge.c, startup/bspstart.c: Support enabling MCP exceptions on the host bridge. This can be used for memory probing on the VME bus. 2003-04-15 Joel Sherrill PR 386/bsps * vme/vmeconfig.c: Removed declaration of _BSP_vme_bridge_irq. 2003-04-15 Joel Sherrill PR 386/bsps * vme/vmeconfig.c: Removed declaration of _BSP_vme_bridge_irq. 2003-04-10 Till Straumann PR 379/bsps * console/polled_io.c: libcpu provides 'printk' already. Therefore, the implementation in this file was removed (still used for the bootloader, though). It now provides BSP_output_char() for libcpu's printk(). * console/uart.c, console/uart.h: BSP_output_char_via_serial() prototype changed to match the BSP_output_char_function_type. Note that the motorola BSPs use polled-io for the output_char routine, not the uart.c version. The latter can be used be other BSPs however (e.g. SVGM). * console/console.c, console/consoleIo.h, console/polled_io.c, irq/irq_init.c, openpic/openpic.c, pci/detect_raven_bridge.c: Unfortunately, the supported 'printk' format string subset of the polled-io and libcpu implementations are different - hence, a few format strings in the ppc/shared BSP were changed. 2003-04-10 Joel Sherrill PR 383/bsps * irq/irq.c: Fix bug introduced by conflicts in previous patches. 2003-03-25 Till Straumann PR 360/bsps * irq/irq.c, irq/irq_init.c, openpic/openpic.c, openpic/openpic.h: BSP code had set the task priority register multiple times of the OpenPIC instead of setting the individual source priorities. This patch adds openpic_get_source_priority() and openpic_set_source_priority() calls and lets IRQ management code use them. 2003-03-25 Till Straumann PR 349/bsps * irq/irq.c, vme/VME.h, vme/vmeconfig.c: Fixes library dependency on the vmeUniverse driver. It is now possible to use the ppc/shared/irq code on non-VME BSPs without triggering linkage of the vmeUniverse driver. 2003-03-25 Till Straumann PR 349/bsps * irq/irq.c, vme/VME.h, vme/vmeconfig.c: Fixes library dependency on the vmeUniverse driver. It is now possible to use the ppc/shared/irq code on non-VME BSPs without triggering linkage of the vmeUniverse driver. 2003-03-25 Till Straumann PR 349/bsps * irq/irq.c, vme/VME.h, vme/vmeconfig.c: Fixes library dependency on the vmeUniverse driver. It is now possible to use the ppc/shared/irq code on non-VME BSPs without triggering linkage of the vmeUniverse driver. 2003-03-18 Till Straumann PR 356/bsps This patch makes RTEMS/powerpc/shared EABI compliant. * irq/irq_init.c, start/Makefile.am, start/start.S, startup/bspstart.c, startup/pgtbl_setup.c, vectors/vectors.h, vectors/vectors_init.c: zero_bss() should clear not only bss but sbss and sbss2 also (this is probably a bugfix, as sbss/sbss2 are probably used even if -msdata=eabi is not specified). * start/rtems_crti.S: New file which must be linked immediately after ecrti.o. rtems_crti.o contains a code snippet who lets __init() return immediately. Also, a new entry point '_init' to the C++ Ctors is generated for use by the RTEMS Thread_Handler. 2003-02-20 Till Straumann PR 349/bsps * console/polled_io.c, console/reboot.c, irq/irq.c, irq/irq_asm.S, irq/irq_init.c, openpic/Makefile.am, startup/linkcmds, vectors/vectors.S, vectors/vectors_init.c: - install the 'openpic.h' and 'pci.h' headers - avoid a name clash by renaming 'vsprintf' & friends to 'k_vsprintf' etc. - let 'rtemsReboot' print a stack trace (in case an 'assert' failed) - irq.c: * fix: remove implicit assumption that ISA interrupt vectors start at 0 * add BSP hook to let a VME interrupt acknowledge the PCI/openpic IRQ. (SEE ALSO THE ppc-sharedbsp-vme.diff patch) - fix: EABI compliance; isr/exception lowlevel handlers must not clobber R2 or R13 - fix: openpic_init was called with the polarity/senses tables swapped (fixed wrong order of arguments) - cosmetics: use new _read_SPRXX() _write_SPRXX() macros 2003-02-20 Till Straumann PR 349/bsps * startup/pgtbl_setup.c, startup/pgtbl_activate.c: New files * startup/Makefile.am, startup/bspstart.c, startup/linkcmds: Let the powerpc/shared (+derived) BSPs use pagetable support from libcpu. 2003-02-20 Till Straumann PR 349/bsps * vme/.cvsignore, vme/Makefile.am, vme/VME.h, vme/VMEConfig.h, vme/vmeconfig.c: Add glue to the powerpc/shared BSP to use the vmeUniverse VME-PCI bridge driver. 2003-02-20 Till Straumann PR 349/bsps * console/console.c, console/uart.c, console/uart.h: implement IOCTLs for the serial (UART) console to install/retrieve a BREAK-IRQ callback. The callback routine (if installed) is invoked from the UART ISR when a BREAK interrupt is detected. This can be used e.g. to enforce a "hotkey" reboot a la vxWorks Ctrl-X (although we use the serial line break condition) NOTE: The callback runs in ISR context. 2003-01-20 Joel Sherrill * startup/linkcmds*: Add FreeBSD sysctl() sections. 2002-12-08 Greg Menke * bootloader/head.S: Added support for optional debug via PPCbug. Also turn off mmu/caches for the bootstrap phase, which seems to cause trouble with the 603. The cpu init functions in the bsp get all that stuff going properly. 2002-12-19 Joel Sherrill * console/console.c: Removed __assert() which conflicts with newlib. 2002-11-17 Greg Menke * irq/irq_init.c, motorola/motorola.c: Support for MTX603e. 2002-10-31 Joel Sherrill * bootloader/em86.c, console/inch.c, console/polled_io.c, irq/irq.c, motorola/motorola.c, pci/detect_raven_bridge.c, vectors/vectors_init.c: Removed warnings. 2002-07-25 Ralf Corsepius * bootloader/em86real.S: Fix syntax error in comment near line 1185. 2001-05-14 Till Straumann * bootloader/misc.c, console/Makefile.am, console/console.c, console/consoleIo.h, console/inch.c, console/polled_io.c, console/uart.c, console/uart.h, include/bsp.h, irq/Makefile.am, irq/irq.c, irq/irq.h, irq/irq_init.c, openpic/openpic.c, openpic/openpic.h, pci/Makefile.am, pci/pci.c, pci/pci.h, residual/Makefile.am, start/start.S, startup/bspstart.c, vectors/vectors.S, vectors/vectors.h, vectors/vectors_init.c: Per PR216, "libbsp/powerpc/shared" BSP has been modified considerably with the goal to make it more flexible and reusable by other BSPs. The main strategies were: - eliminate hardcoded base addresses; devices use offsets and a BSP defined base address. - separate functionality into different files (e.g. reboot from inch.c to reboot.c) which can be overridden by a 'derived' BSP. - separate initialization code into separate files (e.g. PCI bridge detection/initialization was separated from the more generic PCI access routines), also to make it easier for 'derived' BSPs to substitute their own initialization code. There are also a couple of enhancements and fixes: - IRQ handling code now has a hook for attaching a VME bridge. - OpenPIC is now explicitely initialized (polarities, senses). Eliminated the implicit assumption on the presence of an ISA PIC. - UART and console driver now supports more than 1 port. The current maximum of 2 can easily be extended by enlarging a table (it would even be easier if the ISR API was not broken by design). - fixed polled_io.c so it correctly supports console on COM2 - fixed TLB invalidation code (start.S). - exception handler prints a stack backtrace. - added BSP_pciFindDevice() to scan the pci bus for a particular vendor/device/instance. 2001-05-09 Joel Sherrill * startup/linkcmds: In support of gcc 3.1, added one of more of the sections .jcr, .rodata*, .data.*, .gnu.linkonce.s2.*, .gnu.linkonce.sb2.*, and .gnu.linkonce.s.*. Spacing corrections and direction of segments to memory regions may also have been addressed. This was a sweep across all BSPs. 2002-04-18 Ralf Corsepius * bootloader/exception.S: Reflect changes to . * bootloader/head.S: Ditto. * bootloader/misc.c: Ditto. * console/polled_io.c: Ditto. * irq/irq.c: Ditto. * irq/irq_asm.S: Ditto. * irq/irq_init.c: Include . * start/start.S: Reflect changes to . * vectors/vectors.S: Ditto. 2002-04-16 Ralf Corsepius * startup/bspstart.c: Include . 2001-04-08 Joel Sherrill * startup/linkcmds: Per PR170, PR171, and PR172 add .eh_frame 2002-04-02 Ralf Corsepius * residual/residual.c: Include . * vectors/vectors_init.c: Include for printk. * bootloader/mm.c: Ditto. * bootloader/pci.c: Ditto. * console/console.c: Ditto. * openpic/openpic.c: Ditto. 2002-03-27 Ralf Corsepius * bootloader/Makefile.am: Remove AUTOMAKE_OPTIONS. * Makefile.am: Remove AUTOMAKE_OPTIONS. * clock/Makefile.am: Remove AUTOMAKE_OPTIONS. * console/Makefile.am: Remove AUTOMAKE_OPTIONS. * include/Makefile.am: Remove AUTOMAKE_OPTIONS. * irq/Makefile.am: Remove AUTOMAKE_OPTIONS. * motorola/Makefile.am: Remove AUTOMAKE_OPTIONS. * openpic/Makefile.am: Remove AUTOMAKE_OPTIONS. * pci/Makefile.am: Remove AUTOMAKE_OPTIONS. * residual/Makefile.am: Remove AUTOMAKE_OPTIONS. * start/Makefile.am: Remove AUTOMAKE_OPTIONS. * startup/Makefile.am: Remove AUTOMAKE_OPTIONS. * vectors/Makefile.am: Remove AUTOMAKE_OPTIONS. 2001-11-28 Ralf Corsepius * include/Makefile.am: Use _HEADER instead of H_FILES. * irq/Makefile.am: Ditto. * openpic/Makefile.am: Ditto. * include/bsp.h: Include . 2001-10-25 Joel Sherrill * startup/linkcmds: Added _init and _fini. 2001-10-12 Joel Sherrill * clock/p_clock.c, startup/bspstart.c: Fixed typo. 2001-09-27 Ralf Corsepius * console/Makefile.am: Use 'PREINSTALL_FILES ='. * residual/Makefile.am: Use 'PREINSTALL_FILES ='. * irq/Makefile.am: Use 'PREINSTALL_FILES ='. * motorola/Makefile.am: Use 'PREINSTALL_FILES ='. * vectors/Makefile.am: Use 'PREINSTALL_FILES ='. * pci/Makefile.am: Use 'PREINSTALL_FILES ='. * openpic/Makefile.am: Use 'PREINSTALL_FILES ='. 2001-05-14 Tom Armistead * start/start.S: Increased BAT0 mapping of RAM from 64 meg to 256 meg to allow operation on boards with larger RAM sizes. * vectors/vectors_init.c: Modified to call 'generic' powerpc vector function (mpc60x_vector_is_valid) instead of MPC750 specific function to allow operation on boards with CPUs other than the MPC750. 2001-03-30 Eric Valette * Makefile.am, console/consoleIo.h, include/bsp.h: These modifications are part of the conversion of the mpc8xx CPU to the "new exception processing model." 2000-11-01 Joel Sherrill * startup/bspstart.c: assoc.h, error.h, libio_.h, libio.h, and libcsupport.h moved from libc to lib/include/rtems and now must be referenced as . Header file order was cleaned up while doing this. 2000-09-29 Charles-Antoine Gauthier * startup/linkcmds: Added lines so DWARF debug information would be available. Otherwise gdb complains that the offsets for the debug info are incorrect and doesn't load the files. 2000-09-05 Joel Sherrill * start/start.S: Include proper files to compile. 2000-08-10 Joel Sherrill * ChangeLog: New file.