summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/arm/at91rm9200/irq/bsp_irq_asm.S
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libcpu/arm/at91rm9200/irq/bsp_irq_asm.S')
-rw-r--r--c/src/lib/libcpu/arm/at91rm9200/irq/bsp_irq_asm.S41
1 files changed, 0 insertions, 41 deletions
diff --git a/c/src/lib/libcpu/arm/at91rm9200/irq/bsp_irq_asm.S b/c/src/lib/libcpu/arm/at91rm9200/irq/bsp_irq_asm.S
deleted file mode 100644
index d8b6757e4c..0000000000
--- a/c/src/lib/libcpu/arm/at91rm9200/irq/bsp_irq_asm.S
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Atmel AT91RM9200 Interrupt handler
- *
- * Copyright (c) 2004 by Jay Monkman <jtm@lopgindog.com>
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- *
- * http://www.rtems.com/license/LICENSE.
- *
- *
- * $Id$
- */
-#define __asm__
-
- .globl bsp_interrupt_dispatch
-bsp_interrupt_dispatch :
-/*
- * Look at interrupt status register to determine source.
- * From source, determine offset into expanded vector table
- * and load vector into r0 and handler address into r1.
- */
- ldr r0, =0xFFFFF100 /* AIC_CTL_BASE + AIC_IVR */
- ldr r1, [r0]
- str r1, [r0] /* write back in case we are using protect */
-
- ldr r0, =0xFFFFF108 /* AIC_CTL_BASE + AIC_ISR */
- ldr r0, [r0] /* Read interrupt vector */
-
- stmdb sp!,{lr}
- ldr lr, =IRQ_return /* prepare the return from handler */
-
- mov pc, r1 /* execute handler */
-
-IRQ_return:
- ldr r2, =0xFFFFF130 /* AIC_CTL_BASE + AIC_EIOCR */
- str r1, [r2]
-
- ldmia sp!,{lr}
-
- mov pc, lr