mirror of
https://github.com/Klipper3d/klipper.git
synced 2025-07-13 09:48:00 -06:00
lib: Add rp2040 build files
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
1b79ffcad2
commit
cc0969dd05
88 changed files with 58874 additions and 0 deletions
109
lib/rp2040/cmsis_include/RP2040.h
Normal file
109
lib/rp2040/cmsis_include/RP2040.h
Normal file
|
@ -0,0 +1,109 @@
|
|||
/*************************************************************************//**
|
||||
* @file RP2040.h
|
||||
* @brief CMSIS-Core(M) Device Peripheral Access Layer Header File for
|
||||
* Device RP2040
|
||||
* @version V1.0.0
|
||||
* @date 5. May 2021
|
||||
*****************************************************************************/
|
||||
/*
|
||||
* Copyright (c) 2009-2021 Arm Limited. All rights reserved.
|
||||
* Copyright (c) 2020 Raspberry Pi (Trading) Ltd.
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the License); you may
|
||||
* not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
|
||||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
||||
#ifndef _CMSIS_RP2040_H_
|
||||
#define _CMSIS_RP2040_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* =========================================================================================================================== */
|
||||
/* ================ Interrupt Number Definition ================ */
|
||||
/* =========================================================================================================================== */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
/* ======================================= ARM Cortex-M0+ Specific Interrupt Numbers ======================================= */
|
||||
Reset_IRQn = -15, /*!< -15 Reset Vector, invoked on Power up and warm reset */
|
||||
NonMaskableInt_IRQn = -14, /*!< -14 Non maskable Interrupt, cannot be stopped or preempted */
|
||||
HardFault_IRQn = -13, /*!< -13 Hard Fault, all classes of Fault */
|
||||
SVCall_IRQn = -5, /*!< -5 System Service Call via SVC instruction */
|
||||
PendSV_IRQn = -2, /*!< -2 Pendable request for system service */
|
||||
SysTick_IRQn = -1, /*!< -1 System Tick Timer */
|
||||
/* =========================================== RP2040 Specific Interrupt Numbers =========================================== */
|
||||
TIMER_IRQ_0_IRQn = 0, /*!< 0 TIMER_IRQ_0 */
|
||||
TIMER_IRQ_1_IRQn = 1, /*!< 1 TIMER_IRQ_1 */
|
||||
TIMER_IRQ_2_IRQn = 2, /*!< 2 TIMER_IRQ_2 */
|
||||
TIMER_IRQ_3_IRQn = 3, /*!< 3 TIMER_IRQ_3 */
|
||||
PWM_IRQ_WRAP_IRQn = 4, /*!< 4 PWM_IRQ_WRAP */
|
||||
USBCTRL_IRQ_IRQn = 5, /*!< 5 USBCTRL_IRQ */
|
||||
XIP_IRQ_IRQn = 6, /*!< 6 XIP_IRQ */
|
||||
PIO0_IRQ_0_IRQn = 7, /*!< 7 PIO0_IRQ_0 */
|
||||
PIO0_IRQ_1_IRQn = 8, /*!< 8 PIO0_IRQ_1 */
|
||||
PIO1_IRQ_0_IRQn = 9, /*!< 9 PIO1_IRQ_0 */
|
||||
PIO1_IRQ_1_IRQn = 10, /*!< 10 PIO1_IRQ_1 */
|
||||
DMA_IRQ_0_IRQn = 11, /*!< 11 DMA_IRQ_0 */
|
||||
DMA_IRQ_1_IRQn = 12, /*!< 12 DMA_IRQ_1 */
|
||||
IO_IRQ_BANK0_IRQn = 13, /*!< 13 IO_IRQ_BANK0 */
|
||||
IO_IRQ_QSPI_IRQn = 14, /*!< 14 IO_IRQ_QSPI */
|
||||
SIO_IRQ_PROC0_IRQn = 15, /*!< 15 SIO_IRQ_PROC0 */
|
||||
SIO_IRQ_PROC1_IRQn = 16, /*!< 16 SIO_IRQ_PROC1 */
|
||||
CLOCKS_IRQ_IRQn = 17, /*!< 17 CLOCKS_IRQ */
|
||||
SPI0_IRQ_IRQn = 18, /*!< 18 SPI0_IRQ */
|
||||
SPI1_IRQ_IRQn = 19, /*!< 19 SPI1_IRQ */
|
||||
UART0_IRQ_IRQn = 20, /*!< 20 UART0_IRQ */
|
||||
UART1_IRQ_IRQn = 21, /*!< 21 UART1_IRQ */
|
||||
ADC_IRQ_FIFO_IRQn = 22, /*!< 22 ADC_IRQ_FIFO */
|
||||
I2C0_IRQ_IRQn = 23, /*!< 23 I2C0_IRQ */
|
||||
I2C1_IRQ_IRQn = 24, /*!< 24 I2C1_IRQ */
|
||||
RTC_IRQ_IRQn = 25 /*!< 25 RTC_IRQ */
|
||||
} IRQn_Type;
|
||||
|
||||
/* =========================================================================================================================== */
|
||||
/* ================ Processor and Core Peripheral Section ================ */
|
||||
/* =========================================================================================================================== */
|
||||
|
||||
/* ========================== Configuration of the ARM Cortex-M0+ Processor and Core Peripherals =========================== */
|
||||
#define __CM0PLUS_REV 0x0001U /*!< CM0PLUS Core Revision */
|
||||
#define __NVIC_PRIO_BITS 2 /*!< Number of Bits used for Priority Levels */
|
||||
#define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */
|
||||
#define __VTOR_PRESENT 1 /*!< Set to 1 if CPU supports Vector Table Offset Register */
|
||||
#define __MPU_PRESENT 1 /*!< MPU present */
|
||||
#define __FPU_PRESENT 0 /*!< FPU present */
|
||||
|
||||
/** @} */ /* End of group Configuration_of_CMSIS */
|
||||
|
||||
#include "core_cm0plus.h" /*!< ARM Cortex-M0+ processor and core peripherals */
|
||||
#include "system_RP2040.h" /*!< RP2040 System */
|
||||
|
||||
#ifndef __IM /*!< Fallback for older CMSIS versions */
|
||||
#define __IM __I
|
||||
#endif
|
||||
#ifndef __OM /*!< Fallback for older CMSIS versions */
|
||||
#define __OM __O
|
||||
#endif
|
||||
#ifndef __IOM /*!< Fallback for older CMSIS versions */
|
||||
#define __IOM __IO
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _CMSIS_RP2040_H */
|
Loading…
Add table
Add a link
Reference in a new issue