1 // THIS HEADER FILE IS AUTOMATICALLY GENERATED -- DO NOT EDIT 2 3 /** 4 * Copyright (c) 2024 Raspberry Pi Ltd. 5 * 6 * SPDX-License-Identifier: BSD-3-Clause 7 */ 8 #ifndef _DREQ_H 9 #define _DREQ_H 10 11 /** 12 * \file rp2040/dreq.h 13 */ 14 15 #ifdef __ASSEMBLER__ 16 #define DREQ_PIO0_TX0 0 17 #define DREQ_PIO0_TX1 1 18 #define DREQ_PIO0_TX2 2 19 #define DREQ_PIO0_TX3 3 20 #define DREQ_PIO0_RX0 4 21 #define DREQ_PIO0_RX1 5 22 #define DREQ_PIO0_RX2 6 23 #define DREQ_PIO0_RX3 7 24 #define DREQ_PIO1_TX0 8 25 #define DREQ_PIO1_TX1 9 26 #define DREQ_PIO1_TX2 10 27 #define DREQ_PIO1_TX3 11 28 #define DREQ_PIO1_RX0 12 29 #define DREQ_PIO1_RX1 13 30 #define DREQ_PIO1_RX2 14 31 #define DREQ_PIO1_RX3 15 32 #define DREQ_SPI0_TX 16 33 #define DREQ_SPI0_RX 17 34 #define DREQ_SPI1_TX 18 35 #define DREQ_SPI1_RX 19 36 #define DREQ_UART0_TX 20 37 #define DREQ_UART0_RX 21 38 #define DREQ_UART1_TX 22 39 #define DREQ_UART1_RX 23 40 #define DREQ_PWM_WRAP0 24 41 #define DREQ_PWM_WRAP1 25 42 #define DREQ_PWM_WRAP2 26 43 #define DREQ_PWM_WRAP3 27 44 #define DREQ_PWM_WRAP4 28 45 #define DREQ_PWM_WRAP5 29 46 #define DREQ_PWM_WRAP6 30 47 #define DREQ_PWM_WRAP7 31 48 #define DREQ_I2C0_TX 32 49 #define DREQ_I2C0_RX 33 50 #define DREQ_I2C1_TX 34 51 #define DREQ_I2C1_RX 35 52 #define DREQ_ADC 36 53 #define DREQ_XIP_STREAM 37 54 #define DREQ_XIP_SSITX 38 55 #define DREQ_XIP_SSIRX 39 56 #define DREQ_DMA_TIMER0 59 57 #define DREQ_DMA_TIMER1 60 58 #define DREQ_DMA_TIMER2 61 59 #define DREQ_DMA_TIMER3 62 60 #define DREQ_FORCE 63 61 #else 62 /** 63 * \brief DREQ numbers for DMA pacing on RP2040 (used as typedef \ref dreq_num_t) 64 * \ingroup hardware_dma 65 */ 66 typedef enum dreq_num_rp2040 { 67 DREQ_PIO0_TX0 = 0, ///< Select PIO0's TX FIFO 0 as DREQ 68 DREQ_PIO0_TX1 = 1, ///< Select PIO0's TX FIFO 1 as DREQ 69 DREQ_PIO0_TX2 = 2, ///< Select PIO0's TX FIFO 2 as DREQ 70 DREQ_PIO0_TX3 = 3, ///< Select PIO0's TX FIFO 3 as DREQ 71 DREQ_PIO0_RX0 = 4, ///< Select PIO0's RX FIFO 0 as DREQ 72 DREQ_PIO0_RX1 = 5, ///< Select PIO0's RX FIFO 1 as DREQ 73 DREQ_PIO0_RX2 = 6, ///< Select PIO0's RX FIFO 2 as DREQ 74 DREQ_PIO0_RX3 = 7, ///< Select PIO0's RX FIFO 3 as DREQ 75 DREQ_PIO1_TX0 = 8, ///< Select PIO1's TX FIFO 0 as DREQ 76 DREQ_PIO1_TX1 = 9, ///< Select PIO1's TX FIFO 1 as DREQ 77 DREQ_PIO1_TX2 = 10, ///< Select PIO1's TX FIFO 2 as DREQ 78 DREQ_PIO1_TX3 = 11, ///< Select PIO1's TX FIFO 3 as DREQ 79 DREQ_PIO1_RX0 = 12, ///< Select PIO1's RX FIFO 0 as DREQ 80 DREQ_PIO1_RX1 = 13, ///< Select PIO1's RX FIFO 1 as DREQ 81 DREQ_PIO1_RX2 = 14, ///< Select PIO1's RX FIFO 2 as DREQ 82 DREQ_PIO1_RX3 = 15, ///< Select PIO1's RX FIFO 3 as DREQ 83 DREQ_SPI0_TX = 16, ///< Select SPI0's TX FIFO as DREQ 84 DREQ_SPI0_RX = 17, ///< Select SPI0's RX FIFO as DREQ 85 DREQ_SPI1_TX = 18, ///< Select SPI1's TX FIFO as DREQ 86 DREQ_SPI1_RX = 19, ///< Select SPI1's RX FIFO as DREQ 87 DREQ_UART0_TX = 20, ///< Select UART0's TX FIFO as DREQ 88 DREQ_UART0_RX = 21, ///< Select UART0's RX FIFO as DREQ 89 DREQ_UART1_TX = 22, ///< Select UART1's TX FIFO as DREQ 90 DREQ_UART1_RX = 23, ///< Select UART1's RX FIFO as DREQ 91 DREQ_PWM_WRAP0 = 24, ///< Select PWM Counter 0's Wrap Value as DREQ 92 DREQ_PWM_WRAP1 = 25, ///< Select PWM Counter 1's Wrap Value as DREQ 93 DREQ_PWM_WRAP2 = 26, ///< Select PWM Counter 2's Wrap Value as DREQ 94 DREQ_PWM_WRAP3 = 27, ///< Select PWM Counter 3's Wrap Value as DREQ 95 DREQ_PWM_WRAP4 = 28, ///< Select PWM Counter 4's Wrap Value as DREQ 96 DREQ_PWM_WRAP5 = 29, ///< Select PWM Counter 5's Wrap Value as DREQ 97 DREQ_PWM_WRAP6 = 30, ///< Select PWM Counter 6's Wrap Value as DREQ 98 DREQ_PWM_WRAP7 = 31, ///< Select PWM Counter 7's Wrap Value as DREQ 99 DREQ_I2C0_TX = 32, ///< Select I2C0's TX FIFO as DREQ 100 DREQ_I2C0_RX = 33, ///< Select I2C0's RX FIFO as DREQ 101 DREQ_I2C1_TX = 34, ///< Select I2C1's TX FIFO as DREQ 102 DREQ_I2C1_RX = 35, ///< Select I2C1's RX FIFO as DREQ 103 DREQ_ADC = 36, ///< Select the ADC as DREQ 104 DREQ_XIP_STREAM = 37, ///< Select the XIP Streaming FIFO as DREQ 105 DREQ_XIP_SSITX = 38, ///< Select the XIP SSI TX FIFO as DREQ 106 DREQ_XIP_SSIRX = 39, ///< Select the XIP SSI RX FIFO as DREQ 107 DREQ_DMA_TIMER0 = 59, ///< Select DMA_TIMER0 as DREQ 108 DREQ_DMA_TIMER1 = 60, ///< Select DMA_TIMER0 as DREQ 109 DREQ_DMA_TIMER2 = 61, ///< Select DMA_TIMER1 as DREQ 110 DREQ_DMA_TIMER3 = 62, ///< Select DMA_TIMER3 as DREQ 111 DREQ_FORCE = 63, ///< Select FORCE as DREQ 112 DREQ_COUNT 113 } dreq_num_t; 114 #endif 115 116 #endif // _DREQ_H 117 118