From 27e7b701ceb1a96070b8eeadf85d3643a7adcc4e Mon Sep 17 00:00:00 2001 From: Pixel Date: Thu, 27 Jan 2011 22:19:47 -0800 Subject: I fail at C-programming. Base VTOR address now works properly. --- arch/arm/lpc17xx/ldscript | 2 +- arch/arm/lpc17xx/mbed/BoardInit.c | 4 ++-- arch/arm/lpc17xx/startup.s | 8 -------- 3 files changed, 3 insertions(+), 11 deletions(-) diff --git a/arch/arm/lpc17xx/ldscript b/arch/arm/lpc17xx/ldscript index 4f1f3b9..2468d12 100644 --- a/arch/arm/lpc17xx/ldscript +++ b/arch/arm/lpc17xx/ldscript @@ -173,7 +173,7 @@ SECTIONS __cs3_interrupt_vector_mutable = __cs3_interrupt_vector_cortex_m_mutable; *(.cs3.interrupt_vector_mutable) /* Make sure we pulled in an interrupt vector. */ - ASSERT (. != __cs3_interrupt_vector_cortex_m_mutable, "No interrupt vector"); + ASSERT (. != __cs3_interrupt_vector_cortex_m_mutable, "No interrupt vector mutable table"); *( privileged_data ) __privileged_data_end___len = . - __privileged_data_start__ - 1 ; diff --git a/arch/arm/lpc17xx/mbed/BoardInit.c b/arch/arm/lpc17xx/mbed/BoardInit.c index 9c5aa89..bd31b35 100644 --- a/arch/arm/lpc17xx/mbed/BoardInit.c +++ b/arch/arm/lpc17xx/mbed/BoardInit.c @@ -1,9 +1,9 @@ #include "lpc17xx_nvic.h" -extern void * __cs3_interrupt_vector_mutable; +extern uintptr_t __cs3_interrupt_vector_mutable[]; void BoardEarlyInit() { - //NVIC_SetVTOR((uint32_t) __cs3_interrupt_vector_mutable); + NVIC_SetVTOR((uintptr_t) __cs3_interrupt_vector_mutable); } void BoardLateInit() { diff --git a/arch/arm/lpc17xx/startup.s b/arch/arm/lpc17xx/startup.s index 86365c1..564c4d7 100644 --- a/arch/arm/lpc17xx/startup.s +++ b/arch/arm/lpc17xx/startup.s @@ -129,14 +129,6 @@ __cs3_interrupt_vector_cortex_m: .long BusFault_Handler /* Bus Fault Handler */ .long UsageFault_Handler /* Usage Fault Handler */ .long 0 /* Reserved - ROM CRC check ? */ - .long 0 /* Reserved */ - .long 0 /* Reserved */ - .long 0 /* Reserved */ - .long vPortSVCHandler /* SVCall Handler */ - .long DebugMon_Handler /* Debug Monitor Handler */ - .long 0 /* Reserved */ - .long xPortPendSVHandler /* PendSV Handler */ - .long xPortSysTickHandler /* SysTick Handler */ .size __cs3_interrupt_vector_cortex_m, . - __cs3_interrupt_vector_cortex_m -- cgit v1.2.3