summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp
diff options
context:
space:
mode:
authorDaniel Hellstrom <daniel@gaisler.com>2012-02-06 15:15:48 +0100
committerGedare Bloom <gedare@rtems.org>2012-03-21 12:36:00 -0400
commitf636ba640e19cbceec38c75a4b9dd65623fc6f22 (patch)
treed9bb5471375e230dbe90621056da3f176cd35308 /c/src/lib/libbsp
parentLEON3: spurious trap handler print out trap in hex instead (diff)
downloadrtems-f636ba640e19cbceec38c75a4b9dd65623fc6f22.tar.bz2
shared-irq: add support for custom BSP vector verification
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Diffstat (limited to 'c/src/lib/libbsp')
-rw-r--r--c/src/lib/libbsp/shared/include/irq-generic.h2
-rw-r--r--c/src/lib/libbsp/shared/include/irq.h8
2 files changed, 10 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/shared/include/irq-generic.h b/c/src/lib/libbsp/shared/include/irq-generic.h
index 5181952e6a..3cbb7dbb06 100644
--- a/c/src/lib/libbsp/shared/include/irq-generic.h
+++ b/c/src/lib/libbsp/shared/include/irq-generic.h
@@ -134,6 +134,7 @@ static inline rtems_vector_number bsp_interrupt_handler_index(
* @{
*/
+#if !defined(BSP_INTERRUPT_CUSTOM_VALID_VECTOR)
/**
* @brief Returns true if the interrupt vector with number @a vector is valid.
*/
@@ -142,6 +143,7 @@ static inline bool bsp_interrupt_is_valid_vector(rtems_vector_number vector)
return (rtems_vector_number) BSP_INTERRUPT_VECTOR_MIN <= vector
&& vector <= (rtems_vector_number) BSP_INTERRUPT_VECTOR_MAX;
}
+#endif
/**
* @brief Default interrupt handler.
diff --git a/c/src/lib/libbsp/shared/include/irq.h b/c/src/lib/libbsp/shared/include/irq.h
index ae57bd1c54..19aed6fd40 100644
--- a/c/src/lib/libbsp/shared/include/irq.h
+++ b/c/src/lib/libbsp/shared/include/irq.h
@@ -72,6 +72,14 @@
typedef uint8_t bsp_interrupt_handler_index_type;
#endif
+/**
+ * @brief Enable custom vector checking
+ *
+ * If defined the BSP must implement the custom bsp_interrupt_is_valid_vector()
+ * vector validator check routine.
+ */
+#undef BSP_INTERRUPT_CUSTOM_VALID_VECTOR
+
/** @} */
#endif /* LIBBSP_SHARED_IRQ_CONFIG_H */