[PATCH 12/13] bsps/arm: Rely on initialized vector table

Sebastian Huber sebastian.huber at embedded-brains.de
Tue Dec 22 13:01:09 UTC 2020


The arm_cp15_set_exception_handler() is a complicated function which
should be avoided if possible.

Update #4202.
---
 bsps/arm/include/dev/irq/arm-gic-arch.h | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/bsps/arm/include/dev/irq/arm-gic-arch.h b/bsps/arm/include/dev/irq/arm-gic-arch.h
index fe981da4f7..c9931be61a 100644
--- a/bsps/arm/include/dev/irq/arm-gic-arch.h
+++ b/bsps/arm/include/dev/irq/arm-gic-arch.h
@@ -37,7 +37,6 @@
 #ifndef _RTEMS_DEV_IRQ_ARM_GIC_ARM_H
 #define _RTEMS_DEV_IRQ_ARM_GIC_ARM_H
 
-#include <libcpu/arm-cp15.h>
 #include <bsp/irq-generic.h>
 #include <rtems/score/armv4.h>
 
@@ -55,10 +54,10 @@ static inline void arm_interrupt_handler_dispatch(rtems_vector_number vector)
 
 static inline void arm_interrupt_facility_set_exception_handler(void)
 {
-  arm_cp15_set_exception_handler(
-    ARM_EXCEPTION_IRQ,
-    _ARMV4_Exception_interrupt
-  );
+  /*
+   * There is no need to install _ARMV4_Exception_interrupt() since this
+   * handler is already set by start.S.
+   */
 }
 
 #ifdef __cplusplus
-- 
2.26.2



More information about the devel mailing list