git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@9822 35acf78f-673a-0410-8e92-d51de3d6d3f4

This commit is contained in:
Giovanni Di Sirio 2016-09-29 14:58:53 +00:00
parent 4ca399b1af
commit 501dce6dc5
3 changed files with 92 additions and 8 deletions

View File

@ -27,7 +27,7 @@ endif
# NOTE: On XMC1100 the following symbols are mapped on the words CLK_VAL1 and
# CLK_VAL2.
ifeq ($(USE_LDOPT),)
USE_LDOPT = --defsym=MemManage_Handler=0xFFFFFFFF,--defsym=BusFault_Handler=0xFFFFFFFF
USE_LDOPT = --defsym=__clk_val1=0xFFFFFFFF,--defsym=__clk_val2=0xFFFFFFFF
endif
# Enable this if you want link time optimizations (LTO)

View File

@ -1,6 +1,5 @@
# List of the ChibiOS generic XMC1100 startup and CMSIS files.
STARTUPSRC = $(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC/crt1.c \
$(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC/vectors.c
STARTUPSRC = $(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC/crt1.c
STARTUPASM = $(CHIBIOS)/os/common/startup/ARMCMx/devices/XMC1100/veneers_gcc.S \
$(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC/crt0_v6m.S

View File

@ -40,18 +40,103 @@
.cpu cortex-m0
.thumb
.section .ram0_init, "ax", %progbits
.section .vecttirs, "ax", %progbits
.align 4
.globl _vectors
_vectors:
.long __main_stack_end__, __reset, __clk_val1, __clk_val2
.long MemManage_Handler, BusFault_Handler, UsageFault_Handler, Vector1C
.long Vector20, Vector24, Vector28, SVC_Handler
.long DebugMon_Handler, Vector34, PendSV_Handler, SysTick_Handler
.long Vector40, Vector44, Vector48, Vector4C
.long Vector50, Vector54, Vector58, Vector5C
.long Vector60, Vector64, Vector68, Vector6C
.long Vector70, Vector74, Vector78, Vector7C
.long Vector80, Vector84, Vector88, Vector8C
.long Vector90, Vector94, Vector98, Vector9C
.long VectorA0, VectorA4, VectorA8, VectorAC
.long VectorB0, VectorB4, VectorB8, VectorBC
.weak MemManage_Handler, BusFault_Handler, UsageFault_Handler, Vector1C
.weak Vector20, Vector24, Vector28, SVC_Handler
.weak DebugMon_Handler, Vector34, PendSV_Handler, SysTick_Handler
.weak Vector40, Vector44, Vector48, Vector4C
.weak Vector50, Vector54, Vector58, Vector5C
.weak Vector60, Vector64, Vector68, Vector6C
.weak Vector70, Vector74, Vector78, Vector7C
.weak Vector80, Vector84, Vector88, Vector8C
.weak Vector90, Vector94, Vector98, Vector9C
.weak VectorA0, VectorA4, VectorA8, VectorAC
.weak VectorB0, VectorB4, VectorB8, VectorBC
MemManage_Handler:
BusFault_Handler:
UsageFault_Handler:
Vector1C:
Vector20:
Vector24:
Vector28:
SVC_Handler:
DebugMon_Handler:
Vector34:
PendSV_Handler:
SysTick_Handler:
Vector40:
Vector44:
Vector48:
Vector4C:
Vector50:
Vector54:
Vector58:
Vector5C:
Vector60:
Vector64:
Vector68:
Vector6C:
Vector70:
Vector74:
Vector78:
Vector7C:
Vector80:
Vector84:
Vector88:
Vector8C:
Vector90:
Vector94:
Vector98:
Vector9C:
VectorA0:
VectorA4:
VectorA8:
VectorAC:
VectorB0:
VectorB4:
VectorB8:
VectorBC:
b _unhandled_exception
.align 2
.thumb_func
.weak _unhandled_exception
_unhandled_exception:
b _unhandled_exception
.text
.align 2
.thumb_func
.global __reset
__reset: b Reset_Handler
.section .ram0_init, "ax", %progbits
.align 2
.thumb_func
.global __veneers
__veneers:
.long 0
.long 0
ldr r0, =NMI_Handler
mov pc, r0
ldr r0, =HardFault_Handler
mov pc, r0
.long 0
.long 0
.long 0
.long 0
ldr r0, =UsageFault_Handler