mirror of
https://github.com/andreili/katapult.git
synced 2025-08-23 19:34:06 +02:00
Synchronize with the latest Klipper code. This pulls in the latest lib/ files (needed to use the pico-sdk v2.0.0 version). It updates to latest can2040 code (needed for pico-sdk v2.0.0 support). It implements USB double buffering (as is now done in Klipper). It adds in support for additional UART pins (as is now done in Klipper). It adds support for rp2350 chips. This replaces the execute in ram code previously implemented in Katapult with the execute in ram code that is now standard in Klipper. The CONFIG_RP2040_ADD_BOOT_SIGNATURE kconfig symbol was removed and the build now always produces a katapult.withclear.uf2 file. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
107 lines
3.0 KiB
C
107 lines
3.0 KiB
C
// THIS HEADER FILE IS AUTOMATICALLY GENERATED -- DO NOT EDIT
|
|
|
|
/**
|
|
* Copyright (c) 2024 Raspberry Pi Ltd.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
#ifndef _INTCTRL_H
|
|
#define _INTCTRL_H
|
|
|
|
/**
|
|
* \file rp2040/intctrl.h
|
|
*/
|
|
|
|
#ifdef __ASSEMBLER__
|
|
#define TIMER_IRQ_0 0
|
|
#define TIMER_IRQ_1 1
|
|
#define TIMER_IRQ_2 2
|
|
#define TIMER_IRQ_3 3
|
|
#define PWM_IRQ_WRAP 4
|
|
#define USBCTRL_IRQ 5
|
|
#define XIP_IRQ 6
|
|
#define PIO0_IRQ_0 7
|
|
#define PIO0_IRQ_1 8
|
|
#define PIO1_IRQ_0 9
|
|
#define PIO1_IRQ_1 10
|
|
#define DMA_IRQ_0 11
|
|
#define DMA_IRQ_1 12
|
|
#define IO_IRQ_BANK0 13
|
|
#define IO_IRQ_QSPI 14
|
|
#define SIO_IRQ_PROC0 15
|
|
#define SIO_IRQ_PROC1 16
|
|
#define CLOCKS_IRQ 17
|
|
#define SPI0_IRQ 18
|
|
#define SPI1_IRQ 19
|
|
#define UART0_IRQ 20
|
|
#define UART1_IRQ 21
|
|
#define ADC_IRQ_FIFO 22
|
|
#define I2C0_IRQ 23
|
|
#define I2C1_IRQ 24
|
|
#define RTC_IRQ 25
|
|
#else
|
|
/**
|
|
* \brief Interrupt numbers on RP2040 (used as typedef \ref irq_num_t)
|
|
* \ingroup hardware_irq
|
|
*/
|
|
typedef enum irq_num_rp2040 {
|
|
TIMER_IRQ_0 = 0, ///< Select TIMER's IRQ 0 output
|
|
TIMER_IRQ_1 = 1, ///< Select TIMER's IRQ 1 output
|
|
TIMER_IRQ_2 = 2, ///< Select TIMER's IRQ 2 output
|
|
TIMER_IRQ_3 = 3, ///< Select TIMER's IRQ 3 output
|
|
PWM_IRQ_WRAP = 4, ///< Select PWM's IRQ_WRAP output
|
|
USBCTRL_IRQ = 5, ///< Select USBCTRL's IRQ output
|
|
XIP_IRQ = 6, ///< Select XIP's IRQ output
|
|
PIO0_IRQ_0 = 7, ///< Select PIO0's IRQ 0 output
|
|
PIO0_IRQ_1 = 8, ///< Select PIO0's IRQ 1 output
|
|
PIO1_IRQ_0 = 9, ///< Select PIO1's IRQ 0 output
|
|
PIO1_IRQ_1 = 10, ///< Select PIO1's IRQ 1 output
|
|
DMA_IRQ_0 = 11, ///< Select DMA's IRQ 0 output
|
|
DMA_IRQ_1 = 12, ///< Select DMA's IRQ 1 output
|
|
IO_IRQ_BANK0 = 13, ///< Select IO_BANK0's IRQ output
|
|
IO_IRQ_QSPI = 14, ///< Select IO_QSPI's IRQ output
|
|
SIO_IRQ_PROC0 = 15, ///< Select SIO_PROC0's IRQ output
|
|
SIO_IRQ_PROC1 = 16, ///< Select SIO_PROC1's IRQ output
|
|
CLOCKS_IRQ = 17, ///< Select CLOCKS's IRQ output
|
|
SPI0_IRQ = 18, ///< Select SPI0's IRQ output
|
|
SPI1_IRQ = 19, ///< Select SPI1's IRQ output
|
|
UART0_IRQ = 20, ///< Select UART0's IRQ output
|
|
UART1_IRQ = 21, ///< Select UART1's IRQ output
|
|
ADC_IRQ_FIFO = 22, ///< Select ADC's IRQ_FIFO output
|
|
I2C0_IRQ = 23, ///< Select I2C0's IRQ output
|
|
I2C1_IRQ = 24, ///< Select I2C1's IRQ output
|
|
RTC_IRQ = 25, ///< Select RTC's IRQ output
|
|
IRQ_COUNT
|
|
} irq_num_t;
|
|
#endif
|
|
|
|
#define isr_timer_0 isr_irq0
|
|
#define isr_timer_1 isr_irq1
|
|
#define isr_timer_2 isr_irq2
|
|
#define isr_timer_3 isr_irq3
|
|
#define isr_pwm_wrap isr_irq4
|
|
#define isr_usbctrl isr_irq5
|
|
#define isr_xip isr_irq6
|
|
#define isr_pio0_0 isr_irq7
|
|
#define isr_pio0_1 isr_irq8
|
|
#define isr_pio1_0 isr_irq9
|
|
#define isr_pio1_1 isr_irq10
|
|
#define isr_dma_0 isr_irq11
|
|
#define isr_dma_1 isr_irq12
|
|
#define isr_io_bank0 isr_irq13
|
|
#define isr_io_qspi isr_irq14
|
|
#define isr_sio_proc0 isr_irq15
|
|
#define isr_sio_proc1 isr_irq16
|
|
#define isr_clocks isr_irq17
|
|
#define isr_spi0 isr_irq18
|
|
#define isr_spi1 isr_irq19
|
|
#define isr_uart0 isr_irq20
|
|
#define isr_uart1 isr_irq21
|
|
#define isr_adc_fifo isr_irq22
|
|
#define isr_i2c0 isr_irq23
|
|
#define isr_i2c1 isr_irq24
|
|
#define isr_rtc isr_irq25
|
|
|
|
#endif // _INTCTRL_H
|
|
|