spi_config.h 3.9 KB
Newer Older
gyd0317's avatar
gyd0317 已提交
1
/*
mysterywolf's avatar
mysterywolf 已提交
2
 * Copyright (c) 2006-2023, RT-Thread Development Team
gyd0317's avatar
gyd0317 已提交
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
 *
 * SPDX-License-Identifier: Apache-2.0
 *
 * Change Logs:
 * Date           Author       Notes
 * 2018-11-06     SummerGift   first version
 * 2019-01-05     SummerGift   modify DMA support
 */

#ifndef __SPI_CONFIG_H__
#define __SPI_CONFIG_H__

#include <rtthread.h>

#ifdef __cplusplus
extern "C" {
#endif

#ifdef BSP_USING_SPI1
#ifndef SPI1_BUS_CONFIG
#define SPI1_BUS_CONFIG                             \
    {                                               \
        .Instance = SPI1,                           \
        .bus_name = "spi1",                         \
whj123999's avatar
whj123999 已提交
27
        .irq_type = SPI1_IRQn,                      \
gyd0317's avatar
gyd0317 已提交
28 29 30
    }
#endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */
mysterywolf's avatar
mysterywolf 已提交
31

gyd0317's avatar
gyd0317 已提交
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
#ifdef BSP_SPI1_TX_USING_DMA
#ifndef SPI1_TX_DMA_CONFIG
#define SPI1_TX_DMA_CONFIG                          \
    {                                               \
        .dma_rcc = SPI1_TX_DMA_RCC,                 \
        .Instance = SPI1_TX_DMA_INSTANCE,           \
        .dma_irq = SPI1_TX_DMA_IRQ,                 \
    }
#endif /* SPI1_TX_DMA_CONFIG */
#endif /* BSP_SPI1_TX_USING_DMA */

#ifdef BSP_SPI1_RX_USING_DMA
#ifndef SPI1_RX_DMA_CONFIG
#define SPI1_RX_DMA_CONFIG                          \
    {                                               \
        .dma_rcc = SPI1_RX_DMA_RCC,                 \
        .Instance = SPI1_RX_DMA_INSTANCE,           \
        .dma_irq = SPI1_RX_DMA_IRQ,                 \
    }
#endif /* SPI1_RX_DMA_CONFIG */
#endif /* BSP_SPI1_RX_USING_DMA */

#ifdef BSP_USING_SPI2
#ifndef SPI2_BUS_CONFIG
#define SPI2_BUS_CONFIG                             \
    {                                               \
        .Instance = SPI2,                           \
        .bus_name = "spi2",                         \
whj123999's avatar
whj123999 已提交
60
        .irq_type = SPI2_IRQn,                      \
gyd0317's avatar
gyd0317 已提交
61 62 63
    }
#endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */
mysterywolf's avatar
mysterywolf 已提交
64

gyd0317's avatar
gyd0317 已提交
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
#ifdef BSP_SPI2_TX_USING_DMA
#ifndef SPI2_TX_DMA_CONFIG
#define SPI2_TX_DMA_CONFIG                          \
    {                                               \
        .dma_rcc  = SPI2_TX_DMA_RCC,                \
        .Instance = SPI2_TX_DMA_INSTANCE,           \
        .dma_irq  = SPI2_TX_DMA_IRQ,                \
    }
#endif /* SPI2_TX_DMA_CONFIG */
#endif /* BSP_SPI2_TX_USING_DMA */

#ifdef BSP_SPI2_RX_USING_DMA
#ifndef SPI2_RX_DMA_CONFIG
#define SPI2_RX_DMA_CONFIG                          \
    {                                               \
        .dma_rcc  = SPI2_RX_DMA_RCC,                \
        .Instance = SPI2_RX_DMA_INSTANCE,           \
        .dma_irq  = SPI2_RX_DMA_IRQ,                \
    }
#endif /* SPI2_RX_DMA_CONFIG */
#endif /* BSP_SPI2_RX_USING_DMA */

#ifdef BSP_USING_SPI3
#ifndef SPI3_BUS_CONFIG
#define SPI3_BUS_CONFIG                             \
    {                                               \
        .Instance = SPI3,                           \
        .bus_name = "spi3",                         \
whj123999's avatar
whj123999 已提交
93
        .irq_type = SPI3_IRQn,                      \
gyd0317's avatar
gyd0317 已提交
94 95 96
    }
#endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */
mysterywolf's avatar
mysterywolf 已提交
97

gyd0317's avatar
gyd0317 已提交
98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
#ifdef BSP_SPI3_TX_USING_DMA
#ifndef SPI3_TX_DMA_CONFIG
#define SPI3_TX_DMA_CONFIG                          \
    {                                               \
        .dma_rcc  = SPI3_TX_DMA_RCC,                \
        .Instance = SPI3_TX_DMA_INSTANCE,           \
        .dma_irq  = SPI3_TX_DMA_IRQ,                \
    }
#endif /* SPI3_TX_DMA_CONFIG */
#endif /* BSP_SPI3_TX_USING_DMA */

#ifdef BSP_SPI3_RX_USING_DMA
#ifndef SPI3_RX_DMA_CONFIG
#define SPI3_RX_DMA_CONFIG                          \
    {                                               \
        .dma_rcc  = SPI3_RX_DMA_RCC,                \
        .Instance = SPI3_RX_DMA_INSTANCE,           \
        .dma_irq  = SPI3_RX_DMA_IRQ,                \
    }
#endif /* SPI3_RX_DMA_CONFIG */
#endif /* BSP_SPI3_RX_USING_DMA */

#ifdef __cplusplus
}
#endif

#endif /*__SPI_CONFIG_H__ */