summaryrefslogtreecommitdiffstats
path: root/bsps/arm/imxrt/mcux-sdk/devices/MIMXRT1166/gcc/startup_MIMXRT1166_cm7.S
diff options
context:
space:
mode:
Diffstat (limited to 'bsps/arm/imxrt/mcux-sdk/devices/MIMXRT1166/gcc/startup_MIMXRT1166_cm7.S')
-rw-r--r--bsps/arm/imxrt/mcux-sdk/devices/MIMXRT1166/gcc/startup_MIMXRT1166_cm7.S1421
1 files changed, 1421 insertions, 0 deletions
diff --git a/bsps/arm/imxrt/mcux-sdk/devices/MIMXRT1166/gcc/startup_MIMXRT1166_cm7.S b/bsps/arm/imxrt/mcux-sdk/devices/MIMXRT1166/gcc/startup_MIMXRT1166_cm7.S
new file mode 100644
index 0000000000..f79ada4384
--- /dev/null
+++ b/bsps/arm/imxrt/mcux-sdk/devices/MIMXRT1166/gcc/startup_MIMXRT1166_cm7.S
@@ -0,0 +1,1421 @@
+/* ------------------------------------------------------------------------- */
+/* @file: startup_MIMXRT1166_cm7.s */
+/* @purpose: CMSIS Cortex-M7 Core Device Startup File */
+/* MIMXRT1166_cm7 */
+/* @version: 0.1 */
+/* @date: 2020-12-29 */
+/* @build: b220909 */
+/* ------------------------------------------------------------------------- */
+/* */
+/* Copyright 1997-2016 Freescale Semiconductor, Inc. */
+/* Copyright 2016-2022 NXP */
+/* All rights reserved. */
+/* */
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*****************************************************************************/
+/* Version: GCC for ARM Embedded Processors */
+/*****************************************************************************/
+ .syntax unified
+ .arch armv7-m
+
+ .section .isr_vector, "a"
+ .align 2
+ .globl __isr_vector
+__isr_vector:
+ .long __StackTop /* Top of Stack */
+ .long Reset_Handler /* Reset Handler */
+ .long NMI_Handler /* NMI Handler*/
+ .long HardFault_Handler /* Hard Fault Handler*/
+ .long MemManage_Handler /* MPU Fault Handler*/
+ .long BusFault_Handler /* Bus Fault Handler*/
+ .long UsageFault_Handler /* Usage Fault Handler*/
+ .long 0 /* Reserved*/
+ .long 0 /* Reserved*/
+ .long 0 /* Reserved*/
+ .long 0 /* Reserved*/
+ .long SVC_Handler /* SVCall Handler*/
+ .long DebugMon_Handler /* Debug Monitor Handler*/
+ .long 0 /* Reserved*/
+ .long PendSV_Handler /* PendSV Handler*/
+ .long SysTick_Handler /* SysTick Handler*/
+
+ /* External Interrupts*/
+ .long DMA0_DMA16_IRQHandler /* DMA channel 0/16 transfer complete*/
+ .long DMA1_DMA17_IRQHandler /* DMA channel 1/17 transfer complete*/
+ .long DMA2_DMA18_IRQHandler /* DMA channel 2/18 transfer complete*/
+ .long DMA3_DMA19_IRQHandler /* DMA channel 3/19 transfer complete*/
+ .long DMA4_DMA20_IRQHandler /* DMA channel 4/20 transfer complete*/
+ .long DMA5_DMA21_IRQHandler /* DMA channel 5/21 transfer complete*/
+ .long DMA6_DMA22_IRQHandler /* DMA channel 6/22 transfer complete*/
+ .long DMA7_DMA23_IRQHandler /* DMA channel 7/23 transfer complete*/
+ .long DMA8_DMA24_IRQHandler /* DMA channel 8/24 transfer complete*/
+ .long DMA9_DMA25_IRQHandler /* DMA channel 9/25 transfer complete*/
+ .long DMA10_DMA26_IRQHandler /* DMA channel 10/26 transfer complete*/
+ .long DMA11_DMA27_IRQHandler /* DMA channel 11/27 transfer complete*/
+ .long DMA12_DMA28_IRQHandler /* DMA channel 12/28 transfer complete*/
+ .long DMA13_DMA29_IRQHandler /* DMA channel 13/29 transfer complete*/
+ .long DMA14_DMA30_IRQHandler /* DMA channel 14/30 transfer complete*/
+ .long DMA15_DMA31_IRQHandler /* DMA channel 15/31 transfer complete*/
+ .long DMA_ERROR_IRQHandler /* DMA error interrupt channels 0-15 / 16-31*/
+ .long CTI_TRIGGER_OUT0_IRQHandler /* CTI_TRIGGER_OUT0*/
+ .long CTI_TRIGGER_OUT1_IRQHandler /* CTI_TRIGGER_OUT1*/
+ .long CORE_IRQHandler /* CorePlatform exception IRQ*/
+ .long LPUART1_IRQHandler /* LPUART1 TX interrupt and RX interrupt*/
+ .long LPUART2_IRQHandler /* LPUART2 TX interrupt and RX interrupt*/
+ .long LPUART3_IRQHandler /* LPUART3 TX interrupt and RX interrupt*/
+ .long LPUART4_IRQHandler /* LPUART4 TX interrupt and RX interrupt*/
+ .long LPUART5_IRQHandler /* LPUART5 TX interrupt and RX interrupt*/
+ .long LPUART6_IRQHandler /* LPUART6 TX interrupt and RX interrupt*/
+ .long LPUART7_IRQHandler /* LPUART7 TX interrupt and RX interrupt*/
+ .long LPUART8_IRQHandler /* LPUART8 TX interrupt and RX interrupt*/
+ .long LPUART9_IRQHandler /* LPUART9 TX interrupt and RX interrupt*/
+ .long LPUART10_IRQHandler /* LPUART10 TX interrupt and RX interrupt*/
+ .long LPUART11_IRQHandler /* LPUART11 TX interrupt and RX interrupt*/
+ .long LPUART12_IRQHandler /* LPUART12 TX interrupt and RX interrupt*/
+ .long LPI2C1_IRQHandler /* LPI2C1 interrupt*/
+ .long LPI2C2_IRQHandler /* LPI2C2 interrupt*/
+ .long LPI2C3_IRQHandler /* LPI2C3 interrupt*/
+ .long LPI2C4_IRQHandler /* LPI2C4 interrupt*/
+ .long LPI2C5_IRQHandler /* LPI2C5 interrupt*/
+ .long LPI2C6_IRQHandler /* LPI2C6 interrupt*/
+ .long LPSPI1_IRQHandler /* LPSPI1 interrupt request line to the core*/
+ .long LPSPI2_IRQHandler /* LPSPI2 interrupt request line to the core*/
+ .long LPSPI3_IRQHandler /* LPSPI3 interrupt request line to the core*/
+ .long LPSPI4_IRQHandler /* LPSPI4 interrupt request line to the core*/
+ .long LPSPI5_IRQHandler /* LPSPI5 interrupt request line to the core*/
+ .long LPSPI6_IRQHandler /* LPSPI6 interrupt request line to the core*/
+ .long CAN1_IRQHandler /* CAN1 interrupt*/
+ .long CAN1_ERROR_IRQHandler /* CAN1 error interrupt*/
+ .long CAN2_IRQHandler /* CAN2 interrupt*/
+ .long CAN2_ERROR_IRQHandler /* CAN2 error interrupt*/
+ .long CAN3_IRQHandler /* CAN3 interrupt*/
+ .long CAN3_ERROR_IRQHandler /* CAN3 erro interrupt*/
+ .long FLEXRAM_IRQHandler /* FlexRAM address out of range Or access hit IRQ*/
+ .long KPP_IRQHandler /* Keypad nterrupt*/
+ .long Reserved68_IRQHandler /* Reserved interrupt*/
+ .long GPR_IRQ_IRQHandler /* GPR interrupt*/
+ .long eLCDIF_IRQHandler /* eLCDIF interrupt*/
+ .long LCDIFv2_IRQHandler /* LCDIFv2 interrupt*/
+ .long CSI_IRQHandler /* CSI interrupt*/
+ .long PXP_IRQHandler /* PXP interrupt*/
+ .long MIPI_CSI_IRQHandler /* MIPI_CSI interrupt*/
+ .long MIPI_DSI_IRQHandler /* MIPI_DSI interrupt*/
+ .long GPU2D_IRQHandler /* GPU2D interrupt*/
+ .long GPIO6_Combined_0_15_IRQHandler /* Combined interrupt indication for GPIO6 signal 0 throughout 15*/
+ .long GPIO6_Combined_16_31_IRQHandler /* Combined interrupt indication for GPIO6 signal 16 throughout 31*/
+ .long DAC_IRQHandler /* DAC interrupt*/
+ .long KEY_MANAGER_IRQHandler /* PUF interrupt*/
+ .long WDOG2_IRQHandler /* WDOG2 interrupt*/
+ .long SNVS_HP_NON_TZ_IRQHandler /* SRTC Consolidated Interrupt. Non TZ*/
+ .long SNVS_HP_TZ_IRQHandler /* SRTC Security Interrupt. TZ*/
+ .long SNVS_PULSE_EVENT_IRQHandler /* ON-OFF button press shorter than 5 secs (pulse event)*/
+ .long CAAM_IRQ0_IRQHandler /* CAAM interrupt queue for JQ0*/
+ .long CAAM_IRQ1_IRQHandler /* CAAM interrupt queue for JQ1*/
+ .long CAAM_IRQ2_IRQHandler /* CAAM interrupt queue for JQ2*/
+ .long CAAM_IRQ3_IRQHandler /* CAAM interrupt queue for JQ3*/
+ .long CAAM_RECORVE_ERRPR_IRQHandler /* CAAM interrupt for recoverable error*/
+ .long CAAM_RTIC_IRQHandler /* CAAM interrupt for RTIC*/
+ .long CDOG_IRQHandler /* CDOG interrupt*/
+ .long SAI1_IRQHandler /* SAI1 interrupt*/
+ .long SAI2_IRQHandler /* SAI1 interrupt*/
+ .long SAI3_RX_IRQHandler /* SAI3 interrupt*/
+ .long SAI3_TX_IRQHandler /* SAI3 interrupt*/
+ .long SAI4_RX_IRQHandler /* SAI4 interrupt*/
+ .long SAI4_TX_IRQHandler /* SAI4 interrupt*/
+ .long SPDIF_IRQHandler /* SPDIF interrupt*/
+ .long TMPSNS_INT_IRQHandler /* TMPSNS interrupt*/
+ .long TMPSNS_LOW_HIGH_IRQHandler /* TMPSNS low high interrupt*/
+ .long TMPSNS_PANIC_IRQHandler /* TMPSNS panic interrupt*/
+ .long LPSR_LP8_BROWNOUT_IRQHandler /* LPSR 1p8 brownout interrupt*/
+ .long LPSR_LP0_BROWNOUT_IRQHandler /* LPSR 1p0 brownout interrupt*/
+ .long ADC1_IRQHandler /* ADC1 interrupt*/
+ .long ADC2_IRQHandler /* ADC2 interrupt*/
+ .long USBPHY1_IRQHandler /* USBPHY1 interrupt*/
+ .long USBPHY2_IRQHandler /* USBPHY2 interrupt*/
+ .long RDC_IRQHandler /* RDC interrupt*/
+ .long GPIO13_Combined_0_31_IRQHandler /* Combined interrupt indication for GPIO13 signal 0 throughout 31*/
+ .long Reserved110_IRQHandler /* Reserved interrupt*/
+ .long DCIC1_IRQHandler /* DCIC1 interrupt*/
+ .long DCIC2_IRQHandler /* DCIC2 interrupt*/
+ .long ASRC_IRQHandler /* ASRC interrupt*/
+ .long FLEXRAM_ECC_IRQHandler /* FlexRAM ECC fatal interrupt*/
+ .long CM7_GPIO2_3_IRQHandler /* CM7_GPIO2,CM7_GPIO3 interrupt*/
+ .long GPIO1_Combined_0_15_IRQHandler /* Combined interrupt indication for GPIO1 signal 0 throughout 15*/
+ .long GPIO1_Combined_16_31_IRQHandler /* Combined interrupt indication for GPIO1 signal 16 throughout 31*/
+ .long GPIO2_Combined_0_15_IRQHandler /* Combined interrupt indication for GPIO2 signal 0 throughout 15*/
+ .long GPIO2_Combined_16_31_IRQHandler /* Combined interrupt indication for GPIO2 signal 16 throughout 31*/
+ .long GPIO3_Combined_0_15_IRQHandler /* Combined interrupt indication for GPIO3 signal 0 throughout 15*/
+ .long GPIO3_Combined_16_31_IRQHandler /* Combined interrupt indication for GPIO3 signal 16 throughout 31*/
+ .long GPIO4_Combined_0_15_IRQHandler /* Combined interrupt indication for GPIO4 signal 0 throughout 15*/
+ .long GPIO4_Combined_16_31_IRQHandler /* Combined interrupt indication for GPIO4 signal 16 throughout 31*/
+ .long GPIO5_Combined_0_15_IRQHandler /* Combined interrupt indication for GPIO5 signal 0 throughout 15*/
+ .long GPIO5_Combined_16_31_IRQHandler /* Combined interrupt indication for GPIO5 signal 16 throughout 31*/
+ .long FLEXIO1_IRQHandler /* FLEXIO1 interrupt*/
+ .long FLEXIO2_IRQHandler /* FLEXIO2 interrupt*/
+ .long WDOG1_IRQHandler /* WDOG1 interrupt*/
+ .long RTWDOG3_IRQHandler /* RTWDOG3 interrupt*/
+ .long EWM_IRQHandler /* EWM interrupt*/
+ .long OCOTP_READ_FUSE_ERROR_IRQHandler /* OCOTP read fuse error interrupt*/
+ .long OCOTP_READ_DONE_ERROR_IRQHandler /* OCOTP read fuse done interrupt*/
+ .long GPC_IRQHandler /* GPC interrupt*/
+ .long MUA_IRQHandler /* MUA interrupt*/
+ .long GPT1_IRQHandler /* GPT1 interrupt*/
+ .long GPT2_IRQHandler /* GPT2 interrupt*/
+ .long GPT3_IRQHandler /* GPT3 interrupt*/
+ .long GPT4_IRQHandler /* GPT4 interrupt*/
+ .long GPT5_IRQHandler /* GPT5 interrupt*/
+ .long GPT6_IRQHandler /* GPT6 interrupt*/
+ .long PWM1_0_IRQHandler /* PWM1 capture 0, compare 0, or reload 0 interrupt*/
+ .long PWM1_1_IRQHandler /* PWM1 capture 1, compare 1, or reload 0 interrupt*/
+ .long PWM1_2_IRQHandler /* PWM1 capture 2, compare 2, or reload 0 interrupt*/
+ .long PWM1_3_IRQHandler /* PWM1 capture 3, compare 3, or reload 0 interrupt*/
+ .long PWM1_FAULT_IRQHandler /* PWM1 fault or reload error interrupt*/
+ .long FLEXSPI1_IRQHandler /* FlexSPI1 interrupt*/
+ .long FLEXSPI2_IRQHandler /* FlexSPI2 interrupt*/
+ .long SEMC_IRQHandler /* SEMC interrupt*/
+ .long USDHC1_IRQHandler /* USDHC1 interrupt*/
+ .long USDHC2_IRQHandler /* USDHC2 interrupt*/
+ .long USB_OTG2_IRQHandler /* USBO2 USB OTG2*/
+ .long USB_OTG1_IRQHandler /* USBO2 USB OTG1*/
+ .long ENET_IRQHandler /* ENET interrupt*/
+ .long ENET_1588_Timer_IRQHandler /* ENET_1588_Timer interrupt*/
+ .long ENET_1G_MAC0_Tx_Rx_1_IRQHandler /* ENET 1G MAC0 transmit/receive 1*/
+ .long ENET_1G_MAC0_Tx_Rx_2_IRQHandler /* ENET 1G MAC0 transmit/receive 2*/
+ .long ENET_1G_IRQHandler /* ENET 1G interrupt*/
+ .long ENET_1G_1588_Timer_IRQHandler /* ENET_1G_1588_Timer interrupt*/
+ .long XBAR1_IRQ_0_1_IRQHandler /* XBARA1 output signal 0, 1 interrupt*/
+ .long XBAR1_IRQ_2_3_IRQHandler /* XBARA1 output signal 2, 3 interrupt*/
+ .long ADC_ETC_IRQ0_IRQHandler /* ADCETC IRQ0 interrupt*/
+ .long ADC_ETC_IRQ1_IRQHandler /* ADCETC IRQ1 interrupt*/
+ .long ADC_ETC_IRQ2_IRQHandler /* ADCETC IRQ2 interrupt*/
+ .long ADC_ETC_IRQ3_IRQHandler /* ADCETC IRQ3 interrupt*/
+ .long ADC_ETC_ERROR_IRQ_IRQHandler /* ADCETC Error IRQ interrupt*/
+ .long Reserved166_IRQHandler /* Reserved interrupt*/
+ .long Reserved167_IRQHandler /* Reserved interrupt*/
+ .long Reserved168_IRQHandler /* Reserved interrupt*/
+ .long Reserved169_IRQHandler /* Reserved interrupt*/
+ .long Reserved170_IRQHandler /* Reserved interrupt*/
+ .long PIT1_IRQHandler /* PIT1 interrupt*/
+ .long PIT2_IRQHandler /* PIT2 interrupt*/
+ .long ACMP1_IRQHandler /* ACMP interrupt*/
+ .long ACMP2_IRQHandler /* ACMP interrupt*/
+ .long ACMP3_IRQHandler /* ACMP interrupt*/
+ .long ACMP4_IRQHandler /* ACMP interrupt*/
+ .long Reserved177_IRQHandler /* Reserved interrupt*/
+ .long Reserved178_IRQHandler /* Reserved interrupt*/
+ .long Reserved179_IRQHandler /* Reserved interrupt*/
+ .long Reserved180_IRQHandler /* Reserved interrupt*/
+ .long ENC1_IRQHandler /* ENC1 interrupt*/
+ .long ENC2_IRQHandler /* ENC2 interrupt*/
+ .long ENC3_IRQHandler /* ENC3 interrupt*/
+ .long ENC4_IRQHandler /* ENC4 interrupt*/
+ .long Reserved185_IRQHandler /* Reserved interrupt*/
+ .long Reserved186_IRQHandler /* Reserved interrupt*/
+ .long TMR1_IRQHandler /* TMR1 interrupt*/
+ .long TMR2_IRQHandler /* TMR2 interrupt*/
+ .long TMR3_IRQHandler /* TMR3 interrupt*/
+ .long TMR4_IRQHandler /* TMR4 interrupt*/
+ .long SEMA4_CP0_IRQHandler /* SEMA4 CP0 interrupt*/
+ .long SEMA4_CP1_IRQHandler /* SEMA4 CP1 interrupt*/
+ .long PWM2_0_IRQHandler /* PWM2 capture 0, compare 0, or reload 0 interrupt*/
+ .long PWM2_1_IRQHandler /* PWM2 capture 1, compare 1, or reload 0 interrupt*/
+ .long PWM2_2_IRQHandler /* PWM2 capture 2, compare 2, or reload 0 interrupt*/
+ .long PWM2_3_IRQHandler /* PWM2 capture 3, compare 3, or reload 0 interrupt*/
+ .long PWM2_FAULT_IRQHandler /* PWM2 fault or reload error interrupt*/
+ .long PWM3_0_IRQHandler /* PWM3 capture 0, compare 0, or reload 0 interrupt*/
+ .long PWM3_1_IRQHandler /* PWM3 capture 1, compare 1, or reload 0 interrupt*/
+ .long PWM3_2_IRQHandler /* PWM3 capture 2, compare 2, or reload 0 interrupt*/
+ .long PWM3_3_IRQHandler /* PWM3 capture 3, compare 3, or reload 0 interrupt*/
+ .long PWM3_FAULT_IRQHandler /* PWM3 fault or reload error interrupt*/
+ .long PWM4_0_IRQHandler /* PWM4 capture 0, compare 0, or reload 0 interrupt*/
+ .long PWM4_1_IRQHandler /* PWM4 capture 1, compare 1, or reload 0 interrupt*/
+ .long PWM4_2_IRQHandler /* PWM4 capture 2, compare 2, or reload 0 interrupt*/
+ .long PWM4_3_IRQHandler /* PWM4 capture 3, compare 3, or reload 0 interrupt*/
+ .long PWM4_FAULT_IRQHandler /* PWM4 fault or reload error interrupt*/
+ .long Reserved208_IRQHandler /* Reserved interrupt*/
+ .long Reserved209_IRQHandler /* Reserved interrupt*/
+ .long Reserved210_IRQHandler /* Reserved interrupt*/
+ .long Reserved211_IRQHandler /* Reserved interrupt*/
+ .long Reserved212_IRQHandler /* Reserved interrupt*/
+ .long Reserved213_IRQHandler /* Reserved interrupt*/
+ .long Reserved214_IRQHandler /* Reserved interrupt*/
+ .long Reserved215_IRQHandler /* Reserved interrupt*/
+ .long PDM_HWVAD_EVENT_IRQHandler /* HWVAD event interrupt*/
+ .long PDM_HWVAD_ERROR_IRQHandler /* HWVAD error interrupt*/
+ .long PDM_EVENT_IRQHandler /* PDM event interrupt*/
+ .long PDM_ERROR_IRQHandler /* PDM error interrupt*/
+ .long EMVSIM1_IRQHandler /* EMVSIM1 interrupt*/
+ .long EMVSIM2_IRQHandler /* EMVSIM2 interrupt*/
+ .long MECC1_INT_IRQHandler /* MECC1 int*/
+ .long MECC1_FATAL_INT_IRQHandler /* MECC1 fatal int*/
+ .long MECC2_INT_IRQHandler /* MECC2 int*/
+ .long MECC2_FATAL_INT_IRQHandler /* MECC2 fatal int*/
+ .long XECC_FLEXSPI1_INT_IRQHandler /* XECC int*/
+ .long XECC_FLEXSPI1_FATAL_INT_IRQHandler /* XECC fatal int*/
+ .long XECC_FLEXSPI2_INT_IRQHandler /* XECC int*/
+ .long XECC_FLEXSPI2_FATAL_INT_IRQHandler /* XECC fatal int*/
+ .long XECC_SEMC_INT_IRQHandler /* XECC int*/
+ .long XECC_SEMC_FATAL_INT_IRQHandler /* XECC fatal int*/
+ .long Reserved232_IRQHandler /* Reserved interrupt*/
+ .long Reserved233_IRQHandler /* Reserved interrupt*/
+ .long DefaultISR /* 234*/
+ .long DefaultISR /* 235*/
+ .long DefaultISR /* 236*/
+ .long DefaultISR /* 237*/
+ .long DefaultISR /* 238*/
+ .long DefaultISR /* 239*/
+ .long DefaultISR /* 240*/
+ .long DefaultISR /* 241*/
+ .long DefaultISR /* 242*/
+ .long DefaultISR /* 243*/
+ .long DefaultISR /* 244*/
+ .long DefaultISR /* 245*/
+ .long DefaultISR /* 246*/
+ .long DefaultISR /* 247*/
+ .long DefaultISR /* 248*/
+ .long DefaultISR /* 249*/
+ .long DefaultISR /* 250*/
+ .long DefaultISR /* 251*/
+ .long DefaultISR /* 252*/
+ .long DefaultISR /* 253*/
+ .long DefaultISR /* 254*/
+ .long 0xFFFFFFFF /* Reserved for user TRIM value*/
+
+ .size __isr_vector, . - __isr_vector
+
+ .text
+ .thumb
+
+/* Reset Handler */
+
+ .thumb_func
+ .align 2
+ .globl Reset_Handler
+ .weak Reset_Handler
+ .type Reset_Handler, %function
+Reset_Handler:
+ cpsid i /* Mask interrupts */
+ .equ VTOR, 0xE000ED08
+ ldr r0, =VTOR
+ ldr r1, =__isr_vector
+ str r1, [r0]
+ ldr r2, [r1]
+ msr msp, r2
+#ifndef __NO_SYSTEM_INIT
+ ldr r0,=SystemInit
+ blx r0
+#endif
+/* Loop to copy data from read only memory to RAM. The ranges
+ * of copy from/to are specified by following symbols evaluated in
+ * linker script.
+ * __etext: End of code section, i.e., begin of data sections to copy from.
+ * __data_start__/__data_end__: RAM address range that data should be
+ * __noncachedata_start__/__noncachedata_end__ : none cachable region
+ * __ram_function_start__/__ram_function_end__ : ramfunction region
+ * copied to. Both must be aligned to 4 bytes boundary. */
+
+ ldr r1, =__etext
+ ldr r2, =__data_start__
+ ldr r3, =__data_end__
+
+#ifdef __PERFORMANCE_IMPLEMENTATION
+/* Here are two copies of loop implementations. First one favors performance
+ * and the second one favors code size. Default uses the second one.
+ * Define macro "__PERFORMANCE_IMPLEMENTATION" in project to use the first one */
+ subs r3, r2
+ ble .LC1
+.LC0:
+ subs r3, #4
+ ldr r0, [r1, r3]
+ str r0, [r2, r3]
+ bgt .LC0
+.LC1:
+#else /* code size implemenation */
+.LC0:
+ cmp r2, r3
+ ittt lt
+ ldrlt r0, [r1], #4
+ strlt r0, [r2], #4
+ blt .LC0
+#endif
+#ifdef __STARTUP_INITIALIZE_RAMFUNCTION
+ ldr r2, =__ram_function_start__
+ ldr r3, =__ram_function_end__
+#ifdef __PERFORMANCE_IMPLEMENTATION
+/* Here are two copies of loop implementations. First one favors performance
+ * and the second one favors code size. Default uses the second one.
+ * Define macro "__PERFORMANCE_IMPLEMENTATION" in project to use the first one */
+ subs r3, r2
+ ble .LC_ramfunc_copy_end
+.LC_ramfunc_copy_start:
+ subs r3, #4
+ ldr r0, [r1, r3]
+ str r0, [r2, r3]
+ bgt .LC_ramfunc_copy_start
+.LC_ramfunc_copy_end:
+#else /* code size implemenation */
+.LC_ramfunc_copy_start:
+ cmp r2, r3
+ ittt lt
+ ldrlt r0, [r1], #4
+ strlt r0, [r2], #4
+ blt .LC_ramfunc_copy_start
+#endif
+#endif /* __STARTUP_INITIALIZE_RAMFUNCTION */
+#ifdef __STARTUP_INITIALIZE_NONCACHEDATA
+ ldr r2, =__noncachedata_start__
+ ldr r3, =__noncachedata_init_end__
+#ifdef __PERFORMANCE_IMPLEMENTATION
+/* Here are two copies of loop implementations. First one favors performance
+ * and the second one favors code size. Default uses the second one.
+ * Define macro "__PERFORMANCE_IMPLEMENTATION" in project to use the first one */
+ subs r3, r2
+ ble .LC3
+.LC2:
+ subs r3, #4
+ ldr r0, [r1, r3]
+ str r0, [r2, r3]
+ bgt .LC2
+.LC3:
+#else /* code size implemenation */
+.LC2:
+ cmp r2, r3
+ ittt lt
+ ldrlt r0, [r1], #4
+ strlt r0, [r2], #4
+ blt .LC2
+#endif
+/* zero inited ncache section initialization */
+ ldr r3, =__noncachedata_end__
+ movs r0,0
+.LC4:
+ cmp r2,r3
+ itt lt
+ strlt r0,[r2],#4
+ blt .LC4
+#endif /* __STARTUP_INITIALIZE_NONCACHEDATA */
+
+#ifdef __STARTUP_CLEAR_BSS
+/* This part of work usually is done in C library startup code. Otherwise,
+ * define this macro to enable it in this startup.
+ *
+ * Loop to zero out BSS section, which uses following symbols
+ * in linker script:
+ * __bss_start__: start of BSS section. Must align to 4
+ * __bss_end__: end of BSS section. Must align to 4
+ */
+ ldr r1, =__bss_start__
+ ldr r2, =__bss_end__
+
+ movs r0, 0
+.LC5:
+ cmp r1, r2
+ itt lt
+ strlt r0, [r1], #4
+ blt .LC5
+#endif /* __STARTUP_CLEAR_BSS */
+
+ cpsie i /* Unmask interrupts */
+#ifndef __START
+#define __START _start
+#endif
+#ifndef __ATOLLIC__
+ ldr r0,=__START
+ blx r0
+#else
+ ldr r0,=__libc_init_array
+ blx r0
+ ldr r0,=main
+ bx r0
+#endif
+ .pool
+ .size Reset_Handler, . - Reset_Handler
+
+ .align 1
+ .thumb_func
+ .weak DefaultISR
+ .type DefaultISR, %function
+DefaultISR:
+ b DefaultISR
+ .size DefaultISR, . - DefaultISR
+
+ .align 1
+ .thumb_func
+ .weak NMI_Handler
+ .type NMI_Handler, %function
+NMI_Handler:
+ ldr r0,=NMI_Handler
+ bx r0
+ .size NMI_Handler, . - NMI_Handler
+
+ .align 1
+ .thumb_func
+ .weak HardFault_Handler
+ .type HardFault_Handler, %function
+HardFault_Handler:
+ ldr r0,=HardFault_Handler
+ bx r0
+ .size HardFault_Handler, . - HardFault_Handler
+
+ .align 1
+ .thumb_func
+ .weak SVC_Handler
+ .type SVC_Handler, %function
+SVC_Handler:
+ ldr r0,=SVC_Handler
+ bx r0
+ .size SVC_Handler, . - SVC_Handler
+
+ .align 1
+ .thumb_func
+ .weak PendSV_Handler
+ .type PendSV_Handler, %function
+PendSV_Handler:
+ ldr r0,=PendSV_Handler
+ bx r0
+ .size PendSV_Handler, . - PendSV_Handler
+
+ .align 1
+ .thumb_func
+ .weak SysTick_Handler
+ .type SysTick_Handler, %function
+SysTick_Handler:
+ ldr r0,=SysTick_Handler
+ bx r0
+ .size SysTick_Handler, . - SysTick_Handler
+
+ .align 1
+ .thumb_func
+ .weak DMA0_DMA16_IRQHandler
+ .type DMA0_DMA16_IRQHandler, %function
+DMA0_DMA16_IRQHandler:
+ ldr r0,=DMA0_DMA16_DriverIRQHandler
+ bx r0
+ .size DMA0_DMA16_IRQHandler, . - DMA0_DMA16_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA1_DMA17_IRQHandler
+ .type DMA1_DMA17_IRQHandler, %function
+DMA1_DMA17_IRQHandler:
+ ldr r0,=DMA1_DMA17_DriverIRQHandler
+ bx r0
+ .size DMA1_DMA17_IRQHandler, . - DMA1_DMA17_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA2_DMA18_IRQHandler
+ .type DMA2_DMA18_IRQHandler, %function
+DMA2_DMA18_IRQHandler:
+ ldr r0,=DMA2_DMA18_DriverIRQHandler
+ bx r0
+ .size DMA2_DMA18_IRQHandler, . - DMA2_DMA18_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA3_DMA19_IRQHandler
+ .type DMA3_DMA19_IRQHandler, %function
+DMA3_DMA19_IRQHandler:
+ ldr r0,=DMA3_DMA19_DriverIRQHandler
+ bx r0
+ .size DMA3_DMA19_IRQHandler, . - DMA3_DMA19_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA4_DMA20_IRQHandler
+ .type DMA4_DMA20_IRQHandler, %function
+DMA4_DMA20_IRQHandler:
+ ldr r0,=DMA4_DMA20_DriverIRQHandler
+ bx r0
+ .size DMA4_DMA20_IRQHandler, . - DMA4_DMA20_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA5_DMA21_IRQHandler
+ .type DMA5_DMA21_IRQHandler, %function
+DMA5_DMA21_IRQHandler:
+ ldr r0,=DMA5_DMA21_DriverIRQHandler
+ bx r0
+ .size DMA5_DMA21_IRQHandler, . - DMA5_DMA21_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA6_DMA22_IRQHandler
+ .type DMA6_DMA22_IRQHandler, %function
+DMA6_DMA22_IRQHandler:
+ ldr r0,=DMA6_DMA22_DriverIRQHandler
+ bx r0
+ .size DMA6_DMA22_IRQHandler, . - DMA6_DMA22_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA7_DMA23_IRQHandler
+ .type DMA7_DMA23_IRQHandler, %function
+DMA7_DMA23_IRQHandler:
+ ldr r0,=DMA7_DMA23_DriverIRQHandler
+ bx r0
+ .size DMA7_DMA23_IRQHandler, . - DMA7_DMA23_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA8_DMA24_IRQHandler
+ .type DMA8_DMA24_IRQHandler, %function
+DMA8_DMA24_IRQHandler:
+ ldr r0,=DMA8_DMA24_DriverIRQHandler
+ bx r0
+ .size DMA8_DMA24_IRQHandler, . - DMA8_DMA24_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA9_DMA25_IRQHandler
+ .type DMA9_DMA25_IRQHandler, %function
+DMA9_DMA25_IRQHandler:
+ ldr r0,=DMA9_DMA25_DriverIRQHandler
+ bx r0
+ .size DMA9_DMA25_IRQHandler, . - DMA9_DMA25_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA10_DMA26_IRQHandler
+ .type DMA10_DMA26_IRQHandler, %function
+DMA10_DMA26_IRQHandler:
+ ldr r0,=DMA10_DMA26_DriverIRQHandler
+ bx r0
+ .size DMA10_DMA26_IRQHandler, . - DMA10_DMA26_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA11_DMA27_IRQHandler
+ .type DMA11_DMA27_IRQHandler, %function
+DMA11_DMA27_IRQHandler:
+ ldr r0,=DMA11_DMA27_DriverIRQHandler
+ bx r0
+ .size DMA11_DMA27_IRQHandler, . - DMA11_DMA27_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA12_DMA28_IRQHandler
+ .type DMA12_DMA28_IRQHandler, %function
+DMA12_DMA28_IRQHandler:
+ ldr r0,=DMA12_DMA28_DriverIRQHandler
+ bx r0
+ .size DMA12_DMA28_IRQHandler, . - DMA12_DMA28_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA13_DMA29_IRQHandler
+ .type DMA13_DMA29_IRQHandler, %function
+DMA13_DMA29_IRQHandler:
+ ldr r0,=DMA13_DMA29_DriverIRQHandler
+ bx r0
+ .size DMA13_DMA29_IRQHandler, . - DMA13_DMA29_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA14_DMA30_IRQHandler
+ .type DMA14_DMA30_IRQHandler, %function
+DMA14_DMA30_IRQHandler:
+ ldr r0,=DMA14_DMA30_DriverIRQHandler
+ bx r0
+ .size DMA14_DMA30_IRQHandler, . - DMA14_DMA30_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA15_DMA31_IRQHandler
+ .type DMA15_DMA31_IRQHandler, %function
+DMA15_DMA31_IRQHandler:
+ ldr r0,=DMA15_DMA31_DriverIRQHandler
+ bx r0
+ .size DMA15_DMA31_IRQHandler, . - DMA15_DMA31_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak DMA_ERROR_IRQHandler
+ .type DMA_ERROR_IRQHandler, %function
+DMA_ERROR_IRQHandler:
+ ldr r0,=DMA_ERROR_DriverIRQHandler
+ bx r0
+ .size DMA_ERROR_IRQHandler, . - DMA_ERROR_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART1_IRQHandler
+ .type LPUART1_IRQHandler, %function
+LPUART1_IRQHandler:
+ ldr r0,=LPUART1_DriverIRQHandler
+ bx r0
+ .size LPUART1_IRQHandler, . - LPUART1_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART2_IRQHandler
+ .type LPUART2_IRQHandler, %function
+LPUART2_IRQHandler:
+ ldr r0,=LPUART2_DriverIRQHandler
+ bx r0
+ .size LPUART2_IRQHandler, . - LPUART2_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART3_IRQHandler
+ .type LPUART3_IRQHandler, %function
+LPUART3_IRQHandler:
+ ldr r0,=LPUART3_DriverIRQHandler
+ bx r0
+ .size LPUART3_IRQHandler, . - LPUART3_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART4_IRQHandler
+ .type LPUART4_IRQHandler, %function
+LPUART4_IRQHandler:
+ ldr r0,=LPUART4_DriverIRQHandler
+ bx r0
+ .size LPUART4_IRQHandler, . - LPUART4_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART5_IRQHandler
+ .type LPUART5_IRQHandler, %function
+LPUART5_IRQHandler:
+ ldr r0,=LPUART5_DriverIRQHandler
+ bx r0
+ .size LPUART5_IRQHandler, . - LPUART5_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART6_IRQHandler
+ .type LPUART6_IRQHandler, %function
+LPUART6_IRQHandler:
+ ldr r0,=LPUART6_DriverIRQHandler
+ bx r0
+ .size LPUART6_IRQHandler, . - LPUART6_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART7_IRQHandler
+ .type LPUART7_IRQHandler, %function
+LPUART7_IRQHandler:
+ ldr r0,=LPUART7_DriverIRQHandler
+ bx r0
+ .size LPUART7_IRQHandler, . - LPUART7_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART8_IRQHandler
+ .type LPUART8_IRQHandler, %function
+LPUART8_IRQHandler:
+ ldr r0,=LPUART8_DriverIRQHandler
+ bx r0
+ .size LPUART8_IRQHandler, . - LPUART8_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART9_IRQHandler
+ .type LPUART9_IRQHandler, %function
+LPUART9_IRQHandler:
+ ldr r0,=LPUART9_DriverIRQHandler
+ bx r0
+ .size LPUART9_IRQHandler, . - LPUART9_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART10_IRQHandler
+ .type LPUART10_IRQHandler, %function
+LPUART10_IRQHandler:
+ ldr r0,=LPUART10_DriverIRQHandler
+ bx r0
+ .size LPUART10_IRQHandler, . - LPUART10_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART11_IRQHandler
+ .type LPUART11_IRQHandler, %function
+LPUART11_IRQHandler:
+ ldr r0,=LPUART11_DriverIRQHandler
+ bx r0
+ .size LPUART11_IRQHandler, . - LPUART11_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPUART12_IRQHandler
+ .type LPUART12_IRQHandler, %function
+LPUART12_IRQHandler:
+ ldr r0,=LPUART12_DriverIRQHandler
+ bx r0
+ .size LPUART12_IRQHandler, . - LPUART12_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPI2C1_IRQHandler
+ .type LPI2C1_IRQHandler, %function
+LPI2C1_IRQHandler:
+ ldr r0,=LPI2C1_DriverIRQHandler
+ bx r0
+ .size LPI2C1_IRQHandler, . - LPI2C1_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPI2C2_IRQHandler
+ .type LPI2C2_IRQHandler, %function
+LPI2C2_IRQHandler:
+ ldr r0,=LPI2C2_DriverIRQHandler
+ bx r0
+ .size LPI2C2_IRQHandler, . - LPI2C2_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPI2C3_IRQHandler
+ .type LPI2C3_IRQHandler, %function
+LPI2C3_IRQHandler:
+ ldr r0,=LPI2C3_DriverIRQHandler
+ bx r0
+ .size LPI2C3_IRQHandler, . - LPI2C3_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPI2C4_IRQHandler
+ .type LPI2C4_IRQHandler, %function
+LPI2C4_IRQHandler:
+ ldr r0,=LPI2C4_DriverIRQHandler
+ bx r0
+ .size LPI2C4_IRQHandler, . - LPI2C4_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPI2C5_IRQHandler
+ .type LPI2C5_IRQHandler, %function
+LPI2C5_IRQHandler:
+ ldr r0,=LPI2C5_DriverIRQHandler
+ bx r0
+ .size LPI2C5_IRQHandler, . - LPI2C5_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPI2C6_IRQHandler
+ .type LPI2C6_IRQHandler, %function
+LPI2C6_IRQHandler:
+ ldr r0,=LPI2C6_DriverIRQHandler
+ bx r0
+ .size LPI2C6_IRQHandler, . - LPI2C6_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPSPI1_IRQHandler
+ .type LPSPI1_IRQHandler, %function
+LPSPI1_IRQHandler:
+ ldr r0,=LPSPI1_DriverIRQHandler
+ bx r0
+ .size LPSPI1_IRQHandler, . - LPSPI1_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPSPI2_IRQHandler
+ .type LPSPI2_IRQHandler, %function
+LPSPI2_IRQHandler:
+ ldr r0,=LPSPI2_DriverIRQHandler
+ bx r0
+ .size LPSPI2_IRQHandler, . - LPSPI2_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPSPI3_IRQHandler
+ .type LPSPI3_IRQHandler, %function
+LPSPI3_IRQHandler:
+ ldr r0,=LPSPI3_DriverIRQHandler
+ bx r0
+ .size LPSPI3_IRQHandler, . - LPSPI3_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPSPI4_IRQHandler
+ .type LPSPI4_IRQHandler, %function
+LPSPI4_IRQHandler:
+ ldr r0,=LPSPI4_DriverIRQHandler
+ bx r0
+ .size LPSPI4_IRQHandler, . - LPSPI4_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPSPI5_IRQHandler
+ .type LPSPI5_IRQHandler, %function
+LPSPI5_IRQHandler:
+ ldr r0,=LPSPI5_DriverIRQHandler
+ bx r0
+ .size LPSPI5_IRQHandler, . - LPSPI5_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak LPSPI6_IRQHandler
+ .type LPSPI6_IRQHandler, %function
+LPSPI6_IRQHandler:
+ ldr r0,=LPSPI6_DriverIRQHandler
+ bx r0
+ .size LPSPI6_IRQHandler, . - LPSPI6_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak CAN1_IRQHandler
+ .type CAN1_IRQHandler, %function
+CAN1_IRQHandler:
+ ldr r0,=CAN1_DriverIRQHandler
+ bx r0
+ .size CAN1_IRQHandler, . - CAN1_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak CAN1_ERROR_IRQHandler
+ .type CAN1_ERROR_IRQHandler, %function
+CAN1_ERROR_IRQHandler:
+ ldr r0,=CAN1_ERROR_DriverIRQHandler
+ bx r0
+ .size CAN1_ERROR_IRQHandler, . - CAN1_ERROR_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak CAN2_IRQHandler
+ .type CAN2_IRQHandler, %function
+CAN2_IRQHandler:
+ ldr r0,=CAN2_DriverIRQHandler
+ bx r0
+ .size CAN2_IRQHandler, . - CAN2_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak CAN2_ERROR_IRQHandler
+ .type CAN2_ERROR_IRQHandler, %function
+CAN2_ERROR_IRQHandler:
+ ldr r0,=CAN2_ERROR_DriverIRQHandler
+ bx r0
+ .size CAN2_ERROR_IRQHandler, . - CAN2_ERROR_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak CAN3_IRQHandler
+ .type CAN3_IRQHandler, %function
+CAN3_IRQHandler:
+ ldr r0,=CAN3_DriverIRQHandler
+ bx r0
+ .size CAN3_IRQHandler, . - CAN3_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak CAN3_ERROR_IRQHandler
+ .type CAN3_ERROR_IRQHandler, %function
+CAN3_ERROR_IRQHandler:
+ ldr r0,=CAN3_ERROR_DriverIRQHandler
+ bx r0
+ .size CAN3_ERROR_IRQHandler, . - CAN3_ERROR_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak MIPI_CSI_IRQHandler
+ .type MIPI_CSI_IRQHandler, %function
+MIPI_CSI_IRQHandler:
+ ldr r0,=MIPI_CSI_DriverIRQHandler
+ bx r0
+ .size MIPI_CSI_IRQHandler, . - MIPI_CSI_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak MIPI_DSI_IRQHandler
+ .type MIPI_DSI_IRQHandler, %function
+MIPI_DSI_IRQHandler:
+ ldr r0,=MIPI_DSI_DriverIRQHandler
+ bx r0
+ .size MIPI_DSI_IRQHandler, . - MIPI_DSI_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak CDOG_IRQHandler
+ .type CDOG_IRQHandler, %function
+CDOG_IRQHandler:
+ ldr r0,=CDOG_DriverIRQHandler
+ bx r0
+ .size CDOG_IRQHandler, . - CDOG_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak SAI1_IRQHandler
+ .type SAI1_IRQHandler, %function
+SAI1_IRQHandler:
+ ldr r0,=SAI1_DriverIRQHandler
+ bx r0
+ .size SAI1_IRQHandler, . - SAI1_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak SAI2_IRQHandler
+ .type SAI2_IRQHandler, %function
+SAI2_IRQHandler:
+ ldr r0,=SAI2_DriverIRQHandler
+ bx r0
+ .size SAI2_IRQHandler, . - SAI2_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak SAI3_RX_IRQHandler
+ .type SAI3_RX_IRQHandler, %function
+SAI3_RX_IRQHandler:
+ ldr r0,=SAI3_RX_DriverIRQHandler
+ bx r0
+ .size SAI3_RX_IRQHandler, . - SAI3_RX_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak SAI3_TX_IRQHandler
+ .type SAI3_TX_IRQHandler, %function
+SAI3_TX_IRQHandler:
+ ldr r0,=SAI3_TX_DriverIRQHandler
+ bx r0
+ .size SAI3_TX_IRQHandler, . - SAI3_TX_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak SAI4_RX_IRQHandler
+ .type SAI4_RX_IRQHandler, %function
+SAI4_RX_IRQHandler:
+ ldr r0,=SAI4_RX_DriverIRQHandler
+ bx r0
+ .size SAI4_RX_IRQHandler, . - SAI4_RX_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak SAI4_TX_IRQHandler
+ .type SAI4_TX_IRQHandler, %function
+SAI4_TX_IRQHandler:
+ ldr r0,=SAI4_TX_DriverIRQHandler
+ bx r0
+ .size SAI4_TX_IRQHandler, . - SAI4_TX_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak SPDIF_IRQHandler
+ .type SPDIF_IRQHandler, %function
+SPDIF_IRQHandler:
+ ldr r0,=SPDIF_DriverIRQHandler
+ bx r0
+ .size SPDIF_IRQHandler, . - SPDIF_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak ASRC_IRQHandler
+ .type ASRC_IRQHandler, %function
+ASRC_IRQHandler:
+ ldr r0,=ASRC_DriverIRQHandler
+ bx r0
+ .size ASRC_IRQHandler, . - ASRC_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak FLEXIO1_IRQHandler
+ .type FLEXIO1_IRQHandler, %function
+FLEXIO1_IRQHandler:
+ ldr r0,=FLEXIO1_DriverIRQHandler
+ bx r0
+ .size FLEXIO1_IRQHandler, . - FLEXIO1_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak FLEXIO2_IRQHandler
+ .type FLEXIO2_IRQHandler, %function
+FLEXIO2_IRQHandler:
+ ldr r0,=FLEXIO2_DriverIRQHandler
+ bx r0
+ .size FLEXIO2_IRQHandler, . - FLEXIO2_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak FLEXSPI1_IRQHandler
+ .type FLEXSPI1_IRQHandler, %function
+FLEXSPI1_IRQHandler:
+ ldr r0,=FLEXSPI1_DriverIRQHandler
+ bx r0
+ .size FLEXSPI1_IRQHandler, . - FLEXSPI1_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak FLEXSPI2_IRQHandler
+ .type FLEXSPI2_IRQHandler, %function
+FLEXSPI2_IRQHandler:
+ ldr r0,=FLEXSPI2_DriverIRQHandler
+ bx r0
+ .size FLEXSPI2_IRQHandler, . - FLEXSPI2_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak USDHC1_IRQHandler
+ .type USDHC1_IRQHandler, %function
+USDHC1_IRQHandler:
+ ldr r0,=USDHC1_DriverIRQHandler
+ bx r0
+ .size USDHC1_IRQHandler, . - USDHC1_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak USDHC2_IRQHandler
+ .type USDHC2_IRQHandler, %function
+USDHC2_IRQHandler:
+ ldr r0,=USDHC2_DriverIRQHandler
+ bx r0
+ .size USDHC2_IRQHandler, . - USDHC2_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak ENET_IRQHandler
+ .type ENET_IRQHandler, %function
+ENET_IRQHandler:
+ ldr r0,=ENET_DriverIRQHandler
+ bx r0
+ .size ENET_IRQHandler, . - ENET_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak ENET_1588_Timer_IRQHandler
+ .type ENET_1588_Timer_IRQHandler, %function
+ENET_1588_Timer_IRQHandler:
+ ldr r0,=ENET_1588_Timer_DriverIRQHandler
+ bx r0
+ .size ENET_1588_Timer_IRQHandler, . - ENET_1588_Timer_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak ENET_1G_MAC0_Tx_Rx_1_IRQHandler
+ .type ENET_1G_MAC0_Tx_Rx_1_IRQHandler, %function
+ENET_1G_MAC0_Tx_Rx_1_IRQHandler:
+ ldr r0,=ENET_1G_MAC0_Tx_Rx_1_DriverIRQHandler
+ bx r0
+ .size ENET_1G_MAC0_Tx_Rx_1_IRQHandler, . - ENET_1G_MAC0_Tx_Rx_1_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak ENET_1G_MAC0_Tx_Rx_2_IRQHandler
+ .type ENET_1G_MAC0_Tx_Rx_2_IRQHandler, %function
+ENET_1G_MAC0_Tx_Rx_2_IRQHandler:
+ ldr r0,=ENET_1G_MAC0_Tx_Rx_2_DriverIRQHandler
+ bx r0
+ .size ENET_1G_MAC0_Tx_Rx_2_IRQHandler, . - ENET_1G_MAC0_Tx_Rx_2_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak ENET_1G_IRQHandler
+ .type ENET_1G_IRQHandler, %function
+ENET_1G_IRQHandler:
+ ldr r0,=ENET_1G_DriverIRQHandler
+ bx r0
+ .size ENET_1G_IRQHandler, . - ENET_1G_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak ENET_1G_1588_Timer_IRQHandler
+ .type ENET_1G_1588_Timer_IRQHandler, %function
+ENET_1G_1588_Timer_IRQHandler:
+ ldr r0,=ENET_1G_1588_Timer_DriverIRQHandler
+ bx r0
+ .size ENET_1G_1588_Timer_IRQHandler, . - ENET_1G_1588_Timer_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak PDM_HWVAD_EVENT_IRQHandler
+ .type PDM_HWVAD_EVENT_IRQHandler, %function
+PDM_HWVAD_EVENT_IRQHandler:
+ ldr r0,=PDM_HWVAD_EVENT_DriverIRQHandler
+ bx r0
+ .size PDM_HWVAD_EVENT_IRQHandler, . - PDM_HWVAD_EVENT_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak PDM_HWVAD_ERROR_IRQHandler
+ .type PDM_HWVAD_ERROR_IRQHandler, %function
+PDM_HWVAD_ERROR_IRQHandler:
+ ldr r0,=PDM_HWVAD_ERROR_DriverIRQHandler
+ bx r0
+ .size PDM_HWVAD_ERROR_IRQHandler, . - PDM_HWVAD_ERROR_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak PDM_EVENT_IRQHandler
+ .type PDM_EVENT_IRQHandler, %function
+PDM_EVENT_IRQHandler:
+ ldr r0,=PDM_EVENT_DriverIRQHandler
+ bx r0
+ .size PDM_EVENT_IRQHandler, . - PDM_EVENT_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak PDM_ERROR_IRQHandler
+ .type PDM_ERROR_IRQHandler, %function
+PDM_ERROR_IRQHandler:
+ ldr r0,=PDM_ERROR_DriverIRQHandler
+ bx r0
+ .size PDM_ERROR_IRQHandler, . - PDM_ERROR_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak XECC_FLEXSPI1_INT_IRQHandler
+ .type XECC_FLEXSPI1_INT_IRQHandler, %function
+XECC_FLEXSPI1_INT_IRQHandler:
+ ldr r0,=XECC_FLEXSPI1_INT_DriverIRQHandler
+ bx r0
+ .size XECC_FLEXSPI1_INT_IRQHandler, . - XECC_FLEXSPI1_INT_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak XECC_FLEXSPI1_FATAL_INT_IRQHandler
+ .type XECC_FLEXSPI1_FATAL_INT_IRQHandler, %function
+XECC_FLEXSPI1_FATAL_INT_IRQHandler:
+ ldr r0,=XECC_FLEXSPI1_FATAL_INT_DriverIRQHandler
+ bx r0
+ .size XECC_FLEXSPI1_FATAL_INT_IRQHandler, . - XECC_FLEXSPI1_FATAL_INT_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak XECC_FLEXSPI2_INT_IRQHandler
+ .type XECC_FLEXSPI2_INT_IRQHandler, %function
+XECC_FLEXSPI2_INT_IRQHandler:
+ ldr r0,=XECC_FLEXSPI2_INT_DriverIRQHandler
+ bx r0
+ .size XECC_FLEXSPI2_INT_IRQHandler, . - XECC_FLEXSPI2_INT_IRQHandler
+
+ .align 1
+ .thumb_func
+ .weak XECC_FLEXSPI2_FATAL_INT_IRQHandler
+ .type XECC_FLEXSPI2_FATAL_INT_IRQHandler, %function
+XECC_FLEXSPI2_FATAL_INT_IRQHandler:
+ ldr r0,=XECC_FLEXSPI2_FATAL_INT_DriverIRQHandler
+ bx r0
+ .size XECC_FLEXSPI2_FATAL_INT_IRQHandler, . - XECC_FLEXSPI2_FATAL_INT_IRQHandler
+
+
+/* Macro to define default handlers. Default handler
+ * will be weak symbol and just dead loops. They can be
+ * overwritten by other handlers */
+ .macro def_irq_handler handler_name
+ .weak \handler_name
+ .set \handler_name, DefaultISR
+ .endm
+/* Exception Handlers */
+ def_irq_handler MemManage_Handler
+ def_irq_handler BusFault_Handler
+ def_irq_handler UsageFault_Handler
+ def_irq_handler DebugMon_Handler
+ def_irq_handler DMA0_DMA16_DriverIRQHandler
+ def_irq_handler DMA1_DMA17_DriverIRQHandler
+ def_irq_handler DMA2_DMA18_DriverIRQHandler
+ def_irq_handler DMA3_DMA19_DriverIRQHandler
+ def_irq_handler DMA4_DMA20_DriverIRQHandler
+ def_irq_handler DMA5_DMA21_DriverIRQHandler
+ def_irq_handler DMA6_DMA22_DriverIRQHandler
+ def_irq_handler DMA7_DMA23_DriverIRQHandler
+ def_irq_handler DMA8_DMA24_DriverIRQHandler
+ def_irq_handler DMA9_DMA25_DriverIRQHandler
+ def_irq_handler DMA10_DMA26_DriverIRQHandler
+ def_irq_handler DMA11_DMA27_DriverIRQHandler
+ def_irq_handler DMA12_DMA28_DriverIRQHandler
+ def_irq_handler DMA13_DMA29_DriverIRQHandler
+ def_irq_handler DMA14_DMA30_DriverIRQHandler
+ def_irq_handler DMA15_DMA31_DriverIRQHandler
+ def_irq_handler DMA_ERROR_DriverIRQHandler
+ def_irq_handler CTI_TRIGGER_OUT0_IRQHandler
+ def_irq_handler CTI_TRIGGER_OUT1_IRQHandler
+ def_irq_handler CORE_IRQHandler
+ def_irq_handler LPUART1_DriverIRQHandler
+ def_irq_handler LPUART2_DriverIRQHandler
+ def_irq_handler LPUART3_DriverIRQHandler
+ def_irq_handler LPUART4_DriverIRQHandler
+ def_irq_handler LPUART5_DriverIRQHandler
+ def_irq_handler LPUART6_DriverIRQHandler
+ def_irq_handler LPUART7_DriverIRQHandler
+ def_irq_handler LPUART8_DriverIRQHandler
+ def_irq_handler LPUART9_DriverIRQHandler
+ def_irq_handler LPUART10_DriverIRQHandler
+ def_irq_handler LPUART11_DriverIRQHandler
+ def_irq_handler LPUART12_DriverIRQHandler
+ def_irq_handler LPI2C1_DriverIRQHandler
+ def_irq_handler LPI2C2_DriverIRQHandler
+ def_irq_handler LPI2C3_DriverIRQHandler
+ def_irq_handler LPI2C4_DriverIRQHandler
+ def_irq_handler LPI2C5_DriverIRQHandler
+ def_irq_handler LPI2C6_DriverIRQHandler
+ def_irq_handler LPSPI1_DriverIRQHandler
+ def_irq_handler LPSPI2_DriverIRQHandler
+ def_irq_handler LPSPI3_DriverIRQHandler
+ def_irq_handler LPSPI4_DriverIRQHandler
+ def_irq_handler LPSPI5_DriverIRQHandler
+ def_irq_handler LPSPI6_DriverIRQHandler
+ def_irq_handler CAN1_DriverIRQHandler
+ def_irq_handler CAN1_ERROR_DriverIRQHandler
+ def_irq_handler CAN2_DriverIRQHandler
+ def_irq_handler CAN2_ERROR_DriverIRQHandler
+ def_irq_handler CAN3_DriverIRQHandler
+ def_irq_handler CAN3_ERROR_DriverIRQHandler
+ def_irq_handler FLEXRAM_IRQHandler
+ def_irq_handler KPP_IRQHandler
+ def_irq_handler Reserved68_IRQHandler
+ def_irq_handler GPR_IRQ_IRQHandler
+ def_irq_handler eLCDIF_IRQHandler
+ def_irq_handler LCDIFv2_IRQHandler
+ def_irq_handler CSI_IRQHandler
+ def_irq_handler PXP_IRQHandler
+ def_irq_handler MIPI_CSI_DriverIRQHandler
+ def_irq_handler MIPI_DSI_DriverIRQHandler
+ def_irq_handler GPU2D_IRQHandler
+ def_irq_handler GPIO6_Combined_0_15_IRQHandler
+ def_irq_handler GPIO6_Combined_16_31_IRQHandler
+ def_irq_handler DAC_IRQHandler
+ def_irq_handler KEY_MANAGER_IRQHandler
+ def_irq_handler WDOG2_IRQHandler
+ def_irq_handler SNVS_HP_NON_TZ_IRQHandler
+ def_irq_handler SNVS_HP_TZ_IRQHandler
+ def_irq_handler SNVS_PULSE_EVENT_IRQHandler
+ def_irq_handler CAAM_IRQ0_IRQHandler
+ def_irq_handler CAAM_IRQ1_IRQHandler
+ def_irq_handler CAAM_IRQ2_IRQHandler
+ def_irq_handler CAAM_IRQ3_IRQHandler
+ def_irq_handler CAAM_RECORVE_ERRPR_IRQHandler
+ def_irq_handler CAAM_RTIC_IRQHandler
+ def_irq_handler CDOG_DriverIRQHandler
+ def_irq_handler SAI1_DriverIRQHandler
+ def_irq_handler SAI2_DriverIRQHandler
+ def_irq_handler SAI3_RX_DriverIRQHandler
+ def_irq_handler SAI3_TX_DriverIRQHandler
+ def_irq_handler SAI4_RX_DriverIRQHandler
+ def_irq_handler SAI4_TX_DriverIRQHandler
+ def_irq_handler SPDIF_DriverIRQHandler
+ def_irq_handler TMPSNS_INT_IRQHandler
+ def_irq_handler TMPSNS_LOW_HIGH_IRQHandler
+ def_irq_handler TMPSNS_PANIC_IRQHandler
+ def_irq_handler LPSR_LP8_BROWNOUT_IRQHandler
+ def_irq_handler LPSR_LP0_BROWNOUT_IRQHandler
+ def_irq_handler ADC1_IRQHandler
+ def_irq_handler ADC2_IRQHandler
+ def_irq_handler USBPHY1_IRQHandler
+ def_irq_handler USBPHY2_IRQHandler
+ def_irq_handler RDC_IRQHandler
+ def_irq_handler GPIO13_Combined_0_31_IRQHandler
+ def_irq_handler Reserved110_IRQHandler
+ def_irq_handler DCIC1_IRQHandler
+ def_irq_handler DCIC2_IRQHandler
+ def_irq_handler ASRC_DriverIRQHandler
+ def_irq_handler FLEXRAM_ECC_IRQHandler
+ def_irq_handler CM7_GPIO2_3_IRQHandler
+ def_irq_handler GPIO1_Combined_0_15_IRQHandler
+ def_irq_handler GPIO1_Combined_16_31_IRQHandler
+ def_irq_handler GPIO2_Combined_0_15_IRQHandler
+ def_irq_handler GPIO2_Combined_16_31_IRQHandler
+ def_irq_handler GPIO3_Combined_0_15_IRQHandler
+ def_irq_handler GPIO3_Combined_16_31_IRQHandler
+ def_irq_handler GPIO4_Combined_0_15_IRQHandler
+ def_irq_handler GPIO4_Combined_16_31_IRQHandler
+ def_irq_handler GPIO5_Combined_0_15_IRQHandler
+ def_irq_handler GPIO5_Combined_16_31_IRQHandler
+ def_irq_handler FLEXIO1_DriverIRQHandler
+ def_irq_handler FLEXIO2_DriverIRQHandler
+ def_irq_handler WDOG1_IRQHandler
+ def_irq_handler RTWDOG3_IRQHandler
+ def_irq_handler EWM_IRQHandler
+ def_irq_handler OCOTP_READ_FUSE_ERROR_IRQHandler
+ def_irq_handler OCOTP_READ_DONE_ERROR_IRQHandler
+ def_irq_handler GPC_IRQHandler
+ def_irq_handler MUA_IRQHandler
+ def_irq_handler GPT1_IRQHandler
+ def_irq_handler GPT2_IRQHandler
+ def_irq_handler GPT3_IRQHandler
+ def_irq_handler GPT4_IRQHandler
+ def_irq_handler GPT5_IRQHandler
+ def_irq_handler GPT6_IRQHandler
+ def_irq_handler PWM1_0_IRQHandler
+ def_irq_handler PWM1_1_IRQHandler
+ def_irq_handler PWM1_2_IRQHandler
+ def_irq_handler PWM1_3_IRQHandler
+ def_irq_handler PWM1_FAULT_IRQHandler
+ def_irq_handler FLEXSPI1_DriverIRQHandler
+ def_irq_handler FLEXSPI2_DriverIRQHandler
+ def_irq_handler SEMC_IRQHandler
+ def_irq_handler USDHC1_DriverIRQHandler
+ def_irq_handler USDHC2_DriverIRQHandler
+ def_irq_handler USB_OTG2_IRQHandler
+ def_irq_handler USB_OTG1_IRQHandler
+ def_irq_handler ENET_DriverIRQHandler
+ def_irq_handler ENET_1588_Timer_DriverIRQHandler
+ def_irq_handler ENET_1G_MAC0_Tx_Rx_1_DriverIRQHandler
+ def_irq_handler ENET_1G_MAC0_Tx_Rx_2_DriverIRQHandler
+ def_irq_handler ENET_1G_DriverIRQHandler
+ def_irq_handler ENET_1G_1588_Timer_DriverIRQHandler
+ def_irq_handler XBAR1_IRQ_0_1_IRQHandler
+ def_irq_handler XBAR1_IRQ_2_3_IRQHandler
+ def_irq_handler ADC_ETC_IRQ0_IRQHandler
+ def_irq_handler ADC_ETC_IRQ1_IRQHandler
+ def_irq_handler ADC_ETC_IRQ2_IRQHandler
+ def_irq_handler ADC_ETC_IRQ3_IRQHandler
+ def_irq_handler ADC_ETC_ERROR_IRQ_IRQHandler
+ def_irq_handler Reserved166_IRQHandler
+ def_irq_handler Reserved167_IRQHandler
+ def_irq_handler Reserved168_IRQHandler
+ def_irq_handler Reserved169_IRQHandler
+ def_irq_handler Reserved170_IRQHandler
+ def_irq_handler PIT1_IRQHandler
+ def_irq_handler PIT2_IRQHandler
+ def_irq_handler ACMP1_IRQHandler
+ def_irq_handler ACMP2_IRQHandler
+ def_irq_handler ACMP3_IRQHandler
+ def_irq_handler ACMP4_IRQHandler
+ def_irq_handler Reserved177_IRQHandler
+ def_irq_handler Reserved178_IRQHandler
+ def_irq_handler Reserved179_IRQHandler
+ def_irq_handler Reserved180_IRQHandler
+ def_irq_handler ENC1_IRQHandler
+ def_irq_handler ENC2_IRQHandler
+ def_irq_handler ENC3_IRQHandler
+ def_irq_handler ENC4_IRQHandler
+ def_irq_handler Reserved185_IRQHandler
+ def_irq_handler Reserved186_IRQHandler
+ def_irq_handler TMR1_IRQHandler
+ def_irq_handler TMR2_IRQHandler
+ def_irq_handler TMR3_IRQHandler
+ def_irq_handler TMR4_IRQHandler
+ def_irq_handler SEMA4_CP0_IRQHandler
+ def_irq_handler SEMA4_CP1_IRQHandler
+ def_irq_handler PWM2_0_IRQHandler
+ def_irq_handler PWM2_1_IRQHandler
+ def_irq_handler PWM2_2_IRQHandler
+ def_irq_handler PWM2_3_IRQHandler
+ def_irq_handler PWM2_FAULT_IRQHandler
+ def_irq_handler PWM3_0_IRQHandler
+ def_irq_handler PWM3_1_IRQHandler
+ def_irq_handler PWM3_2_IRQHandler
+ def_irq_handler PWM3_3_IRQHandler
+ def_irq_handler PWM3_FAULT_IRQHandler
+ def_irq_handler PWM4_0_IRQHandler
+ def_irq_handler PWM4_1_IRQHandler
+ def_irq_handler PWM4_2_IRQHandler
+ def_irq_handler PWM4_3_IRQHandler
+ def_irq_handler PWM4_FAULT_IRQHandler
+ def_irq_handler Reserved208_IRQHandler
+ def_irq_handler Reserved209_IRQHandler
+ def_irq_handler Reserved210_IRQHandler
+ def_irq_handler Reserved211_IRQHandler
+ def_irq_handler Reserved212_IRQHandler
+ def_irq_handler Reserved213_IRQHandler
+ def_irq_handler Reserved214_IRQHandler
+ def_irq_handler Reserved215_IRQHandler
+ def_irq_handler PDM_HWVAD_EVENT_DriverIRQHandler
+ def_irq_handler PDM_HWVAD_ERROR_DriverIRQHandler
+ def_irq_handler PDM_EVENT_DriverIRQHandler
+ def_irq_handler PDM_ERROR_DriverIRQHandler
+ def_irq_handler EMVSIM1_IRQHandler
+ def_irq_handler EMVSIM2_IRQHandler
+ def_irq_handler MECC1_INT_IRQHandler
+ def_irq_handler MECC1_FATAL_INT_IRQHandler
+ def_irq_handler MECC2_INT_IRQHandler
+ def_irq_handler MECC2_FATAL_INT_IRQHandler
+ def_irq_handler XECC_FLEXSPI1_INT_DriverIRQHandler
+ def_irq_handler XECC_FLEXSPI1_FATAL_INT_DriverIRQHandler
+ def_irq_handler XECC_FLEXSPI2_INT_DriverIRQHandler
+ def_irq_handler XECC_FLEXSPI2_FATAL_INT_DriverIRQHandler
+ def_irq_handler XECC_SEMC_INT_IRQHandler
+ def_irq_handler XECC_SEMC_FATAL_INT_IRQHandler
+ def_irq_handler Reserved232_IRQHandler
+ def_irq_handler Reserved233_IRQHandler
+
+ .end