rename_exceptions.h
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#define isr_nmi NMI_Handler
20#define isr_hardfault HardFault_Handler
21#define isr_svcall SVC_Handler
22#define isr_pendsv PendSV_Handler
23#define isr_systick SysTick_Handler
24#define isr_irq0 TIMER_IRQ_0_Handler
25#define isr_irq1 TIMER_IRQ_1_Handler
26#define isr_irq2 TIMER_IRQ_2_Handler
27#define isr_irq3 TIMER_IRQ_3_Handler
28#define isr_irq4 PWM_IRQ_WRAP_Handler
29#define isr_irq5 USBCTRL_IRQ_Handler
30#define isr_irq6 XIP_IRQ_Handler
31#define isr_irq7 PIO0_IRQ_0_Handler
32#define isr_irq8 PIO0_IRQ_1_Handler
33#define isr_irq9 PIO1_IRQ_0_Handler
34#define isr_irq10 PIO1_IRQ_1_Handler
35#define isr_irq11 DMA_IRQ_0_Handler
36#define isr_irq12 DMA_IRQ_1_Handler
37#define isr_irq13 IO_IRQ_BANK0_Handler
38#define isr_irq14 IO_IRQ_QSPI_Handler
39#define isr_irq15 SIO_IRQ_PROC0_Handler
40#define isr_irq16 SIO_IRQ_PROC1_Handler
41#define isr_irq17 CLOCKS_IRQ_Handler
42#define isr_irq18 SPI0_IRQ_Handler
43#define isr_irq19 SPI1_IRQ_Handler
44#define isr_irq20 UART0_IRQ_Handler
45#define isr_irq21 UART1_IRQ_Handler
46#define isr_irq22 ADC_IRQ_FIFO_Handler
47#define isr_irq23 I2C0_IRQ_Handler
48#define isr_irq24 I2C1_IRQ_Handler
49#define isr_irq25 RTC_IRQ_Handler
50#endif
51
52#endif
53#endif /* _CMSIS_RENAME_EXCEPTIONS_H */