]> git.donarmstrong.com Git - qmk_firmware.git/blob - tmk_core/tool/mbed/mbed-sdk/libraries/mbed/targets/cmsis/TARGET_Maxim/TARGET_MAX32600/TOOLCHAIN_IAR/startup_MAX32600.s
Merge commit '1fe4406f374291ab2e86e95a97341fd9c475fcb8'
[qmk_firmware.git] / tmk_core / tool / mbed / mbed-sdk / libraries / mbed / targets / cmsis / TARGET_Maxim / TARGET_MAX32600 / TOOLCHAIN_IAR / startup_MAX32600.s
1 /*******************************************************************************
2  * Copyright (C) 2015 Maxim Integrated Products, Inc., All Rights Reserved.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the "Software"),
6  * to deal in the Software without restriction, including without limitation
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8  * and/or sell copies of the Software, and to permit persons to whom the
9  * Software is furnished to do so, subject to the following conditions:
10  *
11  * The above copyright notice and this permission notice shall be included
12  * in all copies or substantial portions of the Software.
13  *
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17  * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES
18  * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
19  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
20  * OTHER DEALINGS IN THE SOFTWARE.
21  *
22  * Except as contained in this notice, the name of Maxim Integrated
23  * Products, Inc. shall not be used except as stated in the Maxim Integrated
24  * Products, Inc. Branding Policy.
25  *
26  * The mere transfer of this software does not imply any licenses
27  * of trade secrets, proprietary technology, copyrights, patents,
28  * trademarks, maskwork rights, or any other form of intellectual
29  * property whatsoever. Maxim Integrated Products, Inc. retains all
30  * ownership rights.
31  *******************************************************************************
32  */
33
34                 MODULE  ?cstartup
35
36                 ;; Forward declaration of sections.
37                 SECTION CSTACK:DATA:NOROOT(3)
38
39                 SECTION .intvec:CODE:NOROOT(2)
40
41                 EXTERN  __iar_program_start
42                 EXTERN  SystemInit
43                 PUBLIC  __vector_table
44
45                 DATA
46 __vector_table  DCD     sfe(CSTACK)               /* Top of Stack */
47                 DCD     Reset_Handler             /* Reset Handler */
48                 DCD     NMI_Handler               /* NMI Handler */
49                 DCD     HardFault_Handler         /* Hard Fault Handler */
50                 DCD     DefaultIRQ_Handler        /* MPU Fault Handler */
51                 DCD     DefaultIRQ_Handler        /* Bus Fault Handler */
52                 DCD     DefaultIRQ_Handler        /* Usage Fault Handler */
53                 DCD     0                         /* Reserved */
54                 DCD     0                         /* Reserved */
55                 DCD     0                         /* Reserved */
56                 DCD     0                         /* Reserved */
57                 DCD     DefaultIRQ_Handler        /* SVCall Handler */
58                 DCD     DebugMon_Handler          /* Debug Monitor Handler */
59                 DCD     0                         /* Reserved */
60                 DCD     DefaultIRQ_Handler        /* PendSV Handler */
61                 DCD     SysTick_IRQHandler        /* SysTick Handler */
62
63                 /* Maxim 32600 Externals interrupts */
64                 DCD     UART0_IRQHandler          /* 16: 1 UART0 */
65                 DCD     UART1_IRQHandler          /* 17: 2 UART1 */
66                 DCD     I2CM0_IRQHandler          /* 18: 3 I2C Master 0 */
67                 DCD     I2CS_IRQHandler           /* 19: 4 I2C Slave */
68                 DCD     USB_IRQHandler            /* 20: 5 USB */
69                 DCD     PMU_IRQHandler            /* 21: 6 DMA */
70                 DCD     AFE_IRQHandler            /* 22: 7 AFE */
71                 DCD     MAA_IRQHandler            /* 23: 8 MAA */
72                 DCD     AES_IRQHandler            /* 24: 9 AES */
73                 DCD     SPI0_IRQHandler           /* 25:10 SPI0 */
74                 DCD     SPI1_IRQHandler           /* 26:11 SPI1 */
75                 DCD     SPI2_IRQHandler           /* 27:12 SPI2 */
76                 DCD     TMR0_IRQHandler           /* 28:13 Timer32-0 */
77                 DCD     TMR1_IRQHandler           /* 29:14 Timer32-1 */
78                 DCD     TMR2_IRQHandler           /* 30:15 Timer32-1 */
79                 DCD     TMR3_IRQHandler           /* 31:16 Timer32-2 */
80                 DCD     RSVD0_IRQHandler          /* 32:17 RSVD */
81                 DCD     RSVD1_IRQHandler          /* 33:18 RSVD */
82                 DCD     DAC0_IRQHandler           /* 34:19 DAC0  (12-bit DAC) */  
83                 DCD     DAC1_IRQHandler           /* 35:20 DAC1  (12-bit DAC) */  
84                 DCD     DAC2_IRQHandler           /* 36:21 DAC2  (8-bit DAC) */
85                 DCD     DAC3_IRQHandler           /* 37:22 DAC3  (8-bit DAC) */
86                 DCD     ADC_IRQHandler            /* 38:23 ADC */
87                 DCD     FLC_IRQHandler            /* 39:24 Flash Controller */
88                 DCD     PWRMAN_IRQHandler         /* 40:25 PWRMAN */
89                 DCD     CLKMAN_IRQHandler         /* 41:26 CLKMAN */
90                 DCD     RTC0_IRQHandler           /* 42:27 RTC INT0 */
91                 DCD     RTC1_IRQHandler           /* 43:28 RTC INT1 */
92                 DCD     RTC2_IRQHandler           /* 44:29 RTC INT2 */
93                 DCD     RTC3_IRQHandler           /* 45:30 RTC INT3 */
94                 DCD     WDT0_IRQHandler           /* 46:31 WATCHDOG0 */
95                 DCD     WDT0_P_IRQHandler         /* 47:32 WATCHDOG0 PRE-WINDOW */
96                 DCD     WDT1_IRQHandler           /* 48:33 WATCHDOG1 */
97                 DCD     WDT1_P_IRQHandler         /* 49:34 WATCHDOG1 PRE-WINDOW */
98                 DCD     GPIO_P0_IRQHandler        /* 50:35 GPIO Port 0  */
99                 DCD     GPIO_P1_IRQHandler        /* 51:36 GPIO Port 1  */
100                 DCD     GPIO_P2_IRQHandler        /* 52:37 GPIO Port 2  */
101                 DCD     GPIO_P3_IRQHandler        /* 53:38 GPIO Port 3  */
102                 DCD     GPIO_P4_IRQHandler        /* 54:39 GPIO Port 4  */
103                 DCD     GPIO_P5_IRQHandler        /* 55:40 GPIO Port 5  */
104                 DCD     GPIO_P6_IRQHandler        /* 56:41 GPIO Port 6  */
105                 DCD     GPIO_P7_IRQHandler        /* 57:42 GPIO Port 7  */
106                 DCD     TMR16_0_IRQHandler        /* 58:43 Timer16-s0 */
107                 DCD     TMR16_1_IRQHandler        /* 59:44 Timer16-s1 */
108                 DCD     TMR16_2_IRQHandler        /* 60:45 Timer16-s2 */
109                 DCD     TMR16_3_IRQHandler        /* 61:46 Timer16-s3 */
110                 DCD     I2CM1_IRQHandler          /* 62:47 I2C Master 1 */
111
112                 THUMB
113 ; Dummy Exception Handlers (infinite loops which can be modified)
114
115                 PUBWEAK Reset_Handler
116                 SECTION .text:CODE:REORDER:NOROOT(2)
117 Reset_Handler
118                 LDR     R0, =SystemInit
119                 BLX     R0
120                 LDR     R0, =__iar_program_start
121                 BX      R0
122         
123                 PUBWEAK NMI_Handler
124                 SECTION .text:CODE:REORDER:NOROOT(1)
125 NMI_Handler
126                 B       NMI_Handler
127
128                 PUBWEAK HardFault_Handler
129                 SECTION .text:CODE:REORDER:NOROOT(1)
130 HardFault_Handler
131                 B       HardFault_Handler
132
133                 PUBWEAK DefaultIRQ_Handler
134                 SECTION .text:CODE:REORDER:NOROOT(1)
135 DefaultIRQ_Handler
136                 B       DefaultIRQ_Handler
137                    
138                 PUBWEAK DebugMon_Handler
139                 SECTION .text:CODE:REORDER:NOROOT(1)
140 DebugMon_Handler
141                 B       DebugMon_Handler
142
143                 PUBWEAK SysTick_IRQHandler
144                 SECTION .text:CODE:REORDER:NOROOT(1)
145 SysTick_IRQHandler
146                 B       SysTick_IRQHandler
147       
148                 PUBWEAK UART0_IRQHandler
149                 SECTION .text:CODE:REORDER:NOROOT(1)
150 UART0_IRQHandler
151                 B       UART0_IRQHandler
152     
153                 PUBWEAK UART1_IRQHandler
154                 SECTION .text:CODE:REORDER:NOROOT(1)
155 UART1_IRQHandler
156                 B       UART1_IRQHandler
157     
158                 PUBWEAK I2CM0_IRQHandler
159                 SECTION .text:CODE:REORDER:NOROOT(1)
160 I2CM0_IRQHandler
161                 B       I2CM0_IRQHandler
162     
163                 PUBWEAK I2CS_IRQHandler
164                 SECTION .text:CODE:REORDER:NOROOT(1)
165 I2CS_IRQHandler
166                 B       I2CS_IRQHandler
167      
168                 PUBWEAK USB_IRQHandler
169                 SECTION .text:CODE:REORDER:NOROOT(1)
170 USB_IRQHandler
171                 B       USB_IRQHandler
172       
173                 PUBWEAK PMU_IRQHandler
174                 SECTION .text:CODE:REORDER:NOROOT(1)
175 PMU_IRQHandler
176                 B       PMU_IRQHandler
177       
178                 PUBWEAK AFE_IRQHandler
179                 SECTION .text:CODE:REORDER:NOROOT(1)
180 AFE_IRQHandler
181                 B       AFE_IRQHandler
182       
183                 PUBWEAK MAA_IRQHandler
184                 SECTION .text:CODE:REORDER:NOROOT(1)
185 MAA_IRQHandler
186                 B       MAA_IRQHandler
187       
188                 PUBWEAK AES_IRQHandler
189                 SECTION .text:CODE:REORDER:NOROOT(1)
190 AES_IRQHandler
191                 B       AES_IRQHandler
192       
193                 PUBWEAK SPI0_IRQHandler
194                 SECTION .text:CODE:REORDER:NOROOT(1)
195 SPI0_IRQHandler
196                 B       SPI0_IRQHandler
197      
198                 PUBWEAK SPI1_IRQHandler
199                 SECTION .text:CODE:REORDER:NOROOT(1)
200 SPI1_IRQHandler
201                 B       SPI1_IRQHandler
202      
203                 PUBWEAK SPI2_IRQHandler
204                 SECTION .text:CODE:REORDER:NOROOT(1)
205 SPI2_IRQHandler
206                 B       SPI2_IRQHandler
207      
208                 PUBWEAK TMR0_IRQHandler
209                 SECTION .text:CODE:REORDER:NOROOT(1)
210 TMR0_IRQHandler
211                 B       TMR0_IRQHandler
212      
213                 PUBWEAK TMR1_IRQHandler
214                 SECTION .text:CODE:REORDER:NOROOT(1)
215 TMR1_IRQHandler
216                 B       TMR1_IRQHandler
217      
218                 PUBWEAK TMR2_IRQHandler
219                 SECTION .text:CODE:REORDER:NOROOT(1)
220 TMR2_IRQHandler
221                 B       TMR2_IRQHandler
222      
223                 PUBWEAK TMR3_IRQHandler
224                 SECTION .text:CODE:REORDER:NOROOT(1)
225 TMR3_IRQHandler
226                 B       TMR3_IRQHandler
227      
228                 PUBWEAK RSVD0_IRQHandler
229                 SECTION .text:CODE:REORDER:NOROOT(1)
230 RSVD0_IRQHandler
231                 B       RSVD0_IRQHandler
232     
233                 PUBWEAK RSVD1_IRQHandler
234                 SECTION .text:CODE:REORDER:NOROOT(1)
235 RSVD1_IRQHandler
236                 B       RSVD1_IRQHandler
237     
238                 PUBWEAK DAC0_IRQHandler
239                 SECTION .text:CODE:REORDER:NOROOT(1)
240 DAC0_IRQHandler
241                 B       DAC0_IRQHandler
242      
243                 PUBWEAK DAC1_IRQHandler
244                 SECTION .text:CODE:REORDER:NOROOT(1)
245 DAC1_IRQHandler
246                 B       DAC1_IRQHandler
247      
248                 PUBWEAK DAC2_IRQHandler
249                 SECTION .text:CODE:REORDER:NOROOT(1)
250 DAC2_IRQHandler
251                 B       DAC2_IRQHandler
252      
253                 PUBWEAK DAC3_IRQHandler
254                 SECTION .text:CODE:REORDER:NOROOT(1)
255 DAC3_IRQHandler
256                 B       DAC3_IRQHandler
257      
258                 PUBWEAK ADC_IRQHandler
259                 SECTION .text:CODE:REORDER:NOROOT(1)
260 ADC_IRQHandler
261                 B       ADC_IRQHandler
262       
263                 PUBWEAK FLC_IRQHandler
264                 SECTION .text:CODE:REORDER:NOROOT(1)
265 FLC_IRQHandler
266                 B       FLC_IRQHandler
267     
268                 PUBWEAK PWRMAN_IRQHandler
269                 SECTION .text:CODE:REORDER:NOROOT(1)
270 PWRMAN_IRQHandler
271                 B       PWRMAN_IRQHandler
272  
273                 PUBWEAK CLKMAN_IRQHandler
274                 SECTION .text:CODE:REORDER:NOROOT(1)
275 CLKMAN_IRQHandler
276                 B       CLKMAN_IRQHandler
277  
278                 PUBWEAK RTC0_IRQHandler
279                 SECTION .text:CODE:REORDER:NOROOT(1)
280 RTC0_IRQHandler
281                 B       RTC0_IRQHandler
282    
283                 PUBWEAK RTC1_IRQHandler
284                 SECTION .text:CODE:REORDER:NOROOT(1)
285 RTC1_IRQHandler
286                 B       RTC1_IRQHandler
287    
288                 PUBWEAK RTC2_IRQHandler
289                 SECTION .text:CODE:REORDER:NOROOT(1)
290 RTC2_IRQHandler
291                 B       RTC2_IRQHandler
292    
293                 PUBWEAK RTC3_IRQHandler
294                 SECTION .text:CODE:REORDER:NOROOT(1)
295 RTC3_IRQHandler
296                 B       RTC3_IRQHandler
297    
298                 PUBWEAK WDT0_IRQHandler
299                 SECTION .text:CODE:REORDER:NOROOT(1)
300 WDT0_IRQHandler
301                 B       WDT0_IRQHandler
302    
303                 PUBWEAK WDT0_P_IRQHandler
304                 SECTION .text:CODE:REORDER:NOROOT(1)
305 WDT0_P_IRQHandler
306                 B       WDT0_P_IRQHandler
307  
308                 PUBWEAK WDT1_IRQHandler
309                 SECTION .text:CODE:REORDER:NOROOT(1)
310 WDT1_IRQHandler
311                 B       WDT1_IRQHandler
312    
313                 PUBWEAK WDT1_P_IRQHandler
314                 SECTION .text:CODE:REORDER:NOROOT(1)
315 WDT1_P_IRQHandler
316                 B       WDT1_P_IRQHandler
317  
318                 PUBWEAK GPIO_P0_IRQHandler
319                 SECTION .text:CODE:REORDER:NOROOT(1)
320 GPIO_P0_IRQHandler
321                 B       GPIO_P0_IRQHandler
322
323                 PUBWEAK GPIO_P1_IRQHandler
324                 SECTION .text:CODE:REORDER:NOROOT(1)
325 GPIO_P1_IRQHandler
326                 B       GPIO_P1_IRQHandler
327
328                 PUBWEAK GPIO_P2_IRQHandler
329                 SECTION .text:CODE:REORDER:NOROOT(1)
330 GPIO_P2_IRQHandler
331                 B       GPIO_P2_IRQHandler
332
333                 PUBWEAK GPIO_P3_IRQHandler
334                 SECTION .text:CODE:REORDER:NOROOT(1)
335 GPIO_P3_IRQHandler
336                 B       GPIO_P3_IRQHandler
337
338                 PUBWEAK GPIO_P4_IRQHandler
339                 SECTION .text:CODE:REORDER:NOROOT(1)
340 GPIO_P4_IRQHandler
341                 B       GPIO_P4_IRQHandler
342
343                 PUBWEAK GPIO_P5_IRQHandler
344                 SECTION .text:CODE:REORDER:NOROOT(1)
345 GPIO_P5_IRQHandler
346                 B       GPIO_P5_IRQHandler
347
348                 PUBWEAK GPIO_P6_IRQHandler
349                 SECTION .text:CODE:REORDER:NOROOT(1)
350 GPIO_P6_IRQHandler
351                 B       GPIO_P6_IRQHandler
352
353                 PUBWEAK GPIO_P7_IRQHandler
354                 SECTION .text:CODE:REORDER:NOROOT(1)
355 GPIO_P7_IRQHandler
356                 B       GPIO_P7_IRQHandler
357
358                 PUBWEAK TMR16_0_IRQHandler
359                 SECTION .text:CODE:REORDER:NOROOT(1)
360 TMR16_0_IRQHandler
361                 B       TMR16_0_IRQHandler
362
363                 PUBWEAK TMR16_1_IRQHandler
364                 SECTION .text:CODE:REORDER:NOROOT(1)
365 TMR16_1_IRQHandler
366                 B       TMR16_1_IRQHandler
367
368                 PUBWEAK TMR16_2_IRQHandler
369                 SECTION .text:CODE:REORDER:NOROOT(1)
370 TMR16_2_IRQHandler
371                 B       TMR16_2_IRQHandler
372
373                 PUBWEAK TMR16_3_IRQHandler
374                 SECTION .text:CODE:REORDER:NOROOT(1)
375 TMR16_3_IRQHandler
376                 B       TMR16_3_IRQHandler
377
378                 PUBWEAK I2CM1_IRQHandler
379                 SECTION .text:CODE:REORDER:NOROOT(1)
380 I2CM1_IRQHandler
381                 B       I2CM1_IRQHandler  
382         
383                 END