From 4e70f78a179829a8b3bb841be0c44aaca23d8bea Mon Sep 17 00:00:00 2001 From: batt Date: Mon, 29 Mar 2010 21:14:25 +0000 Subject: [PATCH] Add IRQ vectors for LPC2xxx. git-svn-id: https://src.develer.com/svnoss/bertos/trunk@3311 38d2e660-2303-0410-9eaa-f027e97ec537 --- bertos/cpu/arm/hw/vectors_lpc2.S | 71 ++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 bertos/cpu/arm/hw/vectors_lpc2.S diff --git a/bertos/cpu/arm/hw/vectors_lpc2.S b/bertos/cpu/arm/hw/vectors_lpc2.S new file mode 100644 index 00000000..e3835ffa --- /dev/null +++ b/bertos/cpu/arm/hw/vectors_lpc2.S @@ -0,0 +1,71 @@ +/** + * \file + * + * + * \author Francesco Sacchi + * + * \brief NXP LPC2xxx interrupt vectors. + */ + +/* + * Section 0: Vector table and reset entry. + */ + .section .vectors,"ax",%progbits + + .global __vectors +__vectors: + ldr pc, _init /* Reset */ + ldr pc, _undef /* Undefined instruction */ + ldr pc, _swi /* Software interrupt */ + ldr pc, _prefetch_abort /* Prefetch abort */ + ldr pc, _data_abort /* Data abort */ + .word 0 /* In LPX2xxx, this location holds the checksum of the previous vectors */ + + ldr pc, [pc, #-0xFF0] /* Use VIC */ + ldr pc, _fiq /* Fast interrupt request */ +_init: + .word __init +_undef: + .word __undef +_swi: + .word __swi +_prefetch_abort: + .word __prefetch_abort +_data_abort: + .word __data_abort +_fiq: + .word __fiq + + .weak __fiq +__fiq: + b __fiq + + .ltorg -- 2.25.1