summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/powerpc (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 2002-09-14 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-09-142-0/+7
| | | | | * cpu.c: Include declaration of variable i in ifdef USE_SPRG to eliminate warning.
* 2002-09-08 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-09-082-1/+4
| | | | * configure.ac: Remove duplicate mpc6xx/timer/Makefile from CONFIG_FILES.
* 2002-09-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-09-022-0/+7
| | | | | * mpc8260/exceptions/raw_exception.c: #include <string.h>. #include <bspIo.h>.
* 2002-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-08-113-7/+12
| | | | | * mpc6xx/wrapup/Makefile.am: Use .$(OBJEXT) instead of .o. * wrapup/Makefile.am: Use .$(OBJEXT) instead of .o.
* 2002-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-08-112-0/+8
| | | | * Makefile.am: Use .$(OBJEXT) instead of .o.
* 2002-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-08-1128-30/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mpc505/ictrl/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc505/timer/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc505/vectors/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc6xx/clock/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc6xx/exceptions/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc6xx/mmu/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc6xx/timer/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8260/clock/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8260/console-generic/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8260/cpm/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8260/exceptions/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8260/mmu/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8260/timer/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8xx/clock/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8xx/console-generic/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8xx/cpm/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8xx/exceptions/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8xx/mmu/Makefile.am: Use .$(OBJEXT) instead of .o. * mpc8xx/timer/Makefile.am: Use .$(OBJEXT) instead of .o. * ppc403/clock/Makefile.am: Use .$(OBJEXT) instead of .o. * ppc403/console/Makefile.am: Use .$(OBJEXT) instead of .o. * ppc403/ictrl/Makefile.am: Use .$(OBJEXT) instead of .o. * ppc403/timer/Makefile.am: Use .$(OBJEXT) instead of .o. * ppc403/tty_drv/Makefile.am: Use .$(OBJEXT) instead of .o. * ppc403/vectors/Makefile.am: Use .$(OBJEXT) instead of .o. * shared/include/Makefile.am: Use .$(OBJEXT) instead of .o. * shared/src/Makefile.am: Use .$(OBJEXT) instead of .o.
* 2002-07-24 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-07-242-0/+5
| | | | * mpc6xx/mmu/pte121.c: Include <string.h> for gcc-3.1.
* 2002-07-22 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2002-07-222-1/+7
| | | | | | * mpc6xx/mmu/bat.c: Per PR241, fix a tiny bug introduced by the fix for an earlier patch (PR213) which added support for setting BAT0 to setdbat().
* 2002-07-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-07-211-0/+4
| | | | * Makefile.am: Fix oversights in previous patch.
* 2002-07-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-07-211-0/+6
| | | | | | * rtems.S: Remove. * Makefile.am: Reflect having removed rtems.S. Use AM_CPPFLAGS instead of INCLUDES (Latest automake standard).
* 2001-05-17 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-05-173-3/+8
| | | | | * mpc6xx/exceptions/raw_exception.c, pc6xx/mmu/pte121.c: Modified slightly to reflect recent PowerPC re-organization and avoid warnings.
* 2001-05-15 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2002-05-153-0/+1026
| | | | | * mpc6xx/mmu/pte121.c, mpc6xx/mmu/pte121.h: New files. Missed in merge of PR213.
* 2001-05-14 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-05-142-2/+6
| | | | * shared/include/cpuIdent.c: Account for duplicate numbers.
* 2002-05-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-05-143-1/+134
| | | | | | * rtems/powerpc/debugmod.h: New file (extracted from score/ppc.h). * Makefile.am: Relect changes above.
* 2001-05-14 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2002-05-142-1/+34
| | | | | | | | | | | | | | | | | | | | | * cpu.c: Per PR211 fix saving/restoring floating point context. The fpsave and fprestore routines are only used in a executing context which _is_ fp and hence has the FPU enabled. The current behavior required the FPU always to be on which is very dangerous if lazy context switching is used. [Joel Note: Some ports explicitly enabled the FPU in the FP save and restore routines to avoid this.] The patch also makes sure (on powerpc only) that the FPU is disabled for integer tasks. Note that this is crucial if deferred fp context switching is used. Otherwise, fp context corruption may go undetected! Also note that even tasks which merely push/pop FP registers to/from the stack without modifying them still MUST be FP tasks - otherwise (if lazy FP context switching is used), FP register corruption (of other, FP, tasks may occur)! Furthermore, (on PPC) by default, lazy FP context save/restore is _disabled_.
* 2001-05-14 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2002-05-142-3/+29
| | | | | | | | | | | | | | | | * shared/include/io.h: Per PR215 address the following issues: - _IO_BASE, _ISA_MEM_BASE and PCI_DRAM_OFFSET are no longer defined by libcpu (powerpc/shared/include/io.h) but by the BSP (who is the only one to know the values) - the affected BSP (shared/motorola) headers have been fixed in a separate "libbsp/powerpc/shared" patch. - the DEC 21140 driver (libchip/network/dec21140.c) has been fixed to use PCI_DRAM_OFFSET instead of PREP_PCI_DRAM_OFFSET. and PCI_MEM_BASE instead of PREP_ISA_MEM_BASE. PCI_MEM_BASE is to be defined by the BSP who is using this driver. - the DEC driver also has been fixed to use the newer rtems_bsp_delay_in_bus_cycles() instead of the obsolete delay_in_bus_cycles().
* 2001-05-14 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2002-05-148-58/+206
| | | | | | | | | | | | | | | | | | | | | | | | | | | * rtems/powerpc/registers.h, rtems/score/ppc.h: Per PR213, add the following: - support for the MPC74000 (AKA G4); there is no AltiVec support yet, however. - the cache flushing assembly code uses hardware-flush on the G4. Also, a couple of hardcoded numerical values were replaced by more readable symbolic constants. - extended interrupt-disabled code section so enclose the entire cache flush/invalidate procedure (as recommended by the book). This is not (latency) critical as it is only used by init code but prevents possible corruption. - Trivial page table support as been added. (1:1 effective-virtual-physical address mapping which is only useful only on CPUs which feature hardware TLB replacement, e.g. >604. This allows for write-protecting memory regions, e.g. text/ro-data which makes catching corruptors a lot easier. It also frees one DBAT/IBAT and gives more flexibility for setting up address maps :-) - setdbat() allows changing BAT0 also (since the BSP may use a page table, BAT0 could be available...). - asm_setdbatX() violated the SVR ABI by using r20 as a scratch register; changed for r0 - according to the book, a context synchronizing instruction is necessary prior to and after changing a DBAT -> isync added
* 2002-04-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-05-013-0/+69
| | | | | | * rtems/powerpc/cache.h: New file (extracted from old-exceptions/cpu.h) * Makefile.am: Relect changes above.
* 2002-04-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-05-012-0/+6
| | | | * cpu.c: Include <rtems/powerpc/cache.h>.
* 2002-04-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-1814-337/+36
| | | | | | | | | | | | | | | | | * shared/include/cpu.h: Removed. * shared/include/Makefile.am: Reflect changes above. * shared/include/spr.h: Include rtems/powerpc/registers.h instead of libcpu/cpu.h. * mpc6xx/clock/c_clock.c: Reflect changes to <rtems/score/cpu.h>. * mpc6xx/exceptions/asm_utils.S: Ditto. * mpc6xx/exceptions/raw_exception.c: Ditto. * mpc6xx/mmu/mmuAsm.S: Ditto. * mpc6xx/timer/timer.c: Ditto. * mpc8260/exceptions/asm_utils.S: Ditto. * mpc8260/exceptions/raw_exception.c: Ditto. * mpc8xx/exceptions/asm_utils.S: Ditto. * mpc8xx/exceptions/raw_exception.c: Ditto. * ppc403/vectors/vectors.S: Include <asm.h> instead of "asm.h".
* 2002-04-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-182-0/+10
| | | | | * rtems/score/cpu.h: Removed. * Makefile.am: Reflect changes above.
* 2001-04-17 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-173-1/+7
| | | | * shared/include/cpu.h: Added ifndef ASM.
* 2001-04-17 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-171-2/+10
| | | | * ChangeLog: Corrected paths on past few commits.
* 2002-04-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-172-2/+4
| | | | * shared/include/cpu.h: Don't include cpuIdent.h.
* 2002-04-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-173-0/+6
| | | | * exceptions/raw_exception.c: Include <libcpu/cpuIdent.h>.
* 2002-04-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-171-0/+4
| | | | * exceptions/raw_exception.c: Include <libcpu/cpuIdent.h>.
* 2002-04-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-165-25/+58
| | | | | | | * shared/include/cpuIdent.h: New. * shared/include/cpuIdent.c: Reflect having added cpuIdent.h. * shared/include/cpu.h: Ditto. * shared/include/Makefile.am: Add cpuIndent.h. Fix EXTRA_DIST.
* 2002-04-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-081-1/+0
| | | | * console-generic/console-generic.c: Remove unused variable "res".
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-032-2/+9
| | | | | | | | | * Closed PR57. The hack is OK as it allows a BSP to override or not at its discretion. * mpc8xx/timer/timer.c: Removed #warning declaring providing a default definition for the macros rtems_cpu_configuration_get_timer_least_valid and rtems_cpu_configuration_get_timer_average_overhead.
* 2002-02-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-032-4/+9
| | | | | * shared/include/byteorder.h: Use unsigned instead of __unsigned (GCC-3.0.x compatibility).
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-032-0/+10
| | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/cpu.h: Account for name change.
* 2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-03-282-0/+14
| | | | | | | * configure.ac: AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS). AM_INIT_AUTOMAKE([no-define foreign 1.6]). * Makefile.am: Remove AUTOMAKE_OPTIONS.
* 2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-03-2840-40/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.ac: AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS). AM_INIT_AUTOMAKE([no-define foreign 1.6]). * mpc505/ictrl/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc505/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc505/timer/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc505/vectors/Makefile.am: Remove AUTOMAKE_OPTIONS. * Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc6xx/clock/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc6xx/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc6xx/exceptions/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc6xx/mmu/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc6xx/timer/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc6xx/wrapup/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8260/clock/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8260/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8260/console-generic/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8260/cpm/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8260/exceptions/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8260/include/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8260/mmu/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8260/timer/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8xx/clock/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8xx/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8xx/console-generic/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8xx/cpm/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8xx/exceptions/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8xx/include/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8xx/mmu/Makefile.am: Remove AUTOMAKE_OPTIONS. * mpc8xx/timer/Makefile.am: Remove AUTOMAKE_OPTIONS. * ppc403/clock/Makefile.am: Remove AUTOMAKE_OPTIONS. * ppc403/Makefile.am: Remove AUTOMAKE_OPTIONS. * ppc403/console/Makefile.am: Remove AUTOMAKE_OPTIONS. * ppc403/ictrl/Makefile.am: Remove AUTOMAKE_OPTIONS. * ppc403/timer/Makefile.am: Remove AUTOMAKE_OPTIONS. * ppc403/tty_drv/Makefile.am: Remove AUTOMAKE_OPTIONS. * ppc403/vectors/Makefile.am: Remove AUTOMAKE_OPTIONS. * shared/include/Makefile.am: Remove AUTOMAKE_OPTIONS. * shared/Makefile.am: Remove AUTOMAKE_OPTIONS. * shared/src/Makefile.am: Remove AUTOMAKE_OPTIONS. * wrapup/Makefile.am: Remove AUTOMAKE_OPTIONS.
* 2002-01-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-01-047-6/+15
| | | | | | | | | * mpc6xx/clock/c_clock.c: Include rtems/bspIo.h instead of bspIo.h. * mpc6xx/mmu/bat.h: Include rtems/bspIo.h instead of bspIo.h. * mpc8260/console-generic/console-generic.c: Include rtems/bspIo.h instead of bspIo.h. * mpc8260/cpm/brg.c: Include rtems/bspIo.h instead of bspIo.h. * mpc8xx/console-generic/console-generic.c: Include rtems/bspIo.h instead of bspIo.h. * shared/include/cpuIdent.c: Include rtems/bspIo.h instead of bspIo.h.
* 2001-11-28 Joel Sherrill <joel@OARcorp.com>,Joel Sherrill2001-11-284-1/+50
| | | | | | | | | | This was tracked as PR91. * rtems/score/cpu.h: Added CPU_PROVIDES_ISR_IS_IN_PROGRESS macro which is used to specify if the port uses the standard macro for this (FALSE). A TRUE setting indicates the port provides its own implementation. * rtems/score/c_isr.inl: Deleted and contents merged into cpu.c. * cpu.c: Received contents of c_isr.inl. * Makefile.am: Deleted reference to c_isr.inl.
* 2001-11-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-11-283-7/+6
| | | | | * ppc403/vectors/vectors.S: Include <bsp.h>. * shared/include/cpu.h: Remove stray empty lines.
* 2001-11-27 Joel Sherrill <joel@OARcorp.com>,Joel Sherrill2001-11-2719-5067/+18
| | | | | | | | | | | | | | | | | | * new_exception_processing/Makefile.in, new_exception_processing/.cvsignore, new_exception_processing/Makefile.am, new_exception_processing/c_isr.inl, new_exception_processing/cpu.c, new_exception_processing/cpu.h, new_exception_processing/cpu_asm.S, old_exception_processing/Makefile.in, old_exception_processing/.cvsignore, old_exception_processing/Makefile.am, old_exception_processing/README, old_exception_processing/TODO, old_exception_processing/c_isr.inl, old_exception_processing/cpu.c, old_exception_processing/cpu.h, old_exception_processing/cpu_asm.S, old_exception_processing/irq_stub.S, old_exception_processing/ppc_offs.h, old_exception_processing/ppccache.c, old_exception_processing/rtems.S: Deleted since now under libbsp.
* 2001-11-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-11-273-25/+7
| | | | | | * configure.ac: Remove old_exception_processing, new_exception_processing. * Makefile.am: Ditto.
* 2001-11-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-11-272-0/+8
| | | | * .cvsignore: Add aclocal.m4, autom4te.*, config.*, configure.
* 2001-11-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-11-212-4/+6
| | | | | * configure.ac: Remove mpc750 from new_exception_processing, Remove mpc604 from new_exception_processing.
* 2001-11-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-11-212-0/+10
| | | | | * Makefile.am: Preinstall c_isr.inl (HACK). * ChangeLog: New file.
* 2001-11-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-11-212-2/+5
| | | | * configure.ac: Remove ppc603e from old_exception_processing.
* 2001-11-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-11-202-1/+4
| | | | * configure.ac: Remove mpc8xx from new_exception_processing.
* 2001-11-20 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2001-11-201-0/+166
| | | | | | | | | | | * support/new_exception_processing/configure.ac, support/new_exception_processing/rtems/score/c_isr.inl, support/new_exception_processing/rtems/score/cpu.h, support/old_exception_processing/configure.ac, support/old_exception_processing/rtems/score/c_isr.inl, support/old_exception_processing/rtems/score/cpu.h, support/old_exception_processing/rtems/score/ppc_offs.h: New files missed in previous commit.
* 2001-11-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-11-202-1/+4
| | | | * configure.ac: Remove mpc8620 from new_exception_processing.
* 2001-11-20 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-11-202-1/+11
| | | | | | | | | | | | | * support/new_exception_processing/Makefile.am, support/old_exception_processing/Makefile.am, support/old_exception_processing/cpu_asm.S, support/old_exception_processing/irq_stub.S: Modified to reflect old versus new exception processing being a per BSP option. * support/new_exception_processing/c_isr.inl, support/new_exception_processing/cpu.h, support/old_exception_processing/c_isr.inl, support/old_exception_processing/cpu.h, support/old_exception_processing/ppc_offs.h: Removed.
* 2001-11-20 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2001-11-201-1/+4
| | | | * ChangeLog: Corrected spacing.
* 2001-11-14 Till Straumann <strauman@SLAC.Stanford.EDU>Joel Sherrill2001-11-143-196/+224
| | | | | | | * new_exception_processing/cpu_asm.S: Support double or single precision context switches. Note that doing a single precision context save/restore on a double precision PowerPC machine does not only result in rounding errors but also screws up the FPSCR register!
* 2001-11-08 Dennis Ehlin (ECS) <Dennis.Ehlin@ecs.ericsson.se>Joel Sherrill2001-11-0919-29/+1378
| | | | | | | | | | | | | | | | This modification is part of the submitted modifications necessary to support the IBM PPC405 family. This submission was reviewed by Thomas Doerfler <Thomas.Doerfler@imd-systems.de> who ensured it did not negatively impact the ppc403 BSPs. The submission and tracking process was captured as PR50. * ppc403/console/console405.c ppc403/tty_drv/.cvsignore, ppc403/tty_drv/Makefile.am, ppc403/tty_drv/tty_drv.c, ppc403/tty_drv/tty_drv.h: New files. * Makefile.am, README, configure.ac, old_exception_processing/cpu.c, old_exception_processing/cpu.h, ppc403/Makefile.am, ppc403/clock/clock.c, ppc403/console/Makefile.am, ppc403/console/console.c, ppc403/ictrl/ictrl.c, ppc403/ictrl/ictrl.h, ppc403/timer/timer.c: Modified.
* 2001-11-07 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2001-11-072-1/+6
| | | | | | * configure.ac: Delete the commented out line that said that the mpc8260 used the old exception processing model. This line also appears to have caused ppc603e to miss this test.