1 /* 2 * Copyright (c) 2020 Raspberry Pi (Trading) Ltd. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef _CMSIS_RENAME_EXCEPTIONS_H 8 #define _CMSIS_RENAME_EXCEPTIONS_H 9 10 #if LIB_CMSIS_CORE 11 // PICO_CONFIG: PICO_CMSIS_RENAME_EXCEPTIONS, Whether to rename SDK exceptions such as isr_nmi to their CMSIS equivalent i.e. NMI_Handler, type=bool, default=1, group=cmsis_core 12 13 // Note that since this header is included at the config stage, if you wish to override this you should do so via build compiler define 14 #ifndef PICO_CMSIS_RENAME_EXCEPTIONS 15 #define PICO_CMSIS_RENAME_EXCEPTIONS 1 16 #endif 17 18 #if PICO_CMSIS_RENAME_EXCEPTIONS 19 #if PICO_RP2040 20 #define isr_nmi NMI_Handler 21 #define isr_hardfault HardFault_Handler 22 #define isr_svcall SVC_Handler 23 #define isr_pendsv PendSV_Handler 24 #define isr_systick SysTick_Handler 25 #define isr_irq0 TIMER_IRQ_0_Handler 26 #define isr_irq1 TIMER_IRQ_1_Handler 27 #define isr_irq2 TIMER_IRQ_2_Handler 28 #define isr_irq3 TIMER_IRQ_3_Handler 29 #define isr_irq4 PWM_IRQ_WRAP_Handler 30 #define isr_irq5 USBCTRL_IRQ_Handler 31 #define isr_irq6 XIP_IRQ_Handler 32 #define isr_irq7 PIO0_IRQ_0_Handler 33 #define isr_irq8 PIO0_IRQ_1_Handler 34 #define isr_irq9 PIO1_IRQ_0_Handler 35 #define isr_irq10 PIO1_IRQ_1_Handler 36 #define isr_irq11 DMA_IRQ_0_Handler 37 #define isr_irq12 DMA_IRQ_1_Handler 38 #define isr_irq13 IO_IRQ_BANK0_Handler 39 #define isr_irq14 IO_IRQ_QSPI_Handler 40 #define isr_irq15 SIO_IRQ_PROC0_Handler 41 #define isr_irq16 SIO_IRQ_PROC1_Handler 42 #define isr_irq17 CLOCKS_IRQ_Handler 43 #define isr_irq18 SPI0_IRQ_Handler 44 #define isr_irq19 SPI1_IRQ_Handler 45 #define isr_irq20 UART0_IRQ_Handler 46 #define isr_irq21 UART1_IRQ_Handler 47 #define isr_irq22 ADC_IRQ_FIFO_Handler 48 #define isr_irq23 I2C0_IRQ_Handler 49 #define isr_irq24 I2C1_IRQ_Handler 50 #define isr_irq25 RTC_IRQ_Handler 51 #endif 52 #if PICO_RP2350 53 #define isr_nmi NMI_Handler 54 #define isr_hardfault HardFault_Handler 55 #define isr_svcall SVC_Handler 56 #define isr_pendsv PendSV_Handler 57 #define isr_systick SysTick_Handler 58 #define isr_irq0 TIMER0_IRQ_0_Handler 59 #define isr_irq1 TIMER0_IRQ_1_Handler 60 #define isr_irq2 TIMER0_IRQ_2_Handler 61 #define isr_irq3 TIMER0_IRQ_3_Handler 62 #define isr_irq4 TIMER1_IRQ_0_Handler 63 #define isr_irq5 TIMER1_IRQ_1_Handler 64 #define isr_irq6 TIMER1_IRQ_2_Handler 65 #define isr_irq7 TIMER1_IRQ_3_Handler 66 #define isr_irq8 PWM_IRQ_WRAP_0_Handler 67 #define isr_irq9 PWM_IRQ_WRAP_1_Handler 68 #define isr_irq10 DMA_IRQ_0_Handler 69 #define isr_irq11 DMA_IRQ_1_Handler 70 #define isr_irq12 DMA_IRQ_2_Handler 71 #define isr_irq13 DMA_IRQ_3_Handler 72 #define isr_irq14 USBCTRL_IRQ_Handler 73 #define isr_irq15 PIO0_IRQ_0_Handler 74 #define isr_irq16 PIO0_IRQ_1_Handler 75 #define isr_irq17 PIO1_IRQ_0_Handler 76 #define isr_irq18 PIO1_IRQ_1_Handler 77 #define isr_irq19 PIO2_IRQ_0_Handler 78 #define isr_irq20 PIO2_IRQ_1_Handler 79 #define isr_irq21 IO_IRQ_BANK0_Handler 80 #define isr_irq22 IO_IRQ_BANK0_NS_Handler 81 #define isr_irq23 IO_IRQ_QSPI_Handler 82 #define isr_irq24 IO_IRQ_QSPI_NS_Handler 83 #define isr_irq25 SIO_IRQ_FIFO_Handler 84 #define isr_irq26 SIO_IRQ_BELL_Handler 85 #define isr_irq27 SIO_IRQ_FIFO_NS_Handler 86 #define isr_irq28 SIO_IRQ_BELL_NS_Handler 87 #define isr_irq29 SIO_IRQ_MTIMECMP_Handler 88 #define isr_irq30 CLOCKS_IRQ_Handler 89 #define isr_irq31 SPI0_IRQ_Handler 90 #define isr_irq32 SPI1_IRQ_Handler 91 #define isr_irq33 UART0_IRQ_Handler 92 #define isr_irq34 UART1_IRQ_Handler 93 #define isr_irq35 ADC_IRQ_FIFO_Handler 94 #define isr_irq36 I2C0_IRQ_Handler 95 #define isr_irq37 I2C1_IRQ_Handler 96 #define isr_irq38 OTP_IRQ_Handler 97 #define isr_irq39 TRNG_IRQ_Handler 98 #define isr_irq42 PLL_SYS_IRQ_Handler 99 #define isr_irq43 PLL_USB_IRQ_Handler 100 #define isr_irq44 POWMAN_IRQ_POW_Handler 101 #define isr_irq45 POWMAN_IRQ_TIMER_Handler 102 #endif 103 #endif 104 105 #endif 106 #endif /* _CMSIS_RENAME_EXCEPTIONS_H */ 107