---
 bsps/arm/tms570/irq/irq.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/bsps/arm/tms570/irq/irq.c b/bsps/arm/tms570/irq/irq.c
index 684e3d47fb..9a80e0e3d2 100644
--- a/bsps/arm/tms570/irq/irq.c
+++ b/bsps/arm/tms570/irq/irq.c
@@ -166,9 +166,17 @@ rtems_status_code tms570_irq_get_priority(
  */
 void bsp_interrupt_dispatch(void)
 {
-  rtems_vector_number vector = TMS570_VIM.IRQINDEX-1;
+  while (true) {
+    uint32_t irqindex;
 
-  bsp_interrupt_handler_dispatch(vector);
+    irqindex = TMS570_VIM.IRQINDEX;
+
+    if (irqindex == 0) {
+      return;
+    }
+
+    bsp_interrupt_handler_dispatch(irqindex - 1);
+  }
 }
 
 static bool can_disable(rtems_vector_number vector)
-- 
2.35.3

_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to