]> git.gir.st - tmk_keyboard.git/blob - tool/mbed/mbed-sdk/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC43XX/TOOLCHAIN_ARM_STD/TARGET_LPC4337/startup_LPC4337.s
Squashed 'tmk_core/' changes from 7967731..b9e0ea0
[tmk_keyboard.git] / tool / mbed / mbed-sdk / libraries / mbed / targets / cmsis / TARGET_NXP / TARGET_LPC43XX / TOOLCHAIN_ARM_STD / TARGET_LPC4337 / startup_LPC4337.s
1 ;/***********************************************************************
2 ; * @brief: LPC18xx/43xx M3/M4 startup code
3 ; *
4 ; * @note
5 ; * Copyright(C) NXP Semiconductors, 2012
6 ; * All rights reserved.
7 ; *
8 ; * @par
9 ; * Software that is described herein is for illustrative purposes only
10 ; * which provides customers with programming information regarding the
11 ; * LPC products. This software is supplied "AS IS" without any warranties of
12 ; * any kind, and NXP Semiconductors and its licensor disclaim any and
13 ; * all warranties, express or implied, including all implied warranties of
14 ; * merchantability, fitness for a particular purpose and non-infringement of
15 ; * intellectual property rights. NXP Semiconductors assumes no responsibility
16 ; * or liability for the use of the software, conveys no license or rights under any
17 ; * patent, copyright, mask work right, or any other intellectual property rights in
18 ; * or to any products. NXP Semiconductors reserves the right to make changes
19 ; * in the software without notification. NXP Semiconductors also makes no
20 ; * representation or warranty that such application will be suitable for the
21 ; * specified use without further testing or modification.
22 ; *
23 ; * @par
24 ; * Permission to use, copy, modify, and distribute this software and its
25 ; * documentation is hereby granted, under NXP Semiconductors' and its
26 ; * licensor's relevant copyrights in the software, without fee, provided that it
27 ; * is used in conjunction with NXP Semiconductors microcontrollers. This
28 ; * copyright, permission, and disclaimer notice must appear in all copies of
29 ; * this code.
30 ; */
31
32 ;__initial_sp EQU 0x1008A000 ; Top of 2nd RAM segment for LPC4337
33 __initial_sp EQU 0x10008000 ; Top of 1st RAM segment for LPC4337
34
35 PRESERVE8
36 THUMB
37
38 ; Vector Table Mapped to Address 0 at Reset
39
40 AREA RESET, DATA, READONLY
41 EXPORT __Vectors
42
43 Sign_Value EQU 0x5A5A5A5A
44
45 __Vectors DCD __initial_sp ; 0 Top of Stack
46 DCD Reset_Handler ; 1 Reset Handler
47 DCD NMI_Handler ; 2 NMI Handler
48 DCD HardFault_Handler ; 3 Hard Fault Handler
49 DCD MemManage_Handler ; 4 MPU Fault Handler
50 DCD BusFault_Handler ; 5 Bus Fault Handler
51 DCD UsageFault_Handler ; 6 Usage Fault Handler
52 DCD Sign_Value ; 7 Reserved
53 DCD UnHandled_Vector ; 8 Reserved
54 DCD UnHandled_Vector ; 9 Reserved
55 DCD UnHandled_Vector ; 10 Reserved
56 DCD SVC_Handler ; 11 SVCall Handler
57 DCD DebugMon_Handler ; 12 Debug Monitor Handler
58 DCD UnHandled_Vector ; 13 Reserved
59 DCD PendSV_Handler ; 14 PendSV Handler
60 DCD SysTick_Handler ; 15 SysTick Handler
61
62 ; External Interrupts
63 DCD DAC_IRQHandler ; 16 D/A Converter
64 DCD MX_CORE_IRQHandler ; 17 M0/M4 IRQ handler (LPC43XX ONLY)
65 DCD DMA_IRQHandler ; 18 General Purpose DMA
66 DCD UnHandled_Vector ; 19 Reserved
67 DCD FLASHEEPROM_IRQHandler ; 20 ORed flash bank A, flash bank B, EEPROM interrupts
68 DCD ETH_IRQHandler ; 21 Ethernet
69 DCD SDIO_IRQHandler ; 22 SD/MMC
70 DCD LCD_IRQHandler ; 23 LCD
71 DCD USB0_IRQHandler ; 24 USB0
72 DCD USB1_IRQHandler ; 25 USB1
73 DCD SCT_IRQHandler ; 26 State Configurable Timer
74 DCD RIT_IRQHandler ; 27 Repetitive Interrupt Timer
75 DCD TIMER0_IRQHandler ; 28 Timer0
76 DCD TIMER1_IRQHandler ; 29 Timer1
77 DCD TIMER2_IRQHandler ; 30 Timer2
78 DCD TIMER3_IRQHandler ; 31 Timer3
79 DCD MCPWM_IRQHandler ; 32 Motor Control PWM
80 DCD ADC0_IRQHandler ; 33 A/D Converter 0
81 DCD I2C0_IRQHandler ; 34 I2C0
82 DCD I2C1_IRQHandler ; 35 I2C1
83 DCD SPI_IRQHandler ; 36 SPI (LPC43XX ONLY)
84 DCD ADC1_IRQHandler ; 37 A/D Converter 1
85 DCD SSP0_IRQHandler ; 38 SSP0
86 DCD SSP1_IRQHandler ; 39 SSP1
87 DCD UART0_IRQHandler ; 40 UART0
88 DCD UART1_IRQHandler ; 41 UART1
89 DCD UART2_IRQHandler ; 42 UART2
90 DCD UART3_IRQHandler ; 43 UART3
91 DCD I2S0_IRQHandler ; 44 I2S0
92 DCD I2S1_IRQHandler ; 45 I2S1
93 DCD SPIFI_IRQHandler ; 46 SPI Flash Interface
94 DCD SGPIO_IRQHandler ; 47 SGPIO (LPC43XX ONLY)
95 DCD GPIO0_IRQHandler ; 48 GPIO0
96 DCD GPIO1_IRQHandler ; 49 GPIO1
97 DCD GPIO2_IRQHandler ; 50 GPIO2
98 DCD GPIO3_IRQHandler ; 51 GPIO3
99 DCD GPIO4_IRQHandler ; 52 GPIO4
100 DCD GPIO5_IRQHandler ; 53 GPIO5
101 DCD GPIO6_IRQHandler ; 54 GPIO6
102 DCD GPIO7_IRQHandler ; 55 GPIO7
103 DCD GINT0_IRQHandler ; 56 GINT0
104 DCD GINT1_IRQHandler ; 57 GINT1
105 DCD EVRT_IRQHandler ; 58 Event Router
106 DCD CAN1_IRQHandler ; 59 C_CAN1
107 DCD UnHandled_Vector ; 60 Reserved
108 DCD VADC_IRQHandler ; 61 VADC
109 DCD ATIMER_IRQHandler ; 62 ATIMER
110 DCD RTC_IRQHandler ; 63 RTC
111 DCD UnHandled_Vector ; 64 Reserved
112 DCD WDT_IRQHandler ; 65 WDT
113 DCD UnHandled_Vector ; 66 M0s
114 DCD CAN0_IRQHandler ; 67 C_CAN0
115 DCD QEI_IRQHandler ; 68 QEI
116
117 ; IF :LNOT::DEF:NO_CRP
118 ; AREA |.ARM.__at_0x02FC|, CODE, READONLY
119 ;CRP_Key DCD 0xFFFFFFFF
120 ; ENDIF
121
122 AREA |.text|, CODE, READONLY
123
124 ; Reset Handler
125
126 Reset_Handler PROC
127 EXPORT Reset_Handler [WEAK]
128 IMPORT __main
129 IMPORT SystemInit
130 LDR R0, =SystemInit
131 BLX R0
132 LDR R0, =__main
133 BX R0
134 ENDP
135
136 ; Dummy Exception Handlers (infinite loops which can be modified)
137
138 NMI_Handler PROC
139 EXPORT NMI_Handler [WEAK]
140 B .
141 ENDP
142 HardFault_Handler\
143 PROC
144 EXPORT HardFault_Handler [WEAK]
145 B .
146 ENDP
147 MemManage_Handler\
148 PROC
149 EXPORT MemManage_Handler [WEAK]
150 B .
151 ENDP
152 BusFault_Handler\
153 PROC
154 EXPORT BusFault_Handler [WEAK]
155 B .
156 ENDP
157 UsageFault_Handler\
158 PROC
159 EXPORT UsageFault_Handler [WEAK]
160 B .
161 ENDP
162 SVC_Handler PROC
163 EXPORT SVC_Handler [WEAK]
164 B .
165 ENDP
166 DebugMon_Handler\
167 PROC
168 EXPORT DebugMon_Handler [WEAK]
169 B .
170 ENDP
171 PendSV_Handler PROC
172 EXPORT PendSV_Handler [WEAK]
173 B .
174 ENDP
175 SysTick_Handler PROC
176 EXPORT SysTick_Handler [WEAK]
177 B .
178 ENDP
179 UnHandled_Vector PROC
180 EXPORT UnHandled_Vector [WEAK]
181 B .
182 ENDP
183
184 Default_Handler PROC
185
186 EXPORT DAC_IRQHandler [WEAK]
187 EXPORT MX_CORE_IRQHandler [WEAK]
188 EXPORT DMA_IRQHandler [WEAK]
189 EXPORT FLASHEEPROM_IRQHandler [WEAK]
190 EXPORT ETH_IRQHandler [WEAK]
191 EXPORT SDIO_IRQHandler [WEAK]
192 EXPORT LCD_IRQHandler [WEAK]
193 EXPORT USB0_IRQHandler [WEAK]
194 EXPORT USB1_IRQHandler [WEAK]
195 EXPORT SCT_IRQHandler [WEAK]
196 EXPORT RIT_IRQHandler [WEAK]
197 EXPORT TIMER0_IRQHandler [WEAK]
198 EXPORT TIMER1_IRQHandler [WEAK]
199 EXPORT TIMER2_IRQHandler [WEAK]
200 EXPORT TIMER3_IRQHandler [WEAK]
201 EXPORT MCPWM_IRQHandler [WEAK]
202 EXPORT ADC0_IRQHandler [WEAK]
203 EXPORT I2C0_IRQHandler [WEAK]
204 EXPORT I2C1_IRQHandler [WEAK]
205 EXPORT SPI_IRQHandler [WEAK]
206 EXPORT ADC1_IRQHandler [WEAK]
207 EXPORT SSP0_IRQHandler [WEAK]
208 EXPORT SSP1_IRQHandler [WEAK]
209 EXPORT UART0_IRQHandler [WEAK]
210 EXPORT UART1_IRQHandler [WEAK]
211 EXPORT UART2_IRQHandler [WEAK]
212 EXPORT UART3_IRQHandler [WEAK]
213 EXPORT I2S0_IRQHandler [WEAK]
214 EXPORT I2S1_IRQHandler [WEAK]
215 EXPORT SPIFI_IRQHandler [WEAK]
216 EXPORT SGPIO_IRQHandler [WEAK]
217 EXPORT GPIO0_IRQHandler [WEAK]
218 EXPORT GPIO1_IRQHandler [WEAK]
219 EXPORT GPIO2_IRQHandler [WEAK]
220 EXPORT GPIO3_IRQHandler [WEAK]
221 EXPORT GPIO4_IRQHandler [WEAK]
222 EXPORT GPIO5_IRQHandler [WEAK]
223 EXPORT GPIO6_IRQHandler [WEAK]
224 EXPORT GPIO7_IRQHandler [WEAK]
225 EXPORT GINT0_IRQHandler [WEAK]
226 EXPORT GINT1_IRQHandler [WEAK]
227 EXPORT EVRT_IRQHandler [WEAK]
228 EXPORT CAN1_IRQHandler [WEAK]
229 EXPORT VADC_IRQHandler [WEAK]
230 EXPORT ATIMER_IRQHandler [WEAK]
231 EXPORT RTC_IRQHandler [WEAK]
232 EXPORT WDT_IRQHandler [WEAK]
233 EXPORT CAN0_IRQHandler [WEAK]
234 EXPORT QEI_IRQHandler [WEAK]
235
236 DAC_IRQHandler
237 MX_CORE_IRQHandler
238 DMA_IRQHandler
239 FLASHEEPROM_IRQHandler
240 ETH_IRQHandler
241 SDIO_IRQHandler
242 LCD_IRQHandler
243 USB0_IRQHandler
244 USB1_IRQHandler
245 SCT_IRQHandler
246 RIT_IRQHandler
247 TIMER0_IRQHandler
248 TIMER1_IRQHandler
249 TIMER2_IRQHandler
250 TIMER3_IRQHandler
251 MCPWM_IRQHandler
252 ADC0_IRQHandler
253 I2C0_IRQHandler
254 I2C1_IRQHandler
255 SPI_IRQHandler
256 ADC1_IRQHandler
257 SSP0_IRQHandler
258 SSP1_IRQHandler
259 UART0_IRQHandler
260 UART1_IRQHandler
261 UART2_IRQHandler
262 UART3_IRQHandler
263 I2S0_IRQHandler
264 I2S1_IRQHandler
265 SPIFI_IRQHandler
266 SGPIO_IRQHandler
267 GPIO0_IRQHandler
268 GPIO1_IRQHandler
269 GPIO2_IRQHandler
270 GPIO3_IRQHandler
271 GPIO4_IRQHandler
272 GPIO5_IRQHandler
273 GPIO6_IRQHandler
274 GPIO7_IRQHandler
275 GINT0_IRQHandler
276 GINT1_IRQHandler
277 EVRT_IRQHandler
278 CAN1_IRQHandler
279 VADC_IRQHandler
280 ATIMER_IRQHandler
281 RTC_IRQHandler
282 WDT_IRQHandler
283 CAN0_IRQHandler
284 QEI_IRQHandler
285
286 B .
287
288 ENDP
289
290 ALIGN
291 END
Imprint / Impressum