| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* cpu.c: Include declaration of variable i in ifdef USE_SPRG to
eliminate warning.
|
|
|
|
| |
* configure.ac: Remove duplicate mpc6xx/timer/Makefile from CONFIG_FILES.
|
|
|
|
|
| |
* mpc8260/exceptions/raw_exception.c: #include <string.h>.
#include <bspIo.h>.
|
|
|
|
|
| |
* mpc6xx/wrapup/Makefile.am: Use .$(OBJEXT) instead of .o.
* wrapup/Makefile.am: Use .$(OBJEXT) instead of .o.
|
|
|
|
| |
* Makefile.am: Use .$(OBJEXT) instead of .o.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
* mpc6xx/mmu/pte121.c: Include <string.h> for gcc-3.1.
|
|
|
|
|
|
| |
* 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().
|
|
|
|
| |
* Makefile.am: Fix oversights in previous patch.
|
|
|
|
|
|
| |
* rtems.S: Remove.
* Makefile.am: Reflect having removed rtems.S. Use AM_CPPFLAGS
instead of INCLUDES (Latest automake standard).
|
|
|
|
|
| |
* mpc6xx/exceptions/raw_exception.c, pc6xx/mmu/pte121.c: Modified
slightly to reflect recent PowerPC re-organization and avoid warnings.
|
|
|
|
|
| |
* mpc6xx/mmu/pte121.c, mpc6xx/mmu/pte121.h: New files. Missed in
merge of PR213.
|
|
|
|
| |
* shared/include/cpuIdent.c: Account for duplicate numbers.
|
|
|
|
|
|
| |
* rtems/powerpc/debugmod.h: New file (extracted from
score/ppc.h).
* Makefile.am: Relect changes above.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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_.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
|
|
| |
* rtems/powerpc/cache.h: New file (extracted from
old-exceptions/cpu.h)
* Makefile.am: Relect changes above.
|
|
|
|
| |
* cpu.c: Include <rtems/powerpc/cache.h>.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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".
|
|
|
|
|
| |
* rtems/score/cpu.h: Removed.
* Makefile.am: Reflect changes above.
|
|
|
|
| |
* shared/include/cpu.h: Added ifndef ASM.
|
|
|
|
| |
* ChangeLog: Corrected paths on past few commits.
|
|
|
|
| |
* shared/include/cpu.h: Don't include cpuIdent.h.
|
|
|
|
| |
* exceptions/raw_exception.c: Include <libcpu/cpuIdent.h>.
|
|
|
|
| |
* exceptions/raw_exception.c: Include <libcpu/cpuIdent.h>.
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
* console-generic/console-generic.c: Remove unused variable "res".
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
| |
* shared/include/byteorder.h: Use unsigned instead of __unsigned
(GCC-3.0.x compatibility).
|
|
|
|
|
| |
* Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h.
* rtems/score/cpu.h: Account for name change.
|
|
|
|
|
|
|
| |
* configure.ac:
AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
* Makefile.am: Remove AUTOMAKE_OPTIONS.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
* ppc403/vectors/vectors.S: Include <bsp.h>.
* shared/include/cpu.h: Remove stray empty lines.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
| |
* configure.ac: Remove old_exception_processing,
new_exception_processing.
* Makefile.am: Ditto.
|
|
|
|
| |
* .cvsignore: Add aclocal.m4, autom4te.*, config.*, configure.
|
|
|
|
|
| |
* configure.ac: Remove mpc750 from new_exception_processing,
Remove mpc604 from new_exception_processing.
|
|
|
|
|
| |
* Makefile.am: Preinstall c_isr.inl (HACK).
* ChangeLog: New file.
|
|
|
|
| |
* configure.ac: Remove ppc603e from old_exception_processing.
|
|
|
|
| |
* configure.ac: Remove mpc8xx from new_exception_processing.
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
* configure.ac: Remove mpc8620 from new_exception_processing.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
* ChangeLog: Corrected spacing.
|
|
|
|
|
|
|
| |
* 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!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
* 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.
|