forked from Imagelibrary/rtems
bsps/riscv: Always dispatch software interrupts
This helps to run the interrupt API validation tests.
This commit is contained in:
@@ -99,7 +99,6 @@ void _RISCV_Interrupt_dispatch(uintptr_t mcause, Per_CPU_Control *cpu_self)
|
||||
__asm__ volatile ("fence o, i" : : : "memory");
|
||||
}
|
||||
} else if (mcause == (RISCV_INTERRUPT_SOFTWARE_MACHINE << 1)) {
|
||||
#ifdef RTEMS_SMP
|
||||
/*
|
||||
* Clear the software interrupt on this processor. Synchronization of
|
||||
* inter-processor interrupts is done via Per_CPU_Control::message in
|
||||
@@ -107,10 +106,10 @@ void _RISCV_Interrupt_dispatch(uintptr_t mcause, Per_CPU_Control *cpu_self)
|
||||
*/
|
||||
*cpu_self->cpu_per_cpu.clint_msip = 0;
|
||||
|
||||
#ifdef RTEMS_SMP
|
||||
_SMP_Inter_processor_interrupt_handler(cpu_self);
|
||||
#else
|
||||
bsp_interrupt_handler_dispatch(RISCV_INTERRUPT_VECTOR_SOFTWARE);
|
||||
#endif
|
||||
bsp_interrupt_handler_dispatch(RISCV_INTERRUPT_VECTOR_SOFTWARE);
|
||||
} else {
|
||||
bsp_fatal(RISCV_FATAL_UNEXPECTED_INTERRUPT_EXCEPTION);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user