summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/shared/src/irq-generic.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/shared/src/irq-generic.c')
-rw-r--r--c/src/lib/libbsp/shared/src/irq-generic.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/shared/src/irq-generic.c b/c/src/lib/libbsp/shared/src/irq-generic.c
index 19b52afb53..c62a75602e 100644
--- a/c/src/lib/libbsp/shared/src/irq-generic.c
+++ b/c/src/lib/libbsp/shared/src/irq-generic.c
@@ -566,3 +566,22 @@ rtems_status_code rtems_interrupt_handler_iterate(
{
return bsp_interrupt_handler_iterate(vector, routine, arg);
}
+
+bool bsp_interrupt_handler_is_empty(rtems_vector_number vector)
+{
+ rtems_vector_number index = 0;
+ bsp_interrupt_handler_entry *head = NULL;
+ bool empty;
+
+ /* For use in interrupts so no lock. */
+
+ /* Get handler table index */
+ index = bsp_interrupt_handler_index(vector);
+
+ /* Get head entry of the handler list for the vector */
+ head = &bsp_interrupt_handler_table [index];
+
+ empty = bsp_interrupt_is_empty_handler_entry(head);
+
+ return empty;
+}