| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Make the GIC interrupt controller support a subgroup of the generic interrupt
controller support.
|
|
|
|
|
|
|
|
|
|
|
| |
Move declarations of bsp_interrupt_get_affinity() and
bsp_interrupt_set_affinity() to <bsp/irq-generic.h>. Canonicalize the
<bsp/irq.h> includes.
Implement bsp_interrupt_get_affinity() and bsp_interrupt_set_affinity() only if
needed (usually RTEMS_SMP).
Provide stub implementations for i386 to fix build errors.
|
|
|
|
| |
Provide arm_gic_irq_processor_count() only in SMP configurations.
|
|
|
|
|
|
|
| |
Let the BSP define TM27_INTERRUPT_VECTOR_DEFAULT to more efficiently and
reliably get the TM27 default interrupt vector.
Update #3716.
|
|
|
|
|
| |
Avoid a dynamic memory allocation for the <tm27.h> interrupts. Replace
assert() with _Assert().
|
|
|
|
|
| |
The embedded brains GmbH & Co. KG is the legal successor of embedded
brains GmbH.
|
|
|
|
|
|
|
| |
Add TM27_USE_VECTOR_HANDLER to select the interrupt handler type used by
the <tm27.h> implementation.
Close #4820.
|
|
|
|
|
|
|
| |
Use the existing WRITE_SR() abstraction to access the interrupt group 0 and 1
enable registers. This fixes the build for the AArch32 target.
Add BSP options which define the initial values of CPU Interface registers.
|
|
|
|
| |
Updates #3053.
|
|
|
|
|
|
| |
RTEMS runs at EL1 and the removed register accesses are for
EL3 or the TF-A. This change aligns our driver with the Linux
and FreeBSD ones.
|
| |
|
| |
|
| |
|
|
|
|
| |
Make the processor index a parameter.
|
|
|
|
| |
Make the distributor register block a parameter.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Separate the Interrupt Manager implementation from the generic Arm GICv3
support. Move parts of the Arm GICv3 support into a new header file. This
helps to support systems with a clustered structure in which multiple GICv3
instances are present. For example, two clusters of two Cortex-R52 cores where
each cluster has a dedicated GICv3 instance.
|
|
|
|
| |
Updates #4625.
|
|
|
|
| |
Update #3269.
|
|
|
|
|
|
| |
Return a status code for bsp_interrupt_set_affinity().
Update #3269.
|
|
|
|
|
|
| |
Return a status code for bsp_interrupt_get_affinity().
Update #3269.
|
| |
|
|
|
|
|
|
| |
ZynqMP hardware appears to have an odd hard-wired SGI implementation in
which the SGIs are permanently set as enabled or disabled. Allow the
TM27 IRQs to be overridden as necessary.
|
|
|
|
|
|
| |
This avoids a function call overhead in the interrupt dispatching.
Update #4202.
|
|
|
|
|
|
| |
Avoid one level of indirection.
Update #4202.
|
|
|
|
| |
Update #4202.
|
|
|
|
|
|
| |
The arm_cp15 function for accessing the current CPU index is specific
to ARMv7 while this header is used for ARMv8 as well. Instead, use a
generic accessor that is part of the standard CPU API.
|
|
|
|
|
|
|
| |
Remove the target filter for software-generated interrupts since this
feature is not supported by the affinity routing in GICv3.
Update #4202.
|
|
|
|
|
|
|
|
| |
Use the targets parameter to determine the targets of the SGI. Change
targets parameter type to 32-bit to ease the parameter passing. GICv3
supports up to 16 targets.
Update #4202.
|
|
|
|
|
| |
This moves the ARM GICv2 driver to bsps/shared to be usable by AArch64
code.
|
|
This breaks out AArch32-specific code so that the shared GICv3 code can
be reused by other architectures.
|