diff options
Diffstat (limited to 'bsps/aarch64/include/dev/irq/arm-gic-arch.h')
-rw-r--r-- | bsps/aarch64/include/dev/irq/arm-gic-arch.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/bsps/aarch64/include/dev/irq/arm-gic-arch.h b/bsps/aarch64/include/dev/irq/arm-gic-arch.h index 049a1c8555..f1b6fdc03d 100644 --- a/bsps/aarch64/include/dev/irq/arm-gic-arch.h +++ b/bsps/aarch64/include/dev/irq/arm-gic-arch.h @@ -49,8 +49,10 @@ extern "C" { static inline void arm_interrupt_handler_dispatch(rtems_vector_number vector) { uint32_t interrupt_level = _CPU_ISR_Get_level(); - _CPU_ISR_Set_level(1); + /* Enable interrupts for nesting */ + _CPU_ISR_Set_level(0); bsp_interrupt_handler_dispatch(vector); + /* Restore interrupts to previous level */ _CPU_ISR_Set_level(interrupt_level); } |