summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/arm/lpc22xx/irq/irq.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libcpu/arm/lpc22xx/irq/irq.c')
-rw-r--r--c/src/lib/libcpu/arm/lpc22xx/irq/irq.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/c/src/lib/libcpu/arm/lpc22xx/irq/irq.c b/c/src/lib/libcpu/arm/lpc22xx/irq/irq.c
index 1592d88407..cf2287d070 100644
--- a/c/src/lib/libcpu/arm/lpc22xx/irq/irq.c
+++ b/c/src/lib/libcpu/arm/lpc22xx/irq/irq.c
@@ -37,7 +37,6 @@ int BSP_install_rtems_irq_handler (const rtems_irq_connect_data* irq)
rtems_interrupt_level level;
rtems_irq_hdl *bsp_tbl;
int *vic_cntl;
- static int irq_counter = 0;
bsp_tbl = (rtems_irq_hdl *)VICVectAddrBase;
@@ -51,7 +50,7 @@ int BSP_install_rtems_irq_handler (const rtems_irq_connect_data* irq)
* Check if default handler is actually connected. If not issue an error.
*/
- if (bsp_tbl[irq_counter] != default_int_handler) {
+ if (bsp_tbl[irq->name] != default_int_handler) {
return 0;
}
@@ -60,12 +59,12 @@ int BSP_install_rtems_irq_handler (const rtems_irq_connect_data* irq)
/*
* store the new handler
*/
- bsp_tbl[irq_counter] = irq->hdl;
+ bsp_tbl[irq->name] = irq->hdl;
/* *(volatile unsigned long*)(VICVectAddr0+(irq->name * 4)&0x7c )= (uint32_t) irq->hdl;*/
/*
* Enable interrupt on device
*/
- vic_cntl[irq_counter] = 0x20 | irq->name;
+ vic_cntl[irq->name] = 0x20 | irq->name;
VICIntEnable |= 1 << irq->name;
@@ -74,7 +73,6 @@ int BSP_install_rtems_irq_handler (const rtems_irq_connect_data* irq)
irq->on(irq);
}
- irq_counter++;
rtems_interrupt_enable(level);