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