summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/powerpc/ppc403/ictrl/ictrl.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--c/src/lib/libcpu/powerpc/ppc403/ictrl/ictrl.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/c/src/lib/libcpu/powerpc/ppc403/ictrl/ictrl.c b/c/src/lib/libcpu/powerpc/ppc403/ictrl/ictrl.c
index dc51da6bd6..f6ceb68b55 100644
--- a/c/src/lib/libcpu/powerpc/ppc403/ictrl/ictrl.c
+++ b/c/src/lib/libcpu/powerpc/ppc403/ictrl/ictrl.c
@@ -161,6 +161,7 @@ ictrl_spurious_handler(uint32_t spurious_mask,
CPU_Interrupt_frame *cpu_frame)
{
int v;
+ extern void (*bsp_spurious_handler)(uint32_t vector, CPU_Interrupt_frame *);
for (v=0; v < PPC_IRQ_EXT_MAX; v++) {
if (VEC_TO_EXMSK(v) & spurious_mask) {
@@ -170,8 +171,8 @@ ictrl_spurious_handler(uint32_t spurious_mask,
printf("spurious external interrupt: %d at pc 0x%x; disabling\n",
vector, cpu_frame->Interrupt.pcoqfront);
#endif
- if (rtems_cpu_configuration_get_spurious_handler()) {
- rtems_cpu_configuration_get_spurious_handler()(v + PPC_IRQ_EXT_BASE,cpu_frame);
+ if (bsp_spurious_handler) {
+ bsp_spurious_handler(v + PPC_IRQ_EXT_BASE,cpu_frame);
}
}
}