1 //*****************************************************************************
2 // MIMXRT1061 startup code for use with MCUXpresso IDE
3 //
4 // Version : 091022
5 //*****************************************************************************
6 //
7 // Copyright 2016-2022 NXP
8 // All rights reserved.
9 //
10 // SPDX-License-Identifier: BSD-3-Clause
11 //*****************************************************************************
12 
13 #if defined (DEBUG)
14 #pragma GCC push_options
15 #pragma GCC optimize ("Og")
16 #endif // (DEBUG)
17 
18 #if defined (__cplusplus)
19 #ifdef __REDLIB__
20 #error Redlib does not support C++
21 #else
22 //*****************************************************************************
23 //
24 // The entry point for the C++ library startup
25 //
26 //*****************************************************************************
27 extern "C" {
28     extern void __libc_init_array(void);
29 }
30 #endif
31 #endif
32 
33 #define WEAK __attribute__ ((weak))
34 #define WEAK_AV __attribute__ ((weak, section(".after_vectors")))
35 #define ALIAS(f) __attribute__ ((weak, alias (#f)))
36 
37 //*****************************************************************************
38 #if defined (__cplusplus)
39 extern "C" {
40 #endif
41 
42 //*****************************************************************************
43 // Variable to store CRP value in. Will be placed automatically
44 // by the linker when "Enable Code Read Protect" selected.
45 // See crp.h header for more information
46 //*****************************************************************************
47 //*****************************************************************************
48 // Declaration of external SystemInit function
49 //*****************************************************************************
50 #if defined (__USE_CMSIS)
51 extern void SystemInit(void);
52 #endif // (__USE_CMSIS)
53 
54 //*****************************************************************************
55 // Forward declaration of the core exception handlers.
56 // When the application defines a handler (with the same name), this will
57 // automatically take precedence over these weak definitions.
58 // If your application is a C++ one, then any interrupt handlers defined
59 // in C++ files within in your main application will need to have C linkage
60 // rather than C++ linkage. To do this, make sure that you are using extern "C"
61 // { .... } around the interrupt handler within your main application code.
62 //*****************************************************************************
63      void ResetISR(void);
64 WEAK void NMI_Handler(void);
65 WEAK void HardFault_Handler(void);
66 WEAK void MemManage_Handler(void);
67 WEAK void BusFault_Handler(void);
68 WEAK void UsageFault_Handler(void);
69 WEAK void SVC_Handler(void);
70 WEAK void DebugMon_Handler(void);
71 WEAK void PendSV_Handler(void);
72 WEAK void SysTick_Handler(void);
73 WEAK void IntDefaultHandler(void);
74 
75 //*****************************************************************************
76 // Forward declaration of the application IRQ handlers. When the application
77 // defines a handler (with the same name), this will automatically take
78 // precedence over weak definitions below
79 //*****************************************************************************
80 WEAK void DMA0_DMA16_IRQHandler(void);
81 WEAK void DMA1_DMA17_IRQHandler(void);
82 WEAK void DMA2_DMA18_IRQHandler(void);
83 WEAK void DMA3_DMA19_IRQHandler(void);
84 WEAK void DMA4_DMA20_IRQHandler(void);
85 WEAK void DMA5_DMA21_IRQHandler(void);
86 WEAK void DMA6_DMA22_IRQHandler(void);
87 WEAK void DMA7_DMA23_IRQHandler(void);
88 WEAK void DMA8_DMA24_IRQHandler(void);
89 WEAK void DMA9_DMA25_IRQHandler(void);
90 WEAK void DMA10_DMA26_IRQHandler(void);
91 WEAK void DMA11_DMA27_IRQHandler(void);
92 WEAK void DMA12_DMA28_IRQHandler(void);
93 WEAK void DMA13_DMA29_IRQHandler(void);
94 WEAK void DMA14_DMA30_IRQHandler(void);
95 WEAK void DMA15_DMA31_IRQHandler(void);
96 WEAK void DMA_ERROR_IRQHandler(void);
97 WEAK void CTI0_ERROR_IRQHandler(void);
98 WEAK void CTI1_ERROR_IRQHandler(void);
99 WEAK void CORE_IRQHandler(void);
100 WEAK void LPUART1_IRQHandler(void);
101 WEAK void LPUART2_IRQHandler(void);
102 WEAK void LPUART3_IRQHandler(void);
103 WEAK void LPUART4_IRQHandler(void);
104 WEAK void LPUART5_IRQHandler(void);
105 WEAK void LPUART6_IRQHandler(void);
106 WEAK void LPUART7_IRQHandler(void);
107 WEAK void LPUART8_IRQHandler(void);
108 WEAK void LPI2C1_IRQHandler(void);
109 WEAK void LPI2C2_IRQHandler(void);
110 WEAK void LPI2C3_IRQHandler(void);
111 WEAK void LPI2C4_IRQHandler(void);
112 WEAK void LPSPI1_IRQHandler(void);
113 WEAK void LPSPI2_IRQHandler(void);
114 WEAK void LPSPI3_IRQHandler(void);
115 WEAK void LPSPI4_IRQHandler(void);
116 WEAK void CAN1_IRQHandler(void);
117 WEAK void CAN2_IRQHandler(void);
118 WEAK void FLEXRAM_IRQHandler(void);
119 WEAK void KPP_IRQHandler(void);
120 WEAK void TSC_DIG_IRQHandler(void);
121 WEAK void GPR_IRQ_IRQHandler(void);
122 WEAK void Reserved58_IRQHandler(void);
123 WEAK void Reserved59_IRQHandler(void);
124 WEAK void Reserved60_IRQHandler(void);
125 WEAK void WDOG2_IRQHandler(void);
126 WEAK void SNVS_HP_WRAPPER_IRQHandler(void);
127 WEAK void SNVS_HP_WRAPPER_TZ_IRQHandler(void);
128 WEAK void SNVS_LP_WRAPPER_IRQHandler(void);
129 WEAK void CSU_IRQHandler(void);
130 WEAK void DCP_IRQHandler(void);
131 WEAK void DCP_VMI_IRQHandler(void);
132 WEAK void Reserved68_IRQHandler(void);
133 WEAK void TRNG_IRQHandler(void);
134 WEAK void SJC_IRQHandler(void);
135 WEAK void BEE_IRQHandler(void);
136 WEAK void SAI1_IRQHandler(void);
137 WEAK void SAI2_IRQHandler(void);
138 WEAK void SAI3_RX_IRQHandler(void);
139 WEAK void SAI3_TX_IRQHandler(void);
140 WEAK void SPDIF_IRQHandler(void);
141 WEAK void PMU_EVENT_IRQHandler(void);
142 WEAK void Reserved78_IRQHandler(void);
143 WEAK void TEMP_LOW_HIGH_IRQHandler(void);
144 WEAK void TEMP_PANIC_IRQHandler(void);
145 WEAK void USB_PHY1_IRQHandler(void);
146 WEAK void USB_PHY2_IRQHandler(void);
147 WEAK void ADC1_IRQHandler(void);
148 WEAK void ADC2_IRQHandler(void);
149 WEAK void DCDC_IRQHandler(void);
150 WEAK void Reserved86_IRQHandler(void);
151 WEAK void GPIO10_Combined_0_31_IRQHandler(void);
152 WEAK void GPIO1_INT0_IRQHandler(void);
153 WEAK void GPIO1_INT1_IRQHandler(void);
154 WEAK void GPIO1_INT2_IRQHandler(void);
155 WEAK void GPIO1_INT3_IRQHandler(void);
156 WEAK void GPIO1_INT4_IRQHandler(void);
157 WEAK void GPIO1_INT5_IRQHandler(void);
158 WEAK void GPIO1_INT6_IRQHandler(void);
159 WEAK void GPIO1_INT7_IRQHandler(void);
160 WEAK void GPIO1_Combined_0_15_IRQHandler(void);
161 WEAK void GPIO1_Combined_16_31_IRQHandler(void);
162 WEAK void GPIO2_Combined_0_15_IRQHandler(void);
163 WEAK void GPIO2_Combined_16_31_IRQHandler(void);
164 WEAK void GPIO3_Combined_0_15_IRQHandler(void);
165 WEAK void GPIO3_Combined_16_31_IRQHandler(void);
166 WEAK void GPIO4_Combined_0_15_IRQHandler(void);
167 WEAK void GPIO4_Combined_16_31_IRQHandler(void);
168 WEAK void GPIO5_Combined_0_15_IRQHandler(void);
169 WEAK void GPIO5_Combined_16_31_IRQHandler(void);
170 WEAK void FLEXIO1_IRQHandler(void);
171 WEAK void FLEXIO2_IRQHandler(void);
172 WEAK void WDOG1_IRQHandler(void);
173 WEAK void RTWDOG_IRQHandler(void);
174 WEAK void EWM_IRQHandler(void);
175 WEAK void CCM_1_IRQHandler(void);
176 WEAK void CCM_2_IRQHandler(void);
177 WEAK void GPC_IRQHandler(void);
178 WEAK void SRC_IRQHandler(void);
179 WEAK void Reserved115_IRQHandler(void);
180 WEAK void GPT1_IRQHandler(void);
181 WEAK void GPT2_IRQHandler(void);
182 WEAK void PWM1_0_IRQHandler(void);
183 WEAK void PWM1_1_IRQHandler(void);
184 WEAK void PWM1_2_IRQHandler(void);
185 WEAK void PWM1_3_IRQHandler(void);
186 WEAK void PWM1_FAULT_IRQHandler(void);
187 WEAK void FLEXSPI2_IRQHandler(void);
188 WEAK void FLEXSPI_IRQHandler(void);
189 WEAK void SEMC_IRQHandler(void);
190 WEAK void USDHC1_IRQHandler(void);
191 WEAK void USDHC2_IRQHandler(void);
192 WEAK void USB_OTG2_IRQHandler(void);
193 WEAK void USB_OTG1_IRQHandler(void);
194 WEAK void ENET_IRQHandler(void);
195 WEAK void ENET_1588_Timer_IRQHandler(void);
196 WEAK void XBAR1_IRQ_0_1_IRQHandler(void);
197 WEAK void XBAR1_IRQ_2_3_IRQHandler(void);
198 WEAK void ADC_ETC_IRQ0_IRQHandler(void);
199 WEAK void ADC_ETC_IRQ1_IRQHandler(void);
200 WEAK void ADC_ETC_IRQ2_IRQHandler(void);
201 WEAK void ADC_ETC_ERROR_IRQ_IRQHandler(void);
202 WEAK void PIT_IRQHandler(void);
203 WEAK void ACMP1_IRQHandler(void);
204 WEAK void ACMP2_IRQHandler(void);
205 WEAK void ACMP3_IRQHandler(void);
206 WEAK void ACMP4_IRQHandler(void);
207 WEAK void Reserved143_IRQHandler(void);
208 WEAK void Reserved144_IRQHandler(void);
209 WEAK void ENC1_IRQHandler(void);
210 WEAK void ENC2_IRQHandler(void);
211 WEAK void ENC3_IRQHandler(void);
212 WEAK void ENC4_IRQHandler(void);
213 WEAK void TMR1_IRQHandler(void);
214 WEAK void TMR2_IRQHandler(void);
215 WEAK void TMR3_IRQHandler(void);
216 WEAK void TMR4_IRQHandler(void);
217 WEAK void PWM2_0_IRQHandler(void);
218 WEAK void PWM2_1_IRQHandler(void);
219 WEAK void PWM2_2_IRQHandler(void);
220 WEAK void PWM2_3_IRQHandler(void);
221 WEAK void PWM2_FAULT_IRQHandler(void);
222 WEAK void PWM3_0_IRQHandler(void);
223 WEAK void PWM3_1_IRQHandler(void);
224 WEAK void PWM3_2_IRQHandler(void);
225 WEAK void PWM3_3_IRQHandler(void);
226 WEAK void PWM3_FAULT_IRQHandler(void);
227 WEAK void PWM4_0_IRQHandler(void);
228 WEAK void PWM4_1_IRQHandler(void);
229 WEAK void PWM4_2_IRQHandler(void);
230 WEAK void PWM4_3_IRQHandler(void);
231 WEAK void PWM4_FAULT_IRQHandler(void);
232 WEAK void ENET2_IRQHandler(void);
233 WEAK void ENET2_1588_Timer_IRQHandler(void);
234 WEAK void CAN3_IRQHandler(void);
235 WEAK void Reserved171_IRQHandler(void);
236 WEAK void FLEXIO3_IRQHandler(void);
237 WEAK void GPIO6_7_8_9_IRQHandler(void);
238 
239 //*****************************************************************************
240 // Forward declaration of the driver IRQ handlers. These are aliased
241 // to the IntDefaultHandler, which is a 'forever' loop. When the driver
242 // defines a handler (with the same name), this will automatically take
243 // precedence over these weak definitions
244 //*****************************************************************************
245 void DMA0_DMA16_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
246 void DMA1_DMA17_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
247 void DMA2_DMA18_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
248 void DMA3_DMA19_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
249 void DMA4_DMA20_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
250 void DMA5_DMA21_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
251 void DMA6_DMA22_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
252 void DMA7_DMA23_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
253 void DMA8_DMA24_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
254 void DMA9_DMA25_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
255 void DMA10_DMA26_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
256 void DMA11_DMA27_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
257 void DMA12_DMA28_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
258 void DMA13_DMA29_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
259 void DMA14_DMA30_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
260 void DMA15_DMA31_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
261 void DMA_ERROR_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
262 void CTI0_ERROR_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
263 void CTI1_ERROR_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
264 void CORE_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
265 void LPUART1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
266 void LPUART2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
267 void LPUART3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
268 void LPUART4_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
269 void LPUART5_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
270 void LPUART6_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
271 void LPUART7_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
272 void LPUART8_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
273 void LPI2C1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
274 void LPI2C2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
275 void LPI2C3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
276 void LPI2C4_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
277 void LPSPI1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
278 void LPSPI2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
279 void LPSPI3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
280 void LPSPI4_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
281 void CAN1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
282 void CAN2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
283 void FLEXRAM_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
284 void KPP_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
285 void TSC_DIG_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
286 void GPR_IRQ_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
287 void Reserved58_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
288 void Reserved59_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
289 void Reserved60_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
290 void WDOG2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
291 void SNVS_HP_WRAPPER_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
292 void SNVS_HP_WRAPPER_TZ_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
293 void SNVS_LP_WRAPPER_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
294 void CSU_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
295 void DCP_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
296 void DCP_VMI_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
297 void Reserved68_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
298 void TRNG_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
299 void SJC_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
300 void BEE_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
301 void SAI1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
302 void SAI2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
303 void SAI3_RX_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
304 void SAI3_TX_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
305 void SPDIF_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
306 void PMU_EVENT_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
307 void Reserved78_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
308 void TEMP_LOW_HIGH_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
309 void TEMP_PANIC_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
310 void USB_PHY1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
311 void USB_PHY2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
312 void ADC1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
313 void ADC2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
314 void DCDC_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
315 void Reserved86_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
316 void GPIO10_Combined_0_31_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
317 void GPIO1_INT0_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
318 void GPIO1_INT1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
319 void GPIO1_INT2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
320 void GPIO1_INT3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
321 void GPIO1_INT4_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
322 void GPIO1_INT5_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
323 void GPIO1_INT6_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
324 void GPIO1_INT7_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
325 void GPIO1_Combined_0_15_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
326 void GPIO1_Combined_16_31_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
327 void GPIO2_Combined_0_15_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
328 void GPIO2_Combined_16_31_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
329 void GPIO3_Combined_0_15_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
330 void GPIO3_Combined_16_31_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
331 void GPIO4_Combined_0_15_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
332 void GPIO4_Combined_16_31_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
333 void GPIO5_Combined_0_15_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
334 void GPIO5_Combined_16_31_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
335 void FLEXIO1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
336 void FLEXIO2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
337 void WDOG1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
338 void RTWDOG_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
339 void EWM_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
340 void CCM_1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
341 void CCM_2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
342 void GPC_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
343 void SRC_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
344 void Reserved115_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
345 void GPT1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
346 void GPT2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
347 void PWM1_0_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
348 void PWM1_1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
349 void PWM1_2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
350 void PWM1_3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
351 void PWM1_FAULT_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
352 void FLEXSPI2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
353 void FLEXSPI_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
354 void SEMC_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
355 void USDHC1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
356 void USDHC2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
357 void USB_OTG2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
358 void USB_OTG1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
359 void ENET_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
360 void ENET_1588_Timer_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
361 void XBAR1_IRQ_0_1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
362 void XBAR1_IRQ_2_3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
363 void ADC_ETC_IRQ0_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
364 void ADC_ETC_IRQ1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
365 void ADC_ETC_IRQ2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
366 void ADC_ETC_ERROR_IRQ_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
367 void PIT_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
368 void ACMP1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
369 void ACMP2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
370 void ACMP3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
371 void ACMP4_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
372 void Reserved143_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
373 void Reserved144_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
374 void ENC1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
375 void ENC2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
376 void ENC3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
377 void ENC4_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
378 void TMR1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
379 void TMR2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
380 void TMR3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
381 void TMR4_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
382 void PWM2_0_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
383 void PWM2_1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
384 void PWM2_2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
385 void PWM2_3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
386 void PWM2_FAULT_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
387 void PWM3_0_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
388 void PWM3_1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
389 void PWM3_2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
390 void PWM3_3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
391 void PWM3_FAULT_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
392 void PWM4_0_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
393 void PWM4_1_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
394 void PWM4_2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
395 void PWM4_3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
396 void PWM4_FAULT_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
397 void ENET2_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
398 void ENET2_1588_Timer_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
399 void CAN3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
400 void Reserved171_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
401 void FLEXIO3_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
402 void GPIO6_7_8_9_DriverIRQHandler(void) ALIAS(IntDefaultHandler);
403 
404 //*****************************************************************************
405 // The entry point for the application.
406 // __main() is the entry point for Redlib based applications
407 // main() is the entry point for Newlib based applications
408 //*****************************************************************************
409 #if defined (__REDLIB__)
410 extern void __main(void);
411 #endif
412 extern int main(void);
413 
414 //*****************************************************************************
415 // External declaration for the pointer to the stack top from the Linker Script
416 //*****************************************************************************
417 extern void _vStackTop(void);
418 //*****************************************************************************
419 #if defined (__cplusplus)
420 } // extern "C"
421 #endif
422 //*****************************************************************************
423 // The vector table.
424 // This relies on the linker script to place at correct location in memory.
425 //*****************************************************************************
426 
427 extern void (* const g_pfnVectors[])(void);
428 extern void * __Vectors __attribute__ ((alias ("g_pfnVectors")));
429 
430 __attribute__ ((used, section(".isr_vector")))
431 void (* const g_pfnVectors[])(void) = {
432     // Core Level - CM7
433     &_vStackTop,                       // The initial stack pointer
434     ResetISR,                          // The reset handler
435     NMI_Handler,                       // NMI Handler
436     HardFault_Handler,                 // Hard Fault Handler
437     MemManage_Handler,                 // MPU Fault Handler
438     BusFault_Handler,                  // Bus Fault Handler
439     UsageFault_Handler,                // Usage Fault Handler
440     0,                                 // Reserved
441     0,                                 // Reserved
442     0,                                 // Reserved
443     0,                                 // Reserved
444     SVC_Handler,                       // SVCall Handler
445     DebugMon_Handler,                  // Debug Monitor Handler
446     0,                                 // Reserved
447     PendSV_Handler,                    // PendSV Handler
448     SysTick_Handler,                   // SysTick Handler
449 
450     // Chip Level - MIMXRT1061
451     DMA0_DMA16_IRQHandler,            // 16 : DMA channel 0/16 transfer complete
452     DMA1_DMA17_IRQHandler,            // 17 : DMA channel 1/17 transfer complete
453     DMA2_DMA18_IRQHandler,            // 18 : DMA channel 2/18 transfer complete
454     DMA3_DMA19_IRQHandler,            // 19 : DMA channel 3/19 transfer complete
455     DMA4_DMA20_IRQHandler,            // 20 : DMA channel 4/20 transfer complete
456     DMA5_DMA21_IRQHandler,            // 21 : DMA channel 5/21 transfer complete
457     DMA6_DMA22_IRQHandler,            // 22 : DMA channel 6/22 transfer complete
458     DMA7_DMA23_IRQHandler,            // 23 : DMA channel 7/23 transfer complete
459     DMA8_DMA24_IRQHandler,            // 24 : DMA channel 8/24 transfer complete
460     DMA9_DMA25_IRQHandler,            // 25 : DMA channel 9/25 transfer complete
461     DMA10_DMA26_IRQHandler,           // 26 : DMA channel 10/26 transfer complete
462     DMA11_DMA27_IRQHandler,           // 27 : DMA channel 11/27 transfer complete
463     DMA12_DMA28_IRQHandler,           // 28 : DMA channel 12/28 transfer complete
464     DMA13_DMA29_IRQHandler,           // 29 : DMA channel 13/29 transfer complete
465     DMA14_DMA30_IRQHandler,           // 30 : DMA channel 14/30 transfer complete
466     DMA15_DMA31_IRQHandler,           // 31 : DMA channel 15/31 transfer complete
467     DMA_ERROR_IRQHandler,             // 32 : DMA error interrupt channels 0-15 / 16-31
468     CTI0_ERROR_IRQHandler,            // 33 : CTI0_Error
469     CTI1_ERROR_IRQHandler,            // 34 : CTI1_Error
470     CORE_IRQHandler,                  // 35 : CorePlatform exception IRQ
471     LPUART1_IRQHandler,               // 36 : LPUART1 TX interrupt and RX interrupt
472     LPUART2_IRQHandler,               // 37 : LPUART2 TX interrupt and RX interrupt
473     LPUART3_IRQHandler,               // 38 : LPUART3 TX interrupt and RX interrupt
474     LPUART4_IRQHandler,               // 39 : LPUART4 TX interrupt and RX interrupt
475     LPUART5_IRQHandler,               // 40 : LPUART5 TX interrupt and RX interrupt
476     LPUART6_IRQHandler,               // 41 : LPUART6 TX interrupt and RX interrupt
477     LPUART7_IRQHandler,               // 42 : LPUART7 TX interrupt and RX interrupt
478     LPUART8_IRQHandler,               // 43 : LPUART8 TX interrupt and RX interrupt
479     LPI2C1_IRQHandler,                // 44 : LPI2C1 interrupt
480     LPI2C2_IRQHandler,                // 45 : LPI2C2 interrupt
481     LPI2C3_IRQHandler,                // 46 : LPI2C3 interrupt
482     LPI2C4_IRQHandler,                // 47 : LPI2C4 interrupt
483     LPSPI1_IRQHandler,                // 48 : LPSPI1 single interrupt vector for all sources
484     LPSPI2_IRQHandler,                // 49 : LPSPI2 single interrupt vector for all sources
485     LPSPI3_IRQHandler,                // 50 : LPSPI3 single interrupt vector for all sources
486     LPSPI4_IRQHandler,                // 51 : LPSPI4  single interrupt vector for all sources
487     CAN1_IRQHandler,                  // 52 : CAN1 interrupt
488     CAN2_IRQHandler,                  // 53 : CAN2 interrupt
489     FLEXRAM_IRQHandler,               // 54 : FlexRAM address out of range Or access hit IRQ
490     KPP_IRQHandler,                   // 55 : Keypad nterrupt
491     TSC_DIG_IRQHandler,               // 56 : TSC interrupt
492     GPR_IRQ_IRQHandler,               // 57 : GPR interrupt
493     Reserved58_IRQHandler,            // 58 : Reserved interrupt
494     Reserved59_IRQHandler,            // 59 : Reserved interrupt
495     Reserved60_IRQHandler,            // 60 : Reserved interrupt
496     WDOG2_IRQHandler,                 // 61 : WDOG2 interrupt
497     SNVS_HP_WRAPPER_IRQHandler,       // 62 : SRTC Consolidated Interrupt. Non TZ
498     SNVS_HP_WRAPPER_TZ_IRQHandler,    // 63 : SRTC Security Interrupt. TZ
499     SNVS_LP_WRAPPER_IRQHandler,       // 64 : ON-OFF button press shorter than 5 secs (pulse event)
500     CSU_IRQHandler,                   // 65 : CSU interrupt
501     DCP_IRQHandler,                   // 66 : DCP_IRQ interrupt
502     DCP_VMI_IRQHandler,               // 67 : DCP_VMI_IRQ interrupt
503     Reserved68_IRQHandler,            // 68 : Reserved interrupt
504     TRNG_IRQHandler,                  // 69 : TRNG interrupt
505     SJC_IRQHandler,                   // 70 : SJC interrupt
506     BEE_IRQHandler,                   // 71 : BEE interrupt
507     SAI1_IRQHandler,                  // 72 : SAI1 interrupt
508     SAI2_IRQHandler,                  // 73 : SAI1 interrupt
509     SAI3_RX_IRQHandler,               // 74 : SAI3 interrupt
510     SAI3_TX_IRQHandler,               // 75 : SAI3 interrupt
511     SPDIF_IRQHandler,                 // 76 : SPDIF interrupt
512     PMU_EVENT_IRQHandler,             // 77 : Brown-out event interrupt
513     Reserved78_IRQHandler,            // 78 : Reserved interrupt
514     TEMP_LOW_HIGH_IRQHandler,         // 79 : TempSensor low/high interrupt
515     TEMP_PANIC_IRQHandler,            // 80 : TempSensor panic interrupt
516     USB_PHY1_IRQHandler,              // 81 : USBPHY (UTMI0), Interrupt
517     USB_PHY2_IRQHandler,              // 82 : USBPHY (UTMI1), Interrupt
518     ADC1_IRQHandler,                  // 83 : ADC1 interrupt
519     ADC2_IRQHandler,                  // 84 : ADC2 interrupt
520     DCDC_IRQHandler,                  // 85 : DCDC interrupt
521     Reserved86_IRQHandler,            // 86 : Reserved interrupt
522     GPIO10_Combined_0_31_IRQHandler,  // 87 : Combined interrupt indication for GPIO10 signal 0 throughout 31
523     GPIO1_INT0_IRQHandler,            // 88 : Active HIGH Interrupt from INT0 from GPIO
524     GPIO1_INT1_IRQHandler,            // 89 : Active HIGH Interrupt from INT1 from GPIO
525     GPIO1_INT2_IRQHandler,            // 90 : Active HIGH Interrupt from INT2 from GPIO
526     GPIO1_INT3_IRQHandler,            // 91 : Active HIGH Interrupt from INT3 from GPIO
527     GPIO1_INT4_IRQHandler,            // 92 : Active HIGH Interrupt from INT4 from GPIO
528     GPIO1_INT5_IRQHandler,            // 93 : Active HIGH Interrupt from INT5 from GPIO
529     GPIO1_INT6_IRQHandler,            // 94 : Active HIGH Interrupt from INT6 from GPIO
530     GPIO1_INT7_IRQHandler,            // 95 : Active HIGH Interrupt from INT7 from GPIO
531     GPIO1_Combined_0_15_IRQHandler,   // 96 : Combined interrupt indication for GPIO1 signal 0 throughout 15
532     GPIO1_Combined_16_31_IRQHandler,  // 97 : Combined interrupt indication for GPIO1 signal 16 throughout 31
533     GPIO2_Combined_0_15_IRQHandler,   // 98 : Combined interrupt indication for GPIO2 signal 0 throughout 15
534     GPIO2_Combined_16_31_IRQHandler,  // 99 : Combined interrupt indication for GPIO2 signal 16 throughout 31
535     GPIO3_Combined_0_15_IRQHandler,   // 100: Combined interrupt indication for GPIO3 signal 0 throughout 15
536     GPIO3_Combined_16_31_IRQHandler,  // 101: Combined interrupt indication for GPIO3 signal 16 throughout 31
537     GPIO4_Combined_0_15_IRQHandler,   // 102: Combined interrupt indication for GPIO4 signal 0 throughout 15
538     GPIO4_Combined_16_31_IRQHandler,  // 103: Combined interrupt indication for GPIO4 signal 16 throughout 31
539     GPIO5_Combined_0_15_IRQHandler,   // 104: Combined interrupt indication for GPIO5 signal 0 throughout 15
540     GPIO5_Combined_16_31_IRQHandler,  // 105: Combined interrupt indication for GPIO5 signal 16 throughout 31
541     FLEXIO1_IRQHandler,               // 106: FLEXIO1 interrupt
542     FLEXIO2_IRQHandler,               // 107: FLEXIO2 interrupt
543     WDOG1_IRQHandler,                 // 108: WDOG1 interrupt
544     RTWDOG_IRQHandler,                // 109: RTWDOG interrupt
545     EWM_IRQHandler,                   // 110: EWM interrupt
546     CCM_1_IRQHandler,                 // 111: CCM IRQ1 interrupt
547     CCM_2_IRQHandler,                 // 112: CCM IRQ2 interrupt
548     GPC_IRQHandler,                   // 113: GPC interrupt
549     SRC_IRQHandler,                   // 114: SRC interrupt
550     Reserved115_IRQHandler,           // 115: Reserved interrupt
551     GPT1_IRQHandler,                  // 116: GPT1 interrupt
552     GPT2_IRQHandler,                  // 117: GPT2 interrupt
553     PWM1_0_IRQHandler,                // 118: PWM1 capture 0, compare 0, or reload 0 interrupt
554     PWM1_1_IRQHandler,                // 119: PWM1 capture 1, compare 1, or reload 0 interrupt
555     PWM1_2_IRQHandler,                // 120: PWM1 capture 2, compare 2, or reload 0 interrupt
556     PWM1_3_IRQHandler,                // 121: PWM1 capture 3, compare 3, or reload 0 interrupt
557     PWM1_FAULT_IRQHandler,            // 122: PWM1 fault or reload error interrupt
558     FLEXSPI2_IRQHandler,              // 123: FlexSPI2 interrupt
559     FLEXSPI_IRQHandler,               // 124: FlexSPI0 interrupt
560     SEMC_IRQHandler,                  // 125: SEMC interrupt
561     USDHC1_IRQHandler,                // 126: USDHC1 interrupt
562     USDHC2_IRQHandler,                // 127: USDHC2 interrupt
563     USB_OTG2_IRQHandler,              // 128: USBO2 USB OTG2
564     USB_OTG1_IRQHandler,              // 129: USBO2 USB OTG1
565     ENET_IRQHandler,                  // 130: ENET interrupt
566     ENET_1588_Timer_IRQHandler,       // 131: ENET_1588_Timer interrupt
567     XBAR1_IRQ_0_1_IRQHandler,         // 132: XBARA1 output signal 0, 1 interrupt
568     XBAR1_IRQ_2_3_IRQHandler,         // 133: XBARA1 output signal 2, 3 interrupt
569     ADC_ETC_IRQ0_IRQHandler,          // 134: ADCETC IRQ0 interrupt
570     ADC_ETC_IRQ1_IRQHandler,          // 135: ADCETC IRQ1 interrupt
571     ADC_ETC_IRQ2_IRQHandler,          // 136: ADCETC IRQ2 interrupt
572     ADC_ETC_ERROR_IRQ_IRQHandler,     // 137: ADCETC Error IRQ interrupt
573     PIT_IRQHandler,                   // 138: PIT interrupt
574     ACMP1_IRQHandler,                 // 139: ACMP interrupt
575     ACMP2_IRQHandler,                 // 140: ACMP interrupt
576     ACMP3_IRQHandler,                 // 141: ACMP interrupt
577     ACMP4_IRQHandler,                 // 142: ACMP interrupt
578     Reserved143_IRQHandler,           // 143: Reserved interrupt
579     Reserved144_IRQHandler,           // 144: Reserved interrupt
580     ENC1_IRQHandler,                  // 145: ENC1 interrupt
581     ENC2_IRQHandler,                  // 146: ENC2 interrupt
582     ENC3_IRQHandler,                  // 147: ENC3 interrupt
583     ENC4_IRQHandler,                  // 148: ENC4 interrupt
584     TMR1_IRQHandler,                  // 149: TMR1 interrupt
585     TMR2_IRQHandler,                  // 150: TMR2 interrupt
586     TMR3_IRQHandler,                  // 151: TMR3 interrupt
587     TMR4_IRQHandler,                  // 152: TMR4 interrupt
588     PWM2_0_IRQHandler,                // 153: PWM2 capture 0, compare 0, or reload 0 interrupt
589     PWM2_1_IRQHandler,                // 154: PWM2 capture 1, compare 1, or reload 0 interrupt
590     PWM2_2_IRQHandler,                // 155: PWM2 capture 2, compare 2, or reload 0 interrupt
591     PWM2_3_IRQHandler,                // 156: PWM2 capture 3, compare 3, or reload 0 interrupt
592     PWM2_FAULT_IRQHandler,            // 157: PWM2 fault or reload error interrupt
593     PWM3_0_IRQHandler,                // 158: PWM3 capture 0, compare 0, or reload 0 interrupt
594     PWM3_1_IRQHandler,                // 159: PWM3 capture 1, compare 1, or reload 0 interrupt
595     PWM3_2_IRQHandler,                // 160: PWM3 capture 2, compare 2, or reload 0 interrupt
596     PWM3_3_IRQHandler,                // 161: PWM3 capture 3, compare 3, or reload 0 interrupt
597     PWM3_FAULT_IRQHandler,            // 162: PWM3 fault or reload error interrupt
598     PWM4_0_IRQHandler,                // 163: PWM4 capture 0, compare 0, or reload 0 interrupt
599     PWM4_1_IRQHandler,                // 164: PWM4 capture 1, compare 1, or reload 0 interrupt
600     PWM4_2_IRQHandler,                // 165: PWM4 capture 2, compare 2, or reload 0 interrupt
601     PWM4_3_IRQHandler,                // 166: PWM4 capture 3, compare 3, or reload 0 interrupt
602     PWM4_FAULT_IRQHandler,            // 167: PWM4 fault or reload error interrupt
603     ENET2_IRQHandler,                 // 168: ENET2 interrupt
604     ENET2_1588_Timer_IRQHandler,      // 169: ENET2_1588_Timer interrupt
605     CAN3_IRQHandler,                  // 170: CAN3 interrupt
606     Reserved171_IRQHandler,           // 171: Reserved interrupt
607     FLEXIO3_IRQHandler,               // 172: FLEXIO3 interrupt
608     GPIO6_7_8_9_IRQHandler,           // 173: GPIO6, GPIO7, GPIO8, GPIO9 interrupt
609 }; /* End of g_pfnVectors */
610 
611 //*****************************************************************************
612 // Functions to carry out the initialization of RW and BSS data sections. These
613 // are written as separate functions rather than being inlined within the
614 // ResetISR() function in order to cope with MCUs with multiple banks of
615 // memory.
616 //*****************************************************************************
617 __attribute__ ((section(".after_vectors.init_data")))
data_init(unsigned int romstart,unsigned int start,unsigned int len)618 void data_init(unsigned int romstart, unsigned int start, unsigned int len) {
619     unsigned int *pulDest = (unsigned int*) start;
620     unsigned int *pulSrc = (unsigned int*) romstart;
621     unsigned int loop;
622     for (loop = 0; loop < len; loop = loop + 4)
623         *pulDest++ = *pulSrc++;
624 }
625 
626 __attribute__ ((section(".after_vectors.init_bss")))
bss_init(unsigned int start,unsigned int len)627 void bss_init(unsigned int start, unsigned int len) {
628     unsigned int *pulDest = (unsigned int*) start;
629     unsigned int loop;
630     for (loop = 0; loop < len; loop = loop + 4)
631         *pulDest++ = 0;
632 }
633 
634 //*****************************************************************************
635 // The following symbols are constructs generated by the linker, indicating
636 // the location of various points in the "Global Section Table". This table is
637 // created by the linker via the Code Red managed linker script mechanism. It
638 // contains the load address, execution address and length of each RW data
639 // section and the execution and length of each BSS (zero initialized) section.
640 //*****************************************************************************
641 extern unsigned int __data_section_table;
642 extern unsigned int __data_section_table_end;
643 extern unsigned int __bss_section_table;
644 extern unsigned int __bss_section_table_end;
645 
646 //*****************************************************************************
647 // Reset entry point for your code.
648 // Sets up a simple runtime environment and initializes the C/C++
649 // library.
650 //*****************************************************************************
651 __attribute__ ((naked, section(".after_vectors.reset")))
ResetISR(void)652 void ResetISR(void) {
653     // Disable interrupts
654     __asm volatile ("cpsid i");
655     __asm volatile ("MSR MSP, %0" : : "r" (&_vStackTop) : );
656 
657 #if defined (__USE_CMSIS)
658 // If __USE_CMSIS defined, then call CMSIS SystemInit code
659     SystemInit();
660 #else
661     // Disable Watchdog
662     volatile unsigned int *WDOG1_WCR = (unsigned int *) 0x400B8000;
663     *WDOG1_WCR = *WDOG1_WCR & ~(1 << 2);
664     volatile unsigned int *WDOG2_WCR = (unsigned int *) 0x400D0000;
665     *WDOG2_WCR = *WDOG2_WCR & ~(1 << 2);
666     // Write watchdog update key to unlock
667     *((volatile unsigned int *)0x400BC004) = 0xD928C520;
668     // Set timeout value
669     *((volatile unsigned int *)0x400BC008) = 0xFFFF;
670     // Now disable watchdog via control register
671     volatile unsigned int *RTWDOG_CS = (unsigned int *) 0x400BC000;
672     *RTWDOG_CS = (*RTWDOG_CS & ~(1 << 7)) | (1 << 5);
673 
674 #endif // (__USE_CMSIS)
675 
676     //
677     // Copy the data sections from flash to SRAM.
678     //
679     unsigned int LoadAddr, ExeAddr, SectionLen;
680     unsigned int *SectionTableAddr;
681 
682     // Load base address of Global Section Table
683     SectionTableAddr = &__data_section_table;
684 
685     // Copy the data sections from flash to SRAM.
686     while (SectionTableAddr < &__data_section_table_end) {
687         LoadAddr = *SectionTableAddr++;
688         ExeAddr = *SectionTableAddr++;
689         SectionLen = *SectionTableAddr++;
690         data_init(LoadAddr, ExeAddr, SectionLen);
691     }
692 
693     // At this point, SectionTableAddr = &__bss_section_table;
694     // Zero fill the bss segment
695     while (SectionTableAddr < &__bss_section_table_end) {
696         ExeAddr = *SectionTableAddr++;
697         SectionLen = *SectionTableAddr++;
698         bss_init(ExeAddr, SectionLen);
699     }
700 
701 #if !defined (__USE_CMSIS)
702 // Assume that if __USE_CMSIS defined, then CMSIS SystemInit code
703 // will setup the VTOR register
704 
705     // Check to see if we are running the code from a non-zero
706     // address (eg RAM, external flash), in which case we need
707     // to modify the VTOR register to tell the CPU that the
708     // vector table is located at a non-0x0 address.
709     unsigned int * pSCB_VTOR = (unsigned int *) 0xE000ED08;
710     if ((unsigned int *)g_pfnVectors!=(unsigned int *) 0x00000000) {
711         *pSCB_VTOR = (unsigned int)g_pfnVectors;
712     }
713 #endif // (__USE_CMSIS)
714 #if defined (__cplusplus)
715     //
716     // Call C++ library initialisation
717     //
718     __libc_init_array();
719 #endif
720 
721     // Reenable interrupts
722     __asm volatile ("cpsie i");
723 
724 #if defined (__REDLIB__)
725     // Call the Redlib library, which in turn calls main()
726     __main();
727 #else
728     main();
729 #endif
730 
731     //
732     // main() shouldn't return, but if it does, we'll just enter an infinite loop
733     //
734     while (1) {
735         ;
736     }
737 }
738 
739 //*****************************************************************************
740 // Default core exception handlers. Override the ones here by defining your own
741 // handler routines in your application code.
742 //*****************************************************************************
NMI_Handler(void)743 WEAK_AV void NMI_Handler(void)
744 { while(1) {}
745 }
746 
HardFault_Handler(void)747 WEAK_AV void HardFault_Handler(void)
748 { while(1) {}
749 }
750 
MemManage_Handler(void)751 WEAK_AV void MemManage_Handler(void)
752 { while(1) {}
753 }
754 
BusFault_Handler(void)755 WEAK_AV void BusFault_Handler(void)
756 { while(1) {}
757 }
758 
UsageFault_Handler(void)759 WEAK_AV void UsageFault_Handler(void)
760 { while(1) {}
761 }
762 
SVC_Handler(void)763 WEAK_AV void SVC_Handler(void)
764 { while(1) {}
765 }
766 
DebugMon_Handler(void)767 WEAK_AV void DebugMon_Handler(void)
768 { while(1) {}
769 }
770 
PendSV_Handler(void)771 WEAK_AV void PendSV_Handler(void)
772 { while(1) {}
773 }
774 
SysTick_Handler(void)775 WEAK_AV void SysTick_Handler(void)
776 { while(1) {}
777 }
778 
779 //*****************************************************************************
780 // Processor ends up here if an unexpected interrupt occurs or a specific
781 // handler is not present in the application code.
782 //*****************************************************************************
IntDefaultHandler(void)783 WEAK_AV void IntDefaultHandler(void)
784 { while(1) {}
785 }
786 
787 //*****************************************************************************
788 // Default application exception handlers. Override the ones here by defining
789 // your own handler routines in your application code. These routines call
790 // driver exception handlers or IntDefaultHandler() if no driver exception
791 // handler is included.
792 //*****************************************************************************
DMA0_DMA16_IRQHandler(void)793 WEAK void DMA0_DMA16_IRQHandler(void)
794 {   DMA0_DMA16_DriverIRQHandler();
795 }
796 
DMA1_DMA17_IRQHandler(void)797 WEAK void DMA1_DMA17_IRQHandler(void)
798 {   DMA1_DMA17_DriverIRQHandler();
799 }
800 
DMA2_DMA18_IRQHandler(void)801 WEAK void DMA2_DMA18_IRQHandler(void)
802 {   DMA2_DMA18_DriverIRQHandler();
803 }
804 
DMA3_DMA19_IRQHandler(void)805 WEAK void DMA3_DMA19_IRQHandler(void)
806 {   DMA3_DMA19_DriverIRQHandler();
807 }
808 
DMA4_DMA20_IRQHandler(void)809 WEAK void DMA4_DMA20_IRQHandler(void)
810 {   DMA4_DMA20_DriverIRQHandler();
811 }
812 
DMA5_DMA21_IRQHandler(void)813 WEAK void DMA5_DMA21_IRQHandler(void)
814 {   DMA5_DMA21_DriverIRQHandler();
815 }
816 
DMA6_DMA22_IRQHandler(void)817 WEAK void DMA6_DMA22_IRQHandler(void)
818 {   DMA6_DMA22_DriverIRQHandler();
819 }
820 
DMA7_DMA23_IRQHandler(void)821 WEAK void DMA7_DMA23_IRQHandler(void)
822 {   DMA7_DMA23_DriverIRQHandler();
823 }
824 
DMA8_DMA24_IRQHandler(void)825 WEAK void DMA8_DMA24_IRQHandler(void)
826 {   DMA8_DMA24_DriverIRQHandler();
827 }
828 
DMA9_DMA25_IRQHandler(void)829 WEAK void DMA9_DMA25_IRQHandler(void)
830 {   DMA9_DMA25_DriverIRQHandler();
831 }
832 
DMA10_DMA26_IRQHandler(void)833 WEAK void DMA10_DMA26_IRQHandler(void)
834 {   DMA10_DMA26_DriverIRQHandler();
835 }
836 
DMA11_DMA27_IRQHandler(void)837 WEAK void DMA11_DMA27_IRQHandler(void)
838 {   DMA11_DMA27_DriverIRQHandler();
839 }
840 
DMA12_DMA28_IRQHandler(void)841 WEAK void DMA12_DMA28_IRQHandler(void)
842 {   DMA12_DMA28_DriverIRQHandler();
843 }
844 
DMA13_DMA29_IRQHandler(void)845 WEAK void DMA13_DMA29_IRQHandler(void)
846 {   DMA13_DMA29_DriverIRQHandler();
847 }
848 
DMA14_DMA30_IRQHandler(void)849 WEAK void DMA14_DMA30_IRQHandler(void)
850 {   DMA14_DMA30_DriverIRQHandler();
851 }
852 
DMA15_DMA31_IRQHandler(void)853 WEAK void DMA15_DMA31_IRQHandler(void)
854 {   DMA15_DMA31_DriverIRQHandler();
855 }
856 
DMA_ERROR_IRQHandler(void)857 WEAK void DMA_ERROR_IRQHandler(void)
858 {   DMA_ERROR_DriverIRQHandler();
859 }
860 
CTI0_ERROR_IRQHandler(void)861 WEAK void CTI0_ERROR_IRQHandler(void)
862 {   CTI0_ERROR_DriverIRQHandler();
863 }
864 
CTI1_ERROR_IRQHandler(void)865 WEAK void CTI1_ERROR_IRQHandler(void)
866 {   CTI1_ERROR_DriverIRQHandler();
867 }
868 
CORE_IRQHandler(void)869 WEAK void CORE_IRQHandler(void)
870 {   CORE_DriverIRQHandler();
871 }
872 
LPUART1_IRQHandler(void)873 WEAK void LPUART1_IRQHandler(void)
874 {   LPUART1_DriverIRQHandler();
875 }
876 
LPUART2_IRQHandler(void)877 WEAK void LPUART2_IRQHandler(void)
878 {   LPUART2_DriverIRQHandler();
879 }
880 
LPUART3_IRQHandler(void)881 WEAK void LPUART3_IRQHandler(void)
882 {   LPUART3_DriverIRQHandler();
883 }
884 
LPUART4_IRQHandler(void)885 WEAK void LPUART4_IRQHandler(void)
886 {   LPUART4_DriverIRQHandler();
887 }
888 
LPUART5_IRQHandler(void)889 WEAK void LPUART5_IRQHandler(void)
890 {   LPUART5_DriverIRQHandler();
891 }
892 
LPUART6_IRQHandler(void)893 WEAK void LPUART6_IRQHandler(void)
894 {   LPUART6_DriverIRQHandler();
895 }
896 
LPUART7_IRQHandler(void)897 WEAK void LPUART7_IRQHandler(void)
898 {   LPUART7_DriverIRQHandler();
899 }
900 
LPUART8_IRQHandler(void)901 WEAK void LPUART8_IRQHandler(void)
902 {   LPUART8_DriverIRQHandler();
903 }
904 
LPI2C1_IRQHandler(void)905 WEAK void LPI2C1_IRQHandler(void)
906 {   LPI2C1_DriverIRQHandler();
907 }
908 
LPI2C2_IRQHandler(void)909 WEAK void LPI2C2_IRQHandler(void)
910 {   LPI2C2_DriverIRQHandler();
911 }
912 
LPI2C3_IRQHandler(void)913 WEAK void LPI2C3_IRQHandler(void)
914 {   LPI2C3_DriverIRQHandler();
915 }
916 
LPI2C4_IRQHandler(void)917 WEAK void LPI2C4_IRQHandler(void)
918 {   LPI2C4_DriverIRQHandler();
919 }
920 
LPSPI1_IRQHandler(void)921 WEAK void LPSPI1_IRQHandler(void)
922 {   LPSPI1_DriverIRQHandler();
923 }
924 
LPSPI2_IRQHandler(void)925 WEAK void LPSPI2_IRQHandler(void)
926 {   LPSPI2_DriverIRQHandler();
927 }
928 
LPSPI3_IRQHandler(void)929 WEAK void LPSPI3_IRQHandler(void)
930 {   LPSPI3_DriverIRQHandler();
931 }
932 
LPSPI4_IRQHandler(void)933 WEAK void LPSPI4_IRQHandler(void)
934 {   LPSPI4_DriverIRQHandler();
935 }
936 
CAN1_IRQHandler(void)937 WEAK void CAN1_IRQHandler(void)
938 {   CAN1_DriverIRQHandler();
939 }
940 
CAN2_IRQHandler(void)941 WEAK void CAN2_IRQHandler(void)
942 {   CAN2_DriverIRQHandler();
943 }
944 
FLEXRAM_IRQHandler(void)945 WEAK void FLEXRAM_IRQHandler(void)
946 {   FLEXRAM_DriverIRQHandler();
947 }
948 
KPP_IRQHandler(void)949 WEAK void KPP_IRQHandler(void)
950 {   KPP_DriverIRQHandler();
951 }
952 
TSC_DIG_IRQHandler(void)953 WEAK void TSC_DIG_IRQHandler(void)
954 {   TSC_DIG_DriverIRQHandler();
955 }
956 
GPR_IRQ_IRQHandler(void)957 WEAK void GPR_IRQ_IRQHandler(void)
958 {   GPR_IRQ_DriverIRQHandler();
959 }
960 
Reserved58_IRQHandler(void)961 WEAK void Reserved58_IRQHandler(void)
962 {   Reserved58_DriverIRQHandler();
963 }
964 
Reserved59_IRQHandler(void)965 WEAK void Reserved59_IRQHandler(void)
966 {   Reserved59_DriverIRQHandler();
967 }
968 
Reserved60_IRQHandler(void)969 WEAK void Reserved60_IRQHandler(void)
970 {   Reserved60_DriverIRQHandler();
971 }
972 
WDOG2_IRQHandler(void)973 WEAK void WDOG2_IRQHandler(void)
974 {   WDOG2_DriverIRQHandler();
975 }
976 
SNVS_HP_WRAPPER_IRQHandler(void)977 WEAK void SNVS_HP_WRAPPER_IRQHandler(void)
978 {   SNVS_HP_WRAPPER_DriverIRQHandler();
979 }
980 
SNVS_HP_WRAPPER_TZ_IRQHandler(void)981 WEAK void SNVS_HP_WRAPPER_TZ_IRQHandler(void)
982 {   SNVS_HP_WRAPPER_TZ_DriverIRQHandler();
983 }
984 
SNVS_LP_WRAPPER_IRQHandler(void)985 WEAK void SNVS_LP_WRAPPER_IRQHandler(void)
986 {   SNVS_LP_WRAPPER_DriverIRQHandler();
987 }
988 
CSU_IRQHandler(void)989 WEAK void CSU_IRQHandler(void)
990 {   CSU_DriverIRQHandler();
991 }
992 
DCP_IRQHandler(void)993 WEAK void DCP_IRQHandler(void)
994 {   DCP_DriverIRQHandler();
995 }
996 
DCP_VMI_IRQHandler(void)997 WEAK void DCP_VMI_IRQHandler(void)
998 {   DCP_VMI_DriverIRQHandler();
999 }
1000 
Reserved68_IRQHandler(void)1001 WEAK void Reserved68_IRQHandler(void)
1002 {   Reserved68_DriverIRQHandler();
1003 }
1004 
TRNG_IRQHandler(void)1005 WEAK void TRNG_IRQHandler(void)
1006 {   TRNG_DriverIRQHandler();
1007 }
1008 
SJC_IRQHandler(void)1009 WEAK void SJC_IRQHandler(void)
1010 {   SJC_DriverIRQHandler();
1011 }
1012 
BEE_IRQHandler(void)1013 WEAK void BEE_IRQHandler(void)
1014 {   BEE_DriverIRQHandler();
1015 }
1016 
SAI1_IRQHandler(void)1017 WEAK void SAI1_IRQHandler(void)
1018 {   SAI1_DriverIRQHandler();
1019 }
1020 
SAI2_IRQHandler(void)1021 WEAK void SAI2_IRQHandler(void)
1022 {   SAI2_DriverIRQHandler();
1023 }
1024 
SAI3_RX_IRQHandler(void)1025 WEAK void SAI3_RX_IRQHandler(void)
1026 {   SAI3_RX_DriverIRQHandler();
1027 }
1028 
SAI3_TX_IRQHandler(void)1029 WEAK void SAI3_TX_IRQHandler(void)
1030 {   SAI3_TX_DriverIRQHandler();
1031 }
1032 
SPDIF_IRQHandler(void)1033 WEAK void SPDIF_IRQHandler(void)
1034 {   SPDIF_DriverIRQHandler();
1035 }
1036 
PMU_EVENT_IRQHandler(void)1037 WEAK void PMU_EVENT_IRQHandler(void)
1038 {   PMU_EVENT_DriverIRQHandler();
1039 }
1040 
Reserved78_IRQHandler(void)1041 WEAK void Reserved78_IRQHandler(void)
1042 {   Reserved78_DriverIRQHandler();
1043 }
1044 
TEMP_LOW_HIGH_IRQHandler(void)1045 WEAK void TEMP_LOW_HIGH_IRQHandler(void)
1046 {   TEMP_LOW_HIGH_DriverIRQHandler();
1047 }
1048 
TEMP_PANIC_IRQHandler(void)1049 WEAK void TEMP_PANIC_IRQHandler(void)
1050 {   TEMP_PANIC_DriverIRQHandler();
1051 }
1052 
USB_PHY1_IRQHandler(void)1053 WEAK void USB_PHY1_IRQHandler(void)
1054 {   USB_PHY1_DriverIRQHandler();
1055 }
1056 
USB_PHY2_IRQHandler(void)1057 WEAK void USB_PHY2_IRQHandler(void)
1058 {   USB_PHY2_DriverIRQHandler();
1059 }
1060 
ADC1_IRQHandler(void)1061 WEAK void ADC1_IRQHandler(void)
1062 {   ADC1_DriverIRQHandler();
1063 }
1064 
ADC2_IRQHandler(void)1065 WEAK void ADC2_IRQHandler(void)
1066 {   ADC2_DriverIRQHandler();
1067 }
1068 
DCDC_IRQHandler(void)1069 WEAK void DCDC_IRQHandler(void)
1070 {   DCDC_DriverIRQHandler();
1071 }
1072 
Reserved86_IRQHandler(void)1073 WEAK void Reserved86_IRQHandler(void)
1074 {   Reserved86_DriverIRQHandler();
1075 }
1076 
GPIO10_Combined_0_31_IRQHandler(void)1077 WEAK void GPIO10_Combined_0_31_IRQHandler(void)
1078 {   GPIO10_Combined_0_31_DriverIRQHandler();
1079 }
1080 
GPIO1_INT0_IRQHandler(void)1081 WEAK void GPIO1_INT0_IRQHandler(void)
1082 {   GPIO1_INT0_DriverIRQHandler();
1083 }
1084 
GPIO1_INT1_IRQHandler(void)1085 WEAK void GPIO1_INT1_IRQHandler(void)
1086 {   GPIO1_INT1_DriverIRQHandler();
1087 }
1088 
GPIO1_INT2_IRQHandler(void)1089 WEAK void GPIO1_INT2_IRQHandler(void)
1090 {   GPIO1_INT2_DriverIRQHandler();
1091 }
1092 
GPIO1_INT3_IRQHandler(void)1093 WEAK void GPIO1_INT3_IRQHandler(void)
1094 {   GPIO1_INT3_DriverIRQHandler();
1095 }
1096 
GPIO1_INT4_IRQHandler(void)1097 WEAK void GPIO1_INT4_IRQHandler(void)
1098 {   GPIO1_INT4_DriverIRQHandler();
1099 }
1100 
GPIO1_INT5_IRQHandler(void)1101 WEAK void GPIO1_INT5_IRQHandler(void)
1102 {   GPIO1_INT5_DriverIRQHandler();
1103 }
1104 
GPIO1_INT6_IRQHandler(void)1105 WEAK void GPIO1_INT6_IRQHandler(void)
1106 {   GPIO1_INT6_DriverIRQHandler();
1107 }
1108 
GPIO1_INT7_IRQHandler(void)1109 WEAK void GPIO1_INT7_IRQHandler(void)
1110 {   GPIO1_INT7_DriverIRQHandler();
1111 }
1112 
GPIO1_Combined_0_15_IRQHandler(void)1113 WEAK void GPIO1_Combined_0_15_IRQHandler(void)
1114 {   GPIO1_Combined_0_15_DriverIRQHandler();
1115 }
1116 
GPIO1_Combined_16_31_IRQHandler(void)1117 WEAK void GPIO1_Combined_16_31_IRQHandler(void)
1118 {   GPIO1_Combined_16_31_DriverIRQHandler();
1119 }
1120 
GPIO2_Combined_0_15_IRQHandler(void)1121 WEAK void GPIO2_Combined_0_15_IRQHandler(void)
1122 {   GPIO2_Combined_0_15_DriverIRQHandler();
1123 }
1124 
GPIO2_Combined_16_31_IRQHandler(void)1125 WEAK void GPIO2_Combined_16_31_IRQHandler(void)
1126 {   GPIO2_Combined_16_31_DriverIRQHandler();
1127 }
1128 
GPIO3_Combined_0_15_IRQHandler(void)1129 WEAK void GPIO3_Combined_0_15_IRQHandler(void)
1130 {   GPIO3_Combined_0_15_DriverIRQHandler();
1131 }
1132 
GPIO3_Combined_16_31_IRQHandler(void)1133 WEAK void GPIO3_Combined_16_31_IRQHandler(void)
1134 {   GPIO3_Combined_16_31_DriverIRQHandler();
1135 }
1136 
GPIO4_Combined_0_15_IRQHandler(void)1137 WEAK void GPIO4_Combined_0_15_IRQHandler(void)
1138 {   GPIO4_Combined_0_15_DriverIRQHandler();
1139 }
1140 
GPIO4_Combined_16_31_IRQHandler(void)1141 WEAK void GPIO4_Combined_16_31_IRQHandler(void)
1142 {   GPIO4_Combined_16_31_DriverIRQHandler();
1143 }
1144 
GPIO5_Combined_0_15_IRQHandler(void)1145 WEAK void GPIO5_Combined_0_15_IRQHandler(void)
1146 {   GPIO5_Combined_0_15_DriverIRQHandler();
1147 }
1148 
GPIO5_Combined_16_31_IRQHandler(void)1149 WEAK void GPIO5_Combined_16_31_IRQHandler(void)
1150 {   GPIO5_Combined_16_31_DriverIRQHandler();
1151 }
1152 
FLEXIO1_IRQHandler(void)1153 WEAK void FLEXIO1_IRQHandler(void)
1154 {   FLEXIO1_DriverIRQHandler();
1155 }
1156 
FLEXIO2_IRQHandler(void)1157 WEAK void FLEXIO2_IRQHandler(void)
1158 {   FLEXIO2_DriverIRQHandler();
1159 }
1160 
WDOG1_IRQHandler(void)1161 WEAK void WDOG1_IRQHandler(void)
1162 {   WDOG1_DriverIRQHandler();
1163 }
1164 
RTWDOG_IRQHandler(void)1165 WEAK void RTWDOG_IRQHandler(void)
1166 {   RTWDOG_DriverIRQHandler();
1167 }
1168 
EWM_IRQHandler(void)1169 WEAK void EWM_IRQHandler(void)
1170 {   EWM_DriverIRQHandler();
1171 }
1172 
CCM_1_IRQHandler(void)1173 WEAK void CCM_1_IRQHandler(void)
1174 {   CCM_1_DriverIRQHandler();
1175 }
1176 
CCM_2_IRQHandler(void)1177 WEAK void CCM_2_IRQHandler(void)
1178 {   CCM_2_DriverIRQHandler();
1179 }
1180 
GPC_IRQHandler(void)1181 WEAK void GPC_IRQHandler(void)
1182 {   GPC_DriverIRQHandler();
1183 }
1184 
SRC_IRQHandler(void)1185 WEAK void SRC_IRQHandler(void)
1186 {   SRC_DriverIRQHandler();
1187 }
1188 
Reserved115_IRQHandler(void)1189 WEAK void Reserved115_IRQHandler(void)
1190 {   Reserved115_DriverIRQHandler();
1191 }
1192 
GPT1_IRQHandler(void)1193 WEAK void GPT1_IRQHandler(void)
1194 {   GPT1_DriverIRQHandler();
1195 }
1196 
GPT2_IRQHandler(void)1197 WEAK void GPT2_IRQHandler(void)
1198 {   GPT2_DriverIRQHandler();
1199 }
1200 
PWM1_0_IRQHandler(void)1201 WEAK void PWM1_0_IRQHandler(void)
1202 {   PWM1_0_DriverIRQHandler();
1203 }
1204 
PWM1_1_IRQHandler(void)1205 WEAK void PWM1_1_IRQHandler(void)
1206 {   PWM1_1_DriverIRQHandler();
1207 }
1208 
PWM1_2_IRQHandler(void)1209 WEAK void PWM1_2_IRQHandler(void)
1210 {   PWM1_2_DriverIRQHandler();
1211 }
1212 
PWM1_3_IRQHandler(void)1213 WEAK void PWM1_3_IRQHandler(void)
1214 {   PWM1_3_DriverIRQHandler();
1215 }
1216 
PWM1_FAULT_IRQHandler(void)1217 WEAK void PWM1_FAULT_IRQHandler(void)
1218 {   PWM1_FAULT_DriverIRQHandler();
1219 }
1220 
FLEXSPI2_IRQHandler(void)1221 WEAK void FLEXSPI2_IRQHandler(void)
1222 {   FLEXSPI2_DriverIRQHandler();
1223 }
1224 
FLEXSPI_IRQHandler(void)1225 WEAK void FLEXSPI_IRQHandler(void)
1226 {   FLEXSPI_DriverIRQHandler();
1227 }
1228 
SEMC_IRQHandler(void)1229 WEAK void SEMC_IRQHandler(void)
1230 {   SEMC_DriverIRQHandler();
1231 }
1232 
USDHC1_IRQHandler(void)1233 WEAK void USDHC1_IRQHandler(void)
1234 {   USDHC1_DriverIRQHandler();
1235 }
1236 
USDHC2_IRQHandler(void)1237 WEAK void USDHC2_IRQHandler(void)
1238 {   USDHC2_DriverIRQHandler();
1239 }
1240 
USB_OTG2_IRQHandler(void)1241 WEAK void USB_OTG2_IRQHandler(void)
1242 {   USB_OTG2_DriverIRQHandler();
1243 }
1244 
USB_OTG1_IRQHandler(void)1245 WEAK void USB_OTG1_IRQHandler(void)
1246 {   USB_OTG1_DriverIRQHandler();
1247 }
1248 
ENET_IRQHandler(void)1249 WEAK void ENET_IRQHandler(void)
1250 {   ENET_DriverIRQHandler();
1251 }
1252 
ENET_1588_Timer_IRQHandler(void)1253 WEAK void ENET_1588_Timer_IRQHandler(void)
1254 {   ENET_1588_Timer_DriverIRQHandler();
1255 }
1256 
XBAR1_IRQ_0_1_IRQHandler(void)1257 WEAK void XBAR1_IRQ_0_1_IRQHandler(void)
1258 {   XBAR1_IRQ_0_1_DriverIRQHandler();
1259 }
1260 
XBAR1_IRQ_2_3_IRQHandler(void)1261 WEAK void XBAR1_IRQ_2_3_IRQHandler(void)
1262 {   XBAR1_IRQ_2_3_DriverIRQHandler();
1263 }
1264 
ADC_ETC_IRQ0_IRQHandler(void)1265 WEAK void ADC_ETC_IRQ0_IRQHandler(void)
1266 {   ADC_ETC_IRQ0_DriverIRQHandler();
1267 }
1268 
ADC_ETC_IRQ1_IRQHandler(void)1269 WEAK void ADC_ETC_IRQ1_IRQHandler(void)
1270 {   ADC_ETC_IRQ1_DriverIRQHandler();
1271 }
1272 
ADC_ETC_IRQ2_IRQHandler(void)1273 WEAK void ADC_ETC_IRQ2_IRQHandler(void)
1274 {   ADC_ETC_IRQ2_DriverIRQHandler();
1275 }
1276 
ADC_ETC_ERROR_IRQ_IRQHandler(void)1277 WEAK void ADC_ETC_ERROR_IRQ_IRQHandler(void)
1278 {   ADC_ETC_ERROR_IRQ_DriverIRQHandler();
1279 }
1280 
PIT_IRQHandler(void)1281 WEAK void PIT_IRQHandler(void)
1282 {   PIT_DriverIRQHandler();
1283 }
1284 
ACMP1_IRQHandler(void)1285 WEAK void ACMP1_IRQHandler(void)
1286 {   ACMP1_DriverIRQHandler();
1287 }
1288 
ACMP2_IRQHandler(void)1289 WEAK void ACMP2_IRQHandler(void)
1290 {   ACMP2_DriverIRQHandler();
1291 }
1292 
ACMP3_IRQHandler(void)1293 WEAK void ACMP3_IRQHandler(void)
1294 {   ACMP3_DriverIRQHandler();
1295 }
1296 
ACMP4_IRQHandler(void)1297 WEAK void ACMP4_IRQHandler(void)
1298 {   ACMP4_DriverIRQHandler();
1299 }
1300 
Reserved143_IRQHandler(void)1301 WEAK void Reserved143_IRQHandler(void)
1302 {   Reserved143_DriverIRQHandler();
1303 }
1304 
Reserved144_IRQHandler(void)1305 WEAK void Reserved144_IRQHandler(void)
1306 {   Reserved144_DriverIRQHandler();
1307 }
1308 
ENC1_IRQHandler(void)1309 WEAK void ENC1_IRQHandler(void)
1310 {   ENC1_DriverIRQHandler();
1311 }
1312 
ENC2_IRQHandler(void)1313 WEAK void ENC2_IRQHandler(void)
1314 {   ENC2_DriverIRQHandler();
1315 }
1316 
ENC3_IRQHandler(void)1317 WEAK void ENC3_IRQHandler(void)
1318 {   ENC3_DriverIRQHandler();
1319 }
1320 
ENC4_IRQHandler(void)1321 WEAK void ENC4_IRQHandler(void)
1322 {   ENC4_DriverIRQHandler();
1323 }
1324 
TMR1_IRQHandler(void)1325 WEAK void TMR1_IRQHandler(void)
1326 {   TMR1_DriverIRQHandler();
1327 }
1328 
TMR2_IRQHandler(void)1329 WEAK void TMR2_IRQHandler(void)
1330 {   TMR2_DriverIRQHandler();
1331 }
1332 
TMR3_IRQHandler(void)1333 WEAK void TMR3_IRQHandler(void)
1334 {   TMR3_DriverIRQHandler();
1335 }
1336 
TMR4_IRQHandler(void)1337 WEAK void TMR4_IRQHandler(void)
1338 {   TMR4_DriverIRQHandler();
1339 }
1340 
PWM2_0_IRQHandler(void)1341 WEAK void PWM2_0_IRQHandler(void)
1342 {   PWM2_0_DriverIRQHandler();
1343 }
1344 
PWM2_1_IRQHandler(void)1345 WEAK void PWM2_1_IRQHandler(void)
1346 {   PWM2_1_DriverIRQHandler();
1347 }
1348 
PWM2_2_IRQHandler(void)1349 WEAK void PWM2_2_IRQHandler(void)
1350 {   PWM2_2_DriverIRQHandler();
1351 }
1352 
PWM2_3_IRQHandler(void)1353 WEAK void PWM2_3_IRQHandler(void)
1354 {   PWM2_3_DriverIRQHandler();
1355 }
1356 
PWM2_FAULT_IRQHandler(void)1357 WEAK void PWM2_FAULT_IRQHandler(void)
1358 {   PWM2_FAULT_DriverIRQHandler();
1359 }
1360 
PWM3_0_IRQHandler(void)1361 WEAK void PWM3_0_IRQHandler(void)
1362 {   PWM3_0_DriverIRQHandler();
1363 }
1364 
PWM3_1_IRQHandler(void)1365 WEAK void PWM3_1_IRQHandler(void)
1366 {   PWM3_1_DriverIRQHandler();
1367 }
1368 
PWM3_2_IRQHandler(void)1369 WEAK void PWM3_2_IRQHandler(void)
1370 {   PWM3_2_DriverIRQHandler();
1371 }
1372 
PWM3_3_IRQHandler(void)1373 WEAK void PWM3_3_IRQHandler(void)
1374 {   PWM3_3_DriverIRQHandler();
1375 }
1376 
PWM3_FAULT_IRQHandler(void)1377 WEAK void PWM3_FAULT_IRQHandler(void)
1378 {   PWM3_FAULT_DriverIRQHandler();
1379 }
1380 
PWM4_0_IRQHandler(void)1381 WEAK void PWM4_0_IRQHandler(void)
1382 {   PWM4_0_DriverIRQHandler();
1383 }
1384 
PWM4_1_IRQHandler(void)1385 WEAK void PWM4_1_IRQHandler(void)
1386 {   PWM4_1_DriverIRQHandler();
1387 }
1388 
PWM4_2_IRQHandler(void)1389 WEAK void PWM4_2_IRQHandler(void)
1390 {   PWM4_2_DriverIRQHandler();
1391 }
1392 
PWM4_3_IRQHandler(void)1393 WEAK void PWM4_3_IRQHandler(void)
1394 {   PWM4_3_DriverIRQHandler();
1395 }
1396 
PWM4_FAULT_IRQHandler(void)1397 WEAK void PWM4_FAULT_IRQHandler(void)
1398 {   PWM4_FAULT_DriverIRQHandler();
1399 }
1400 
ENET2_IRQHandler(void)1401 WEAK void ENET2_IRQHandler(void)
1402 {   ENET2_DriverIRQHandler();
1403 }
1404 
ENET2_1588_Timer_IRQHandler(void)1405 WEAK void ENET2_1588_Timer_IRQHandler(void)
1406 {   ENET2_1588_Timer_DriverIRQHandler();
1407 }
1408 
CAN3_IRQHandler(void)1409 WEAK void CAN3_IRQHandler(void)
1410 {   CAN3_DriverIRQHandler();
1411 }
1412 
Reserved171_IRQHandler(void)1413 WEAK void Reserved171_IRQHandler(void)
1414 {   Reserved171_DriverIRQHandler();
1415 }
1416 
FLEXIO3_IRQHandler(void)1417 WEAK void FLEXIO3_IRQHandler(void)
1418 {   FLEXIO3_DriverIRQHandler();
1419 }
1420 
GPIO6_7_8_9_IRQHandler(void)1421 WEAK void GPIO6_7_8_9_IRQHandler(void)
1422 {   GPIO6_7_8_9_DriverIRQHandler();
1423 }
1424 
1425 //*****************************************************************************
1426 
1427 #if defined (DEBUG)
1428 #pragma GCC pop_options
1429 #endif // (DEBUG)
1430