spi_config.h 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  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. * 2018-11-06 SummerGift first version
  9. * 2019-01-05 SummerGift modify DMA support
  10. */
  11. #ifndef __SPI_CONFIG_H__
  12. #define __SPI_CONFIG_H__
  13. #include <rtthread.h>
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif
  17. #ifdef BSP_USING_SPI1
  18. #ifndef SPI1_BUS_CONFIG
  19. #define SPI1_BUS_CONFIG \
  20. { \
  21. .Instance = SPI1, \
  22. .bus_name = "spi1", \
  23. .irq_type = SPI1_IRQn, \
  24. }
  25. #endif /* SPI1_BUS_CONFIG */
  26. #endif /* BSP_USING_SPI1 */
  27. #ifdef BSP_SPI1_TX_USING_DMA
  28. #ifndef SPI1_TX_DMA_CONFIG
  29. #define SPI1_TX_DMA_CONFIG \
  30. { \
  31. .dma_rcc = SPI1_TX_DMA_RCC, \
  32. .Instance = SPI1_TX_DMA_INSTANCE, \
  33. .dma_irq = SPI1_TX_DMA_IRQ, \
  34. }
  35. #endif /* SPI1_TX_DMA_CONFIG */
  36. #endif /* BSP_SPI1_TX_USING_DMA */
  37. #ifdef BSP_SPI1_RX_USING_DMA
  38. #ifndef SPI1_RX_DMA_CONFIG
  39. #define SPI1_RX_DMA_CONFIG \
  40. { \
  41. .dma_rcc = SPI1_RX_DMA_RCC, \
  42. .Instance = SPI1_RX_DMA_INSTANCE, \
  43. .dma_irq = SPI1_RX_DMA_IRQ, \
  44. }
  45. #endif /* SPI1_RX_DMA_CONFIG */
  46. #endif /* BSP_SPI1_RX_USING_DMA */
  47. #ifdef BSP_USING_SPI2
  48. #ifndef SPI2_BUS_CONFIG
  49. #define SPI2_BUS_CONFIG \
  50. { \
  51. .Instance = SPI2, \
  52. .bus_name = "spi2", \
  53. .irq_type = SPI2_IRQn, \
  54. }
  55. #endif /* SPI2_BUS_CONFIG */
  56. #endif /* BSP_USING_SPI2 */
  57. #ifdef BSP_SPI2_TX_USING_DMA
  58. #ifndef SPI2_TX_DMA_CONFIG
  59. #define SPI2_TX_DMA_CONFIG \
  60. { \
  61. .dma_rcc = SPI2_TX_DMA_RCC, \
  62. .Instance = SPI2_TX_DMA_INSTANCE, \
  63. .dma_irq = SPI2_TX_DMA_IRQ, \
  64. }
  65. #endif /* SPI2_TX_DMA_CONFIG */
  66. #endif /* BSP_SPI2_TX_USING_DMA */
  67. #ifdef BSP_SPI2_RX_USING_DMA
  68. #ifndef SPI2_RX_DMA_CONFIG
  69. #define SPI2_RX_DMA_CONFIG \
  70. { \
  71. .dma_rcc = SPI2_RX_DMA_RCC, \
  72. .Instance = SPI2_RX_DMA_INSTANCE, \
  73. .dma_irq = SPI2_RX_DMA_IRQ, \
  74. }
  75. #endif /* SPI2_RX_DMA_CONFIG */
  76. #endif /* BSP_SPI2_RX_USING_DMA */
  77. #ifdef __cplusplus
  78. }
  79. #endif
  80. #endif /*__SPI_CONFIG_H__ */