1 /* 2 * Copyright (c) 2006-2021, RT-Thread Development Team 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 * 6 * Change Logs: 7 * Date Author Notes 8 * 2024-08-30 shelton first version 9 */ 10 11 #ifndef __SPI_CONFIG_H__ 12 #define __SPI_CONFIG_H__ 13 14 #include <rtthread.h> 15 #include "dma_config.h" 16 17 #ifdef __cplusplus 18 extern "C" { 19 #endif 20 21 #define SPI1_IRQHandler SPI1_IRQHandler 22 #define SPI2_IRQHandler SPI2_IRQHandler 23 24 #ifdef BSP_USING_SPI1 25 #define SPI1_CONFIG \ 26 { \ 27 .spi_x = SPI1, \ 28 .spi_name = "spi1", \ 29 .irqn = SPI1_IRQn, \ 30 } 31 #endif /* BSP_USING_SPI1 */ 32 33 #ifdef BSP_SPI1_RX_USING_DMA 34 #define SPI1_RX_DMA_CONFIG \ 35 { \ 36 .dma_channel = SPI1_RX_DMA_CHANNEL, \ 37 .dma_clock = SPI1_RX_DMA_CLOCK, \ 38 .dma_irqn = SPI1_RX_DMA_IRQ, \ 39 .dmamux_channel = SPI1_RX_DMA_MUX_CHANNEL, \ 40 .request_id = SPI1_RX_DMA_REQ_ID, \ 41 } 42 #endif /* BSP_SPI1_RX_USING_DMA */ 43 44 #ifdef BSP_SPI1_TX_USING_DMA 45 #define SPI1_TX_DMA_CONFIG \ 46 { \ 47 .dma_channel = SPI1_TX_DMA_CHANNEL, \ 48 .dma_clock = SPI1_TX_DMA_CLOCK, \ 49 .dma_irqn = SPI1_TX_DMA_IRQ, \ 50 .dmamux_channel = SPI1_TX_DMA_MUX_CHANNEL, \ 51 .request_id = SPI1_TX_DMA_REQ_ID, \ 52 } 53 #endif /* BSP_SPI1_TX_USING_DMA */ 54 55 #ifdef BSP_USING_SPI2 56 #define SPI2_CONFIG \ 57 { \ 58 .spi_x = SPI2, \ 59 .spi_name = "spi2", \ 60 .irqn = SPI2_IRQn, \ 61 } 62 #endif /* BSP_USING_SPI2 */ 63 64 #ifdef BSP_SPI2_RX_USING_DMA 65 #define SPI2_RX_DMA_CONFIG \ 66 { \ 67 .dma_channel = SPI2_RX_DMA_CHANNEL, \ 68 .dma_clock = SPI2_RX_DMA_CLOCK, \ 69 .dma_irqn = SPI2_RX_DMA_IRQ, \ 70 .dmamux_channel = SPI2_RX_DMA_MUX_CHANNEL, \ 71 .request_id = SPI2_RX_DMA_REQ_ID, \ 72 } 73 #endif /* BSP_SPI2_RX_USING_DMA */ 74 75 #ifdef BSP_SPI2_TX_USING_DMA 76 #define SPI2_TX_DMA_CONFIG \ 77 { \ 78 .dma_channel = SPI2_TX_DMA_CHANNEL, \ 79 .dma_clock = SPI2_TX_DMA_CLOCK, \ 80 .dma_irqn = SPI2_TX_DMA_IRQ, \ 81 .dmamux_channel = SPI2_TX_DMA_MUX_CHANNEL, \ 82 .request_id = SPI2_TX_DMA_REQ_ID, \ 83 } 84 #endif /* BSP_SPI2_TX_USING_DMA */ 85 86 #ifdef __cplusplus 87 } 88 #endif 89 90 #endif /*__SPI_CONFIG_H__ */ 91 92 93 94