Commit Graph

1554 Commits

Author SHA1 Message Date
Sebastian Huber
39de53882c bsps/powerpc: Add and use ppc_cpu_is_specific_e200 2013-02-06 15:35:54 +01:00
Sebastian Huber
302061471c bsps/powerpc: Fix e200 check 2013-02-06 15:35:54 +01:00
Sebastian Huber
93d4d06574 bsp/mpc55xx: Add mpc55xx_mmu_apply_config() 2013-02-06 15:35:54 +01:00
Sebastian Huber
036788d57b bsps/powerpc: Add option for write-through cache 2013-01-28 16:45:42 +01:00
Sebastian Huber
aeff597721 bsps/powerpc: Add probe handler to I2C driver 2013-01-09 16:45:25 +01:00
Sebastian Huber
339646e887 bsps/powerpc: Fix compiler warnings 2013-01-09 16:45:25 +01:00
Sebastian Huber
370c2c8021 arm: Rename arm_exc_interrupt()
Rename arm_exc_interrupt() to _ARMV4_Exception_interrupt().
2013-01-07 15:07:40 +01:00
Sebastian Huber
9b2e714322 arm: Move prototypes to new file
Move bsp_interrupt_dispatch() and arm_exc_interrupt() prototypes to new
file <rtems/score/armv4.h> since they have nothing to do with the CPU
port.
2013-01-07 15:07:39 +01:00
Sebastian Huber
3af7e23e7f bsp/gen83xx: Add GPR_1 to register map 2012-12-21 15:40:27 +01:00
Sebastian Huber
a640b204c0 bsp/gen83xx: Fix RCWLR_CEVCO defines 2012-12-21 15:40:27 +01:00
Sebastian Huber
191929cd22 bsps/powerpc: Install missing <bsp/vectors.h> 2012-12-07 09:38:40 +01:00
Sebastian Huber
3ce66aabb5 bsp/mpc55xx: Set PPC_EXC_CONFIG_USE_FIXED_HANDLER 2012-12-03 13:17:11 +01:00
Sebastian Huber
67338ed870 bsp/mpc55xx: Add mpc55xx_wait_for_interrupt()
Use mpc55xx_wait_for_interrupt().
2012-12-03 13:17:10 +01:00
Sebastian Huber
bd75e589e1 bsp/mpc55xx: Fix INTC initialization 2012-12-03 13:17:09 +01:00
Sebastian Huber
353f0fa125 bsp/mpc55xx: Add union tags 2012-12-03 13:17:09 +01:00
Sebastian Huber
f665f13ddd bsps/powerpc: Add PPC_EXC_CONFIG_BOOKE_ONLY
In combination with the PPC_EXC_CONFIG_USE_FIXED_HANDLER option this
removes all dependencies on valid read-write data.  The exception
handling must be statically configured and all components reside in
read-only sections.
2012-12-03 13:17:08 +01:00
Sebastian Huber
4bd4c9e1f9 bsps/powerpc: Add PPC_EXC_CONFIG_USE_FIXED_HANDLER
In case a BSP enables this option, then fixed high level exception
handler will be used.  For normal asynchronous exceptions this is
bsp_interrupt_dispatch() and for other exceptions this is the handler
from the read-only ppc_exc_handler_table.  The global handler is
C_exception_handler().  This avoids some dependencies on valid
read-write data.
2012-12-03 13:17:08 +01:00
Sebastian Huber
4263155e96 bsps/powerpc: Declare ppc_exc_handler_table 2012-12-03 13:17:08 +01:00
Ric Claus
809b726ae1 Print MCSR and ESR.
The Machine Check and Exception Syndrome Registers on Book-E and Book-E-like
processors contain useful information for decoding the cause of an exception.

NB: This patch depends on the PR 2048 patch sent earlier having been applied.
2012-12-01 09:04:33 +01:00
Ric Claus
655bd39676 Virtex5 BSP: Various updates and improvements.
This BSP now uses the MPC6xx clock driver instead of a modified PPC403 clock
driver.  Support for the MMU has been added, but is not enabled by default.
2012-12-01 09:04:20 +01:00
Ric Claus
84b19b5405 Restored to pre PPC440 changes.
This file was originally modified by me to support the PPC440 of the virtex5
BSP.  I have since discovered that the clock driver built with the MVME3100
BSP works out of the box for the virtex5 and so have switched to using that.
This file is reverted to the way it was before I touched it, modulo whitespace,
making some functions static (to avoid compiler warnings) and changes by others.
2012-12-01 09:03:17 +01:00
Ralf Kirchner
d1c89524b2 bsps/powerpc: Do not use GCC extern inline 2012-11-29 15:08:42 +01:00
Sebastian Huber
815994fd17 score: Add CPU_Exception_frame
Add CPU port type CPU_Exception_frame and function
_CPU_Exception_frame_print().

The CPU ports of avr, bfin, h8300, lm32, m32c, m32r, m68k, nios2, sh,
sparc64, and v850 use an empty default implementation of
_CPU_Exception_frame_print().

Add rtems_exception_frame and rtems_exception_frame_print().

Add RTEMS_FATAL_SOURCE_EXCEPTION for CPU exceptions.  Use rtems_fatal()
with source RTEMS_FATAL_SOURCE_EXCEPTION in CPU ports of i386, powerpc,
and sparc for unexpected exceptions.

Add third parameter to RTEMS_BSP_CLEANUP_OPTIONS() which controls the
BSP_PRINT_EXCEPTION_CONTEXT define used in the default
bsp_fatal_extension().

Add test sptests/spfatal26.
2012-11-27 17:03:40 +01:00
Sebastian Huber
d2202ac56d powerpc: Add CPU_Exception_frame
The powerpc port uses now a unified CPU_Exception_frame.  This resulted
in a CPU_Exception_frame layout change for the MPC5XX.
2012-11-27 17:03:40 +01:00
Sebastian Huber
f0e3cc0a0a bsps/powerpc: Delete unused EXC_DAR field
The Data Access Register (DAR) is not saved in the exception prologue.
2012-11-27 17:03:40 +01:00
Sebastian Huber
7b02f3c6f1 bsps/powerpc: Delete unused EXC_MSR field
The MSR of the interrupted context is saved in the EXC_SRR1 field.
2012-11-27 17:03:40 +01:00
Sebastian Huber
7e32b62a59 score: Add RTEMS_FATAL_SOURCE_POWERPC_EXCEPTION
Add ppc_exc_print_frame_and_context() which prints an exception frame
and the context via printk().

The global exception handler will call now rtems_fatal() with source
RTEMS_FATAL_SOURCE_POWERPC_EXCEPTION.  The fatal code will contain the
pointer value to the exception frame.
2012-11-21 16:38:28 +01:00
Sebastian Huber
b1e8a580bc bsps/powerpc: Exception initialization error is fatal 2012-11-15 15:33:13 +01:00
Sebastian Huber
b31a9603e0 score: Add INTERNAL_ERROR_CPU_ISR_INSTALL_VECTOR
Use INTERNAL_ERROR_CPU_ISR_INSTALL_VECTOR on PowerPC for
_CPU_ISR_install_vector().
2012-11-15 15:33:11 +01:00
Sebastian Huber
00dae1866d powerpc: Delete _CPU_Install_interrupt_stack()
This function is only used if CPU_HAS_HARDWARE_INTERRUPT_STACK == TRUE.
2012-11-14 14:06:59 +01:00
Sebastian Huber
5e86086f1e sapi: Use rtems_config*_get_microseconds_per_tick 2012-11-07 15:08:43 +01:00
Sebastian Huber
26e90fb1c6 libnetworking: Use system events
Add reserved system events RTEMS_EVENT_SYSTEM_NETWORK_SBWAIT and
RTEMS_EVENT_SYSTEM_NETWORK_SOSLEEP.

Add and use rtems_bsdnet_event_send().
2012-11-02 09:34:35 +01:00
Ralf Corsépius
02687e22bd Remove unused vars 'rxdmaBase', txdmaBase. 2012-10-19 14:01:23 +02:00
Ralf Corsépius
37a532b99a Remove stray blanks. 2012-10-19 13:59:32 +02:00
Ralf Corsépius
23242172ab Add clock/rtc.h to rtc_rel_SOURCES. 2012-10-19 13:58:26 +02:00
Joel Sherrill
0e27119f80 Use proper 3 line form of license text 2012-10-11 15:52:51 -05:00
Sebastian Huber
245cad54f2 bsp/mpc55xx: Fix bsp_idle_thread() 2012-10-02 15:27:33 +02:00
Sebastian Huber
94102775e0 bsp/mpc55xx: Add and use MPC55XX_CHIP_FAMILY 2012-10-02 15:27:33 +02:00
Thomas Doerfler
d9af2ed4dd bsp/gen83xx: Add br_uid BSP variant 2012-08-20 10:16:32 +02:00
Sebastian Huber
69b346b755 bsp/mpc55xx: eQADC register changes 2012-07-25 13:51:51 +02:00
Sebastian Huber
208f4794a2 bsp/mpc55xx: New EBI settings for MPC5674F boards 2012-07-25 13:51:51 +02:00
Ralf Corsépius
1c554014af Remove CVS-Ids. 2012-07-19 16:55:18 +02:00
Ralf Corsépius
bb2b8259ea Require automake-1.12.2. 2012-07-19 15:47:55 +02:00
Ralf Corsépius
0f772813aa Require autoconf-2.69. 2012-07-19 15:44:32 +02:00
Christian Mauderer
2d43f2df66 bsp/mpc55xx: Support re-initialization of eDMA 2012-07-18 09:46:13 +02:00
Sebastian Huber
c44b517f87 bsp/mpc55xx: Add union name 2012-07-18 09:42:58 +02:00
Sebastian Huber
1869bb7101 powerpc: Simplify context switch
PowerPC cores with the SPE (Signal Processing Extension) have 64-bit
general-purpose registers.  The SPE context switch code has been merged
with the standard context switch code.  The context switch may use cache
operations to increase the performance.  It will be ensured that the
context is 32-byte aligned (PPC_DEFAULT_CACHE_LINE_SIZE).  This
increases the overall memory size of the context area in the thread
control block slightly.  The general-purpose registers GPR2 and GPR13
are no longer part of the context.  The BSP must initialize these
registers during startup (usually initialized by the __eabi() function).

The new BSP option BSP_USE_DATA_CACHE_BLOCK_TOUCH can be used to enable
the dcbt instruction in the context switch.

The new BSP option BSP_USE_SYNC_IN_CONTEXT_SWITCH can be used to enable
sync and isync instructions in the context switch.  This should be not
necessary in most cases.
2012-06-04 09:54:31 +02:00
Joel Sherrill
721fe34aae Fix C files which had two semi-colons at EOL 2012-05-31 15:34:36 -05:00
Sebastian Huber
e21c287cdb powerpc/t32mppc: New BSP 2012-05-22 15:05:22 +02:00
Joel Sherrill
65c6425de9 Remove CVS Id Strings (manual edits after script)
These modifications were required by hand after running the script.
In some cases, the file names did not match patterns. In others,
the format of the file did not match any common patterns.
2012-05-11 08:44:14 -05:00