diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-06-28 08:44:49 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-07-26 07:54:25 +0200 |
commit | 9832652c53af44367cd3a9cf789bdb997a85043c (patch) | |
tree | e928e3ad1d27a4d559ff1869eed8f77f202f62a5 /bsps/arm | |
parent | bsps/irq: Add rtems_interrupt_vector_is_enabled() (diff) | |
download | rtems-9832652c53af44367cd3a9cf789bdb997a85043c.tar.bz2 |
bsps/irq: Add rtems_interrupt_raise()
Add rtems_interrupt_raise_on() and rtems_interrupt_clear().
Add a default implementation which just returns RTEMS_UNSATISFIED for
valid parameters.
Update #3269.
Diffstat (limited to 'bsps/arm')
-rw-r--r-- | bsps/arm/beagle/irq/irq.c | 12 | ||||
-rw-r--r-- | bsps/arm/csb336/irq/irq.c | 12 | ||||
-rw-r--r-- | bsps/arm/csb337/irq/irq.c | 12 | ||||
-rw-r--r-- | bsps/arm/edb7312/irq/irq.c | 12 | ||||
-rw-r--r-- | bsps/arm/gumstix/irq/irq.c | 12 | ||||
-rw-r--r-- | bsps/arm/lpc24xx/irq/irq.c | 12 | ||||
-rw-r--r-- | bsps/arm/lpc32xx/irq/irq.c | 12 | ||||
-rw-r--r-- | bsps/arm/raspberrypi/irq/irq.c | 23 | ||||
-rw-r--r-- | bsps/arm/rtl22xx/irq/irq.c | 12 | ||||
-rw-r--r-- | bsps/arm/shared/irq/irq-armv7m.c | 12 | ||||
-rw-r--r-- | bsps/arm/smdk2410/irq/irq.c | 12 | ||||
-rw-r--r-- | bsps/arm/tms570/irq/irq.c | 12 |
12 files changed, 155 insertions, 0 deletions
diff --git a/bsps/arm/beagle/irq/irq.c b/bsps/arm/beagle/irq/irq.c index d0a07d1937..4a89189a32 100644 --- a/bsps/arm/beagle/irq/irq.c +++ b/bsps/arm/beagle/irq/irq.c @@ -95,6 +95,18 @@ static uint32_t omap_get_mir_reg(rtems_vector_number vector, uint32_t *const mas return mir_reg; } +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/csb336/irq/irq.c b/bsps/arm/csb336/irq/irq.c index 80914fe28f..3c9e6a7ea7 100644 --- a/bsps/arm/csb336/irq/irq.c +++ b/bsps/arm/csb336/irq/irq.c @@ -26,6 +26,18 @@ void bsp_interrupt_dispatch(void) bsp_interrupt_handler_dispatch(vector); } +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/csb337/irq/irq.c b/bsps/arm/csb337/irq/irq.c index 5276374a1e..d097a92259 100644 --- a/bsps/arm/csb337/irq/irq.c +++ b/bsps/arm/csb337/irq/irq.c @@ -27,6 +27,18 @@ void bsp_interrupt_dispatch(void) AIC_CTL_REG(AIC_EOICR) = 0; } +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/edb7312/irq/irq.c b/bsps/arm/edb7312/irq/irq.c index d11cbf78c3..0522e40bd8 100644 --- a/bsps/arm/edb7312/irq/irq.c +++ b/bsps/arm/edb7312/irq/irq.c @@ -27,6 +27,18 @@ void edb7312_interrupt_dispatch(rtems_vector_number vector) bsp_interrupt_handler_dispatch(vector); } +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/gumstix/irq/irq.c b/bsps/arm/gumstix/irq/irq.c index 3b62b8f42c..0e7340dab2 100644 --- a/bsps/arm/gumstix/irq/irq.c +++ b/bsps/arm/gumstix/irq/irq.c @@ -24,6 +24,18 @@ void bsp_interrupt_dispatch(void) bsp_interrupt_handler_dispatch(vector); } +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/lpc24xx/irq/irq.c b/bsps/arm/lpc24xx/irq/irq.c index efc7c8beaa..3a0ddb5186 100644 --- a/bsps/arm/lpc24xx/irq/irq.c +++ b/bsps/arm/lpc24xx/irq/irq.c @@ -64,6 +64,18 @@ unsigned lpc24xx_irq_get_priority(rtems_vector_number vector) #ifdef ARM_MULTILIB_ARCH_V4 +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/lpc32xx/irq/irq.c b/bsps/arm/lpc32xx/irq/irq.c index c8b2f33f51..b76c7da3c4 100644 --- a/bsps/arm/lpc32xx/irq/irq.c +++ b/bsps/arm/lpc32xx/irq/irq.c @@ -260,6 +260,18 @@ void bsp_interrupt_dispatch(void) lpc32xx.sic_2.er = er_sic_2 & lpc32xx_irq_enable.field.sic_2; } +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/raspberrypi/irq/irq.c b/bsps/arm/raspberrypi/irq/irq.c index 625fbc5dad..add044d406 100644 --- a/bsps/arm/raspberrypi/irq/irq.c +++ b/bsps/arm/raspberrypi/irq/irq.c @@ -143,6 +143,29 @@ void bsp_interrupt_dispatch(void) } } +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +#if defined(RTEMS_SMP) +rtems_status_code bsp_interrupt_raise_on( + rtems_vector_number vector, + uint32_t cpu_index +) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} +#endif + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/rtl22xx/irq/irq.c b/bsps/arm/rtl22xx/irq/irq.c index 2653cb07bb..6f9b1137b5 100644 --- a/bsps/arm/rtl22xx/irq/irq.c +++ b/bsps/arm/rtl22xx/irq/irq.c @@ -26,6 +26,18 @@ void bsp_interrupt_dispatch(void) VICVectAddr = 0; } +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/shared/irq/irq-armv7m.c b/bsps/arm/shared/irq/irq-armv7m.c index b1ab2afa62..45e5472aae 100644 --- a/bsps/arm/shared/irq/irq-armv7m.c +++ b/bsps/arm/shared/irq/irq-armv7m.c @@ -38,6 +38,18 @@ #ifdef ARM_MULTILIB_ARCH_V7M +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/smdk2410/irq/irq.c b/bsps/arm/smdk2410/irq/irq.c index 7dc219d447..eaba9fe4b0 100644 --- a/bsps/arm/smdk2410/irq/irq.c +++ b/bsps/arm/smdk2410/irq/irq.c @@ -27,6 +27,18 @@ void bsp_interrupt_dispatch(void) bsp_interrupt_handler_dispatch(vector); } +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled diff --git a/bsps/arm/tms570/irq/irq.c b/bsps/arm/tms570/irq/irq.c index 231d8f23c9..24f9972b56 100644 --- a/bsps/arm/tms570/irq/irq.c +++ b/bsps/arm/tms570/irq/irq.c @@ -96,6 +96,18 @@ void bsp_interrupt_dispatch(void) * @retval RTEMS_INVALID_ID vector is invalid. * @retval RTEMS_SUCCESSFUL interrupt source enabled. */ +rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + +rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) +{ + bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); + return RTEMS_UNSATISFIED; +} + rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled |