aboutsummaryrefslogtreecommitdiffstats
path: root/demos/ARM7-LPC214x-GCC/chcore2.s
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-10-30 10:46:57 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-10-30 10:46:57 +0000
commit35dea10cc76722976bfbf368dd50f7617ca86a45 (patch)
treec900ffd7fbee5e95c02c1e20c023873c26f877f7 /demos/ARM7-LPC214x-GCC/chcore2.s
parent5eeed3ddb57efd621240097b87129c49ed6185a6 (diff)
downloadChibiOS-35dea10cc76722976bfbf368dd50f7617ca86a45.tar.gz
ChibiOS-35dea10cc76722976bfbf368dd50f7617ca86a45.tar.bz2
ChibiOS-35dea10cc76722976bfbf368dd50f7617ca86a45.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@69 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'demos/ARM7-LPC214x-GCC/chcore2.s')
-rw-r--r--demos/ARM7-LPC214x-GCC/chcore2.s10
1 files changed, 10 insertions, 0 deletions
diff --git a/demos/ARM7-LPC214x-GCC/chcore2.s b/demos/ARM7-LPC214x-GCC/chcore2.s
index f734eebba..97a38fdfe 100644
--- a/demos/ARM7-LPC214x-GCC/chcore2.s
+++ b/demos/ARM7-LPC214x-GCC/chcore2.s
@@ -155,6 +155,16 @@ UART1IrqHandler:
bl UART1Irq
b IrqCommon
+.globl SSPIrqHandler
+SSPIrqHandler:
+ sub lr, lr, #4
+ stmfd sp!, {r0-r3, r12, lr}
+ mrs r0, SPSR // Workaround for ARM7TDMI+VIC
+ tst r0, #I_BIT // spurious interrupts.
+ ldmnefd sp!, {r0-r3, r12, pc}^
+ bl SSPIrq
+ b IrqCommon
+
/*
* Common exit point for all IRQ routines, it performs the rescheduling if
* required.