]> git.donarmstrong.com Git - qmk_firmware.git/blob - tmk_core/tool/mbed/mbed-sdk/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32F3/TARGET_NUCLEO_F302R8/TOOLCHAIN_ARM_STD/startup_stm32f302x8.s
Merge commit '1fe4406f374291ab2e86e95a97341fd9c475fcb8'
[qmk_firmware.git] / tmk_core / tool / mbed / mbed-sdk / libraries / mbed / targets / cmsis / TARGET_STM / TARGET_STM32F3 / TARGET_NUCLEO_F302R8 / TOOLCHAIN_ARM_STD / startup_stm32f302x8.s
1 ;******************** (C) COPYRIGHT 2014 STMicroelectronics ********************
2 ;* File Name          : startup_stm32f302x8.s
3 ; STM32F302x8 Devices vector table for MDK ARM_STD toolchain
4 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
5 ; Copyright (c) 2014, STMicroelectronics
6 ; All rights reserved.
7 ;
8 ; Redistribution and use in source and binary forms, with or without
9 ; modification, are permitted provided that the following conditions are met:
10 ;
11 ; 1. Redistributions of source code must retain the above copyright notice,
12 ;     this list of conditions and the following disclaimer.
13 ; 2. Redistributions in binary form must reproduce the above copyright notice,
14 ;    this list of conditions and the following disclaimer in the documentation
15 ;    and/or other materials provided with the distribution.
16 ; 3. Neither the name of STMicroelectronics nor the names of its contributors
17 ;    may be used to endorse or promote products derived from this software
18 ;    without specific prior written permission.
19 ;
20 ; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 ; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 ; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23 ; DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24 ; FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 ; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26 ; SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27 ; CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28 ; OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 ; OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
31
32 __initial_sp    EQU     0x20004000 ; Top of RAM
33
34                 PRESERVE8
35                 THUMB
36
37
38 ; Vector Table Mapped to Address 0 at Reset
39                 AREA    RESET, DATA, READONLY
40                 EXPORT  __Vectors
41                 EXPORT  __Vectors_End
42                 EXPORT  __Vectors_Size
43
44 __Vectors       DCD     __initial_sp               ; Top of Stack
45                 DCD     Reset_Handler              ; Reset Handler
46                 DCD     NMI_Handler                ; NMI Handler
47                 DCD     HardFault_Handler          ; Hard Fault Handler
48                 DCD     MemManage_Handler          ; MPU Fault Handler
49                 DCD     BusFault_Handler           ; Bus Fault Handler
50                 DCD     UsageFault_Handler         ; Usage Fault Handler
51                 DCD     0                          ; Reserved
52                 DCD     0                          ; Reserved
53                 DCD     0                          ; Reserved
54                 DCD     0                          ; Reserved
55                 DCD     SVC_Handler                ; SVCall Handler
56                 DCD     DebugMon_Handler           ; Debug Monitor Handler
57                 DCD     0                          ; Reserved
58                 DCD     PendSV_Handler             ; PendSV Handler
59                 DCD     SysTick_Handler            ; SysTick Handler
60
61                 ; External Interrupts
62                 DCD     WWDG_IRQHandler                   ; Window WatchDog
63                 DCD     PVD_IRQHandler                    ; PVD through EXTI Line detection
64                 DCD     TAMP_STAMP_IRQHandler             ; Tamper and TimeStamps through the EXTI line
65                 DCD     RTC_WKUP_IRQHandler               ; RTC Wakeup through the EXTI line
66                 DCD     FLASH_IRQHandler                  ; FLASH
67                 DCD     RCC_IRQHandler                    ; RCC
68                 DCD     EXTI0_IRQHandler                  ; EXTI Line0
69                 DCD     EXTI1_IRQHandler                  ; EXTI Line1
70                 DCD     EXTI2_TSC_IRQHandler              ; EXTI Line2 and Touch Sense controller
71                 DCD     EXTI3_IRQHandler                  ; EXTI Line3
72                 DCD     EXTI4_IRQHandler                  ; EXTI Line4
73                 DCD     DMA1_Channel1_IRQHandler          ; DMA1 Channel 1
74                 DCD     DMA1_Channel2_IRQHandler          ; DMA1 Channel 2
75                 DCD     DMA1_Channel3_IRQHandler          ; DMA1 Channel 3
76                 DCD     DMA1_Channel4_IRQHandler          ; DMA1 Channel 4
77                 DCD     DMA1_Channel5_IRQHandler          ; DMA1 Channel 5
78                 DCD     DMA1_Channel6_IRQHandler          ; DMA1 Channel 6
79                 DCD     DMA1_Channel7_IRQHandler          ; DMA1 Channel 7
80                 DCD     ADC1_IRQHandler                   ; ADC1
81                 DCD     USB_HP_CAN_TX_IRQHandler          ; USB Device High Priority or CAN TX
82                 DCD     USB_LP_CAN_RX0_IRQHandler         ; USB Device Low Priority or CAN RX0
83                 DCD     CAN_RX1_IRQHandler                ; CAN RX1
84                 DCD     CAN_SCE_IRQHandler                ; CAN SCE
85                 DCD     EXTI9_5_IRQHandler                ; External Line[9:5]s
86                 DCD     TIM1_BRK_TIM15_IRQHandler         ; TIM1 Break and TIM15
87                 DCD     TIM1_UP_TIM16_IRQHandler          ; TIM1 Update and TIM16
88                 DCD     TIM1_TRG_COM_TIM17_IRQHandler     ; TIM1 Trigger and Commutation and TIM17
89                 DCD     TIM1_CC_IRQHandler                ; TIM1 Capture Compare
90                 DCD     TIM2_IRQHandler                   ; TIM2
91                 DCD     0                                 ; Reserved
92                 DCD     0                                 ; Reserved
93                 DCD     I2C1_EV_IRQHandler                ; I2C1 Event
94                 DCD     I2C1_ER_IRQHandler                ; I2C1 Error
95                 DCD     I2C2_EV_IRQHandler                ; I2C2 Event
96                 DCD     I2C2_ER_IRQHandler                ; I2C2 Error
97                 DCD     0                                 ; Reserved
98                 DCD     SPI2_IRQHandler                   ; SPI2
99                 DCD     USART1_IRQHandler                 ; USART1
100                 DCD     USART2_IRQHandler                 ; USART2
101                 DCD     USART3_IRQHandler                 ; USART3
102                 DCD     EXTI15_10_IRQHandler              ; External Line[15:10]s
103                 DCD     RTC_Alarm_IRQHandler              ; RTC Alarm (A and B) through EXTI Line
104                 DCD     USBWakeUp_IRQHandler              ; USB Wakeup through EXTI line
105                 DCD     0                                 ; Reserved
106                 DCD     0                                 ; Reserved
107                 DCD     0                                 ; Reserved
108                 DCD     0                                 ; Reserved
109                 DCD     0                                 ; Reserved
110                 DCD     0                                 ; Reserved
111                 DCD     0                                 ; Reserved
112                 DCD     0                                 ; Reserved
113                 DCD     SPI3_IRQHandler                   ; SPI3
114                 DCD     0                                 ; Reserved
115                 DCD     0                                 ; Reserved
116                 DCD     TIM6_DAC_IRQHandler               ; TIM6 and DAC1&2 underrun errors
117                 DCD     0                                 ; Reserved
118                 DCD     0                                 ; Reserved
119                 DCD     0                                 ; Reserved
120                 DCD     0                                 ; Reserved
121                 DCD     0                                 ; Reserved
122                 DCD     0                                 ; Reserved
123                 DCD     0                                 ; Reserved
124                 DCD     0                                 ; Reserved
125                 DCD     0                                 ; Reserved
126                 DCD     COMP2_IRQHandler                  ; COMP2
127                 DCD     COMP4_6_IRQHandler                ; COMP4 and COMP6
128                 DCD     0                                 ; Reserved
129                 DCD     0                                 ; Reserved
130                 DCD     0                                 ; Reserved
131                 DCD     0                                 ; Reserved
132                 DCD     0                                 ; Reserved
133                 DCD     0                                 ; Reserved
134                 DCD     I2C3_EV_IRQHandler                ; I2C3 Event
135                 DCD     I2C3_ER_IRQHandler                ; I2C3 Error
136                 DCD     USB_HP_IRQHandler                 ; USB High Priority remap
137                 DCD     USB_LP_IRQHandler                 ; USB Low Priority remap
138                 DCD     USBWakeUp_RMP_IRQHandler          ; USB Wakeup remap through EXTI
139                 DCD     0                                 ; Reserved
140                 DCD     0                                 ; Reserved
141                 DCD     0                                 ; Reserved
142                 DCD     0                                 ; Reserved
143                 DCD     FPU_IRQHandler                    ; FPU
144
145 __Vectors_End
146
147 __Vectors_Size  EQU  __Vectors_End - __Vectors
148
149                 AREA    |.text|, CODE, READONLY
150
151 ; Reset handler
152 Reset_Handler    PROC
153                  EXPORT  Reset_Handler             [WEAK]
154         IMPORT  SystemInit
155         IMPORT  __main
156
157                  LDR     R0, =SystemInit
158                  BLX     R0
159                  LDR     R0, =__main
160                  BX      R0
161                  ENDP
162
163 ; Dummy Exception Handlers (infinite loops which can be modified)
164
165 NMI_Handler     PROC
166                 EXPORT  NMI_Handler                [WEAK]
167                 B       .
168                 ENDP
169 HardFault_Handler\
170                 PROC
171                 EXPORT  HardFault_Handler          [WEAK]
172                 B       .
173                 ENDP
174 MemManage_Handler\
175                 PROC
176                 EXPORT  MemManage_Handler          [WEAK]
177                 B       .
178                 ENDP
179 BusFault_Handler\
180                 PROC
181                 EXPORT  BusFault_Handler           [WEAK]
182                 B       .
183                 ENDP
184 UsageFault_Handler\
185                 PROC
186                 EXPORT  UsageFault_Handler         [WEAK]
187                 B       .
188                 ENDP
189 SVC_Handler     PROC
190                 EXPORT  SVC_Handler                [WEAK]
191                 B       .
192                 ENDP
193 DebugMon_Handler\
194                 PROC
195                 EXPORT  DebugMon_Handler           [WEAK]
196                 B       .
197                 ENDP
198 PendSV_Handler  PROC
199                 EXPORT  PendSV_Handler             [WEAK]
200                 B       .
201                 ENDP
202 SysTick_Handler PROC
203                 EXPORT  SysTick_Handler            [WEAK]
204                 B       .
205                 ENDP
206
207 Default_Handler PROC
208
209                 EXPORT  WWDG_IRQHandler                   [WEAK]
210                 EXPORT  PVD_IRQHandler                    [WEAK]
211                 EXPORT  TAMP_STAMP_IRQHandler             [WEAK]
212                 EXPORT  RTC_WKUP_IRQHandler               [WEAK]
213                 EXPORT  FLASH_IRQHandler                  [WEAK]
214                 EXPORT  RCC_IRQHandler                    [WEAK]
215                 EXPORT  EXTI0_IRQHandler                  [WEAK]
216                 EXPORT  EXTI1_IRQHandler                  [WEAK]
217                 EXPORT  EXTI2_TSC_IRQHandler              [WEAK]
218                 EXPORT  EXTI3_IRQHandler                  [WEAK]
219                 EXPORT  EXTI4_IRQHandler                  [WEAK]
220                 EXPORT  DMA1_Channel1_IRQHandler          [WEAK]
221                 EXPORT  DMA1_Channel2_IRQHandler          [WEAK]
222                 EXPORT  DMA1_Channel3_IRQHandler          [WEAK]
223                 EXPORT  DMA1_Channel4_IRQHandler          [WEAK]
224                 EXPORT  DMA1_Channel5_IRQHandler          [WEAK]
225                 EXPORT  DMA1_Channel6_IRQHandler          [WEAK]
226                 EXPORT  DMA1_Channel7_IRQHandler          [WEAK]
227                 EXPORT  ADC1_IRQHandler                   [WEAK]
228                 EXPORT  USB_HP_CAN_TX_IRQHandler          [WEAK]
229                 EXPORT  USB_LP_CAN_RX0_IRQHandler         [WEAK]
230                 EXPORT  CAN_RX1_IRQHandler                [WEAK]
231                 EXPORT  CAN_SCE_IRQHandler                [WEAK]
232                 EXPORT  EXTI9_5_IRQHandler                [WEAK]
233                 EXPORT  TIM1_BRK_TIM15_IRQHandler         [WEAK]
234                 EXPORT  TIM1_UP_TIM16_IRQHandler          [WEAK]
235                 EXPORT  TIM1_TRG_COM_TIM17_IRQHandler     [WEAK]
236                 EXPORT  TIM1_CC_IRQHandler                [WEAK]
237                 EXPORT  TIM2_IRQHandler                   [WEAK]
238                 EXPORT  I2C1_EV_IRQHandler                [WEAK]
239                 EXPORT  I2C1_ER_IRQHandler                [WEAK]
240                 EXPORT  I2C2_EV_IRQHandler                [WEAK]
241                 EXPORT  I2C2_ER_IRQHandler                [WEAK]
242                 EXPORT  SPI2_IRQHandler                   [WEAK]
243                 EXPORT  USART1_IRQHandler                 [WEAK]
244                 EXPORT  USART2_IRQHandler                 [WEAK]
245                 EXPORT  USART3_IRQHandler                 [WEAK]
246                 EXPORT  EXTI15_10_IRQHandler              [WEAK]
247                 EXPORT  RTC_Alarm_IRQHandler              [WEAK]
248                 EXPORT  USBWakeUp_IRQHandler              [WEAK]
249                 EXPORT  SPI3_IRQHandler                   [WEAK]
250                 EXPORT  TIM6_DAC_IRQHandler               [WEAK]
251                 EXPORT  COMP2_IRQHandler              [WEAK]
252                 EXPORT  COMP4_6_IRQHandler              [WEAK]
253                 EXPORT  I2C3_EV_IRQHandler                [WEAK]
254                 EXPORT  I2C3_ER_IRQHandler                [WEAK]
255                 EXPORT  USB_HP_IRQHandler                 [WEAK]
256                 EXPORT  USB_LP_IRQHandler                 [WEAK]
257                 EXPORT  USBWakeUp_RMP_IRQHandler              [WEAK]
258                 EXPORT  FPU_IRQHandler                    [WEAK]
259
260 WWDG_IRQHandler
261 PVD_IRQHandler
262 TAMP_STAMP_IRQHandler
263 RTC_WKUP_IRQHandler
264 FLASH_IRQHandler
265 RCC_IRQHandler
266 EXTI0_IRQHandler
267 EXTI1_IRQHandler
268 EXTI2_TSC_IRQHandler
269 EXTI3_IRQHandler
270 EXTI4_IRQHandler
271 DMA1_Channel1_IRQHandler
272 DMA1_Channel2_IRQHandler
273 DMA1_Channel3_IRQHandler
274 DMA1_Channel4_IRQHandler
275 DMA1_Channel5_IRQHandler
276 DMA1_Channel6_IRQHandler
277 DMA1_Channel7_IRQHandler
278 ADC1_IRQHandler
279 USB_HP_CAN_TX_IRQHandler
280 USB_LP_CAN_RX0_IRQHandler
281 CAN_RX1_IRQHandler
282 CAN_SCE_IRQHandler
283 EXTI9_5_IRQHandler
284 TIM1_BRK_TIM15_IRQHandler
285 TIM1_UP_TIM16_IRQHandler
286 TIM1_TRG_COM_TIM17_IRQHandler
287 TIM1_CC_IRQHandler
288 TIM2_IRQHandler
289 I2C1_EV_IRQHandler
290 I2C1_ER_IRQHandler
291 I2C2_EV_IRQHandler
292 I2C2_ER_IRQHandler
293 SPI2_IRQHandler
294 USART1_IRQHandler
295 USART2_IRQHandler
296 USART3_IRQHandler
297 EXTI15_10_IRQHandler
298 RTC_Alarm_IRQHandler
299 USBWakeUp_IRQHandler
300 SPI3_IRQHandler
301 TIM6_DAC_IRQHandler
302 COMP2_IRQHandler
303 COMP4_6_IRQHandler
304 I2C3_EV_IRQHandler
305 I2C3_ER_IRQHandler
306 USB_HP_IRQHandler
307 USB_LP_IRQHandler
308 USBWakeUp_RMP_IRQHandler
309 FPU_IRQHandler
310
311                 B       .
312
313                 ENDP
314
315                 ALIGN
316                 END