]> git.gir.st - tmk_keyboard.git/blob - tmk_core/tool/mbed/mbed-sdk/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_KLXX/TARGET_KL25Z/TOOLCHAIN_IAR/startup_MKL25Z4.s
Merge commit '1fe4406f374291ab2e86e95a97341fd9c475fcb8'
[tmk_keyboard.git] / tmk_core / tool / mbed / mbed-sdk / libraries / mbed / targets / cmsis / TARGET_Freescale / TARGET_KLXX / TARGET_KL25Z / TOOLCHAIN_IAR / startup_MKL25Z4.s
1 /**************************************************
2 *
3 * Copyright 2012 IAR Systems. All rights reserved.
4 *
5 * $Revision: 16 $
6 *
7 **************************************************/
8
9 ;
10 ; The modules in this file are included in the libraries, and may be replaced
11 ; by any user-defined modules that define the PUBLIC symbol _program_start or
12 ; a user defined start symbol.
13 ; To override the cstartup defined in the library, simply add your modified
14 ; version to the workbench project.
15 ;
16 ; The vector table is normally located at address 0.
17 ; When debugging in RAM, it can be located in RAM, aligned to at least 2^6.
18 ; The name "__vector_table" has special meaning for C-SPY:
19 ; it is where the SP start value is found, and the NVIC vector
20 ; table register (VTOR) is initialized to this address if != 0.
21 ;
22 ; Cortex-M version
23 ;
24
25 MODULE ?cstartup
26
27 ;; Forward declaration of sections.
28 SECTION CSTACK:DATA:NOROOT(3)
29
30 SECTION .intvec:CODE:ROOT(2)
31
32 EXTERN __iar_program_start
33 EXTERN SystemInit
34 PUBLIC __vector_table
35
36 DATA
37 __vector_table
38 DCD sfe(CSTACK) ; Top of Stack
39 DCD Reset_Handler ; Reset Handler
40 DCD NMI_Handler ; NMI Handler
41 DCD HardFault_Handler ; Hard Fault Handler
42 DCD 0 ; Reserved
43 DCD 0 ; Reserved
44 DCD 0 ; Reserved
45 DCD 0 ; Reserved
46 DCD 0 ; Reserved
47 DCD 0 ; Reserved
48 DCD 0 ; Reserved
49 DCD SVC_Handler ; SVCall Handler
50 DCD 0 ; Reserved
51 DCD 0 ; Reserved
52 DCD PendSV_Handler ; PendSV Handler
53 DCD SysTick_Handler ; SysTick Handler
54 ; External Interrupts
55 DCD DMA0_IRQHandler ; 0: DMA Channel 0 transfer complete intertrupt
56 DCD DMA1_IRQHandler ; 1: DMA Channel 1 transfer complete intertrupt
57 DCD DMA2_IRQHandler ; 2: DMA Channel 2 transfer complete intertrupt
58 DCD DMA3_IRQHandler ; 3: DMA Channel 3 transfer complete intertrupt
59 DCD 0 ; 4: Reserved DMA Channel 5 transfer complete intertrupt
60 DCD FTFA_IRQHandler ; 5: FTFA
61 DCD LVD_LVW_IRQHandler ; 6: Low-voltage detect, low-voltage warning
62 DCD LLW_IRQHandler ; 7: Low Leakage Wakeup
63 DCD I2C0_IRQHandler ; 8: IIC 0 interrupt
64 DCD I2C1_IRQHandler ; 9: IIC 1 intertrupt
65 DCD SPI0_IRQHandler ;10: SPI0 intertrupt
66 DCD SPI1_IRQHandler ;11: SPI1 intertrupt
67 DCD UART0_IRQHandler ;12: UART 0 status and error intertrupt
68 DCD UART1_IRQHandler ;13: UART 1 status and error intertrupt
69 DCD UART2_IRQHandler ;14: UART 2 status and error intertrupt
70 DCD ADC0_IRQHandler ;15: ADC 0 interrupt
71 DCD CMP0_IRQHandler ;16: CMP 0 interrupt
72 DCD TPM0_IRQHandler ;17: TPM 0 interrupt
73 DCD TPM1_IRQHandler ;18: TPM 1 interrupt
74 DCD TPM2_IRQHandler ;19: TPM 2 interrupt
75 DCD RTC_IRQHandler ;20: RTC Alarm interrupt
76 DCD RTC_Seconds_IRQHandler ;21: RTC Seconds interrupt
77 DCD PIT_IRQHandler ;22: PIT Single interrupt vector for all channels
78 DCD 0 ;23: Reserved
79 DCD USB0_IRQHandler ;24: USB OTG intertrupt
80 DCD DAC0_IRQHandler ;25: UART 0 status intertrupt
81 DCD TSI0_IRQHandler ;26: TSI 0 interrupt
82 DCD MCG_IRQHandler ;27: MCG intertrupt
83 DCD LPTimer_IRQHandler ;28: LPTMR0 intertrupt
84 DCD 0 ;29: Reserved
85 DCD PORTA_IRQHandler ;30: PORT A interrupt
86 DCD PORTD_IRQHandler ;31: PORT D interrupt
87 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
88 ;;Flash Configuration
89 ;;16-byte flash configuration field that stores default protection settings (loaded on reset)
90 ;;and security information that allows the MCU to restrict acces to the FTFL module.
91
92 BackDoorK0 EQU 0xFF
93 BackDoorK1 EQU 0xFF
94 BackDoorK2 EQU 0xFF
95 BackDoorK3 EQU 0xFF
96 BackDoorK4 EQU 0xFF
97 BackDoorK5 EQU 0xFF
98 BackDoorK6 EQU 0xFF
99 BackDoorK7 EQU 0xFF
100
101 nFPROT0 EQU 0x00
102 FPROT0 EQU nFPROT0^0xFF
103
104 nFPROT1 EQU 0x00
105 FPROT1 EQU nFPROT1^0xFF
106
107 nFPROT2 EQU 0x00
108 FPROT2 EQU nFPROT2^0xFF
109
110 nFPROT3 EQU 0x00
111 FPROT3 EQU nFPROT3^0xFF
112
113 FOPT EQU 0xFF
114
115 FSEC EQU 0xFE
116 SECTION FlashConfig:CONST:REORDER:ROOT(2)
117 Config:
118 DATA
119 DCB BackDoorK0, BackDoorK1, BackDoorK2, BackDoorK3
120 DCB BackDoorK4, BackDoorK5, BackDoorK6, BackDoorK7
121 DCB FPROT0, FPROT1, FPROT2, FPROT3
122 DCB FSEC, FOPT, 0xFF, 0xFF
123
124
125 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
126 ;;
127 ;; Default interrupt handlers.
128 ;;
129 THUMB
130 PUBWEAK Reset_Handler
131 SECTION .text:CODE:NOROOT:REORDER(2)
132 Reset_Handler
133
134 LDR R0, =SystemInit
135 BLX R0
136 LDR R0, =__iar_program_start
137 BX R0
138
139 PUBWEAK NMI_Handler
140 PUBWEAK HardFault_Handler
141 PUBWEAK SVC_Handler
142 PUBWEAK PendSV_Handler
143 PUBWEAK SysTick_Handler
144 PUBWEAK DMA0_IRQHandler
145 PUBWEAK DMA1_IRQHandler
146 PUBWEAK DMA2_IRQHandler
147 PUBWEAK DMA3_IRQHandler
148 PUBWEAK FTFA_IRQHandler
149 PUBWEAK LVD_LVW_IRQHandler
150 PUBWEAK LLW_IRQHandler
151 PUBWEAK I2C0_IRQHandler
152 PUBWEAK I2C1_IRQHandler
153 PUBWEAK SPI0_IRQHandler
154 PUBWEAK SPI1_IRQHandler
155 PUBWEAK UART0_IRQHandler
156 PUBWEAK UART1_IRQHandler
157 PUBWEAK UART2_IRQHandler
158 PUBWEAK ADC0_IRQHandler
159 PUBWEAK CMP0_IRQHandler
160 PUBWEAK TPM0_IRQHandler
161 PUBWEAK TPM1_IRQHandler
162 PUBWEAK TPM2_IRQHandler
163 PUBWEAK RTC_IRQHandler
164 PUBWEAK RTC_Seconds_IRQHandler
165 PUBWEAK PIT_IRQHandler
166 PUBWEAK USB0_IRQHandler
167 PUBWEAK DAC0_IRQHandler
168 PUBWEAK TSI0_IRQHandler
169 PUBWEAK MCG_IRQHandler
170 PUBWEAK LPTimer_IRQHandler
171 PUBWEAK PORTA_IRQHandler
172 PUBWEAK PORTD_IRQHandler
173
174 SECTION .text:CODE:REORDER:NOROOT(1)
175 THUMB
176 NMI_Handler
177 HardFault_Handler
178 SVC_Handler
179 PendSV_Handler
180 SysTick_Handler
181 DMA0_IRQHandler
182 DMA1_IRQHandler
183 DMA2_IRQHandler
184 DMA3_IRQHandler
185 FTFA_IRQHandler
186 LVD_LVW_IRQHandler
187 LLW_IRQHandler
188 I2C0_IRQHandler
189 I2C1_IRQHandler
190 SPI0_IRQHandler
191 SPI1_IRQHandler
192 UART0_IRQHandler
193 UART1_IRQHandler
194 UART2_IRQHandler
195 ADC0_IRQHandler
196 CMP0_IRQHandler
197 TPM0_IRQHandler
198 TPM1_IRQHandler
199 TPM2_IRQHandler
200 RTC_IRQHandler
201 RTC_Seconds_IRQHandler
202 PIT_IRQHandler
203 USB0_IRQHandler
204 DAC0_IRQHandler
205 TSI0_IRQHandler
206 MCG_IRQHandler
207 LPTimer_IRQHandler
208 PORTA_IRQHandler
209 PORTD_IRQHandler
210 Default_Handler
211
212 B Default_Handler
213 END
Imprint / Impressum