spi_config.h 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  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. */
  10. #ifndef __SPI_CONFIG_H__
  11. #define __SPI_CONFIG_H__
  12. #include <rtthread.h>
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. #ifdef BSP_USING_SPI1
  17. #ifndef SPI1_BUS_CONFIG
  18. #define SPI1_BUS_CONFIG \
  19. { \
  20. .Instance = SPI1, \
  21. .bus_name = "spi1", \
  22. .irq_type = SPI1_IRQn, \
  23. }
  24. #endif /* SPI1_BUS_CONFIG */
  25. #endif /* BSP_USING_SPI1 */
  26. #ifdef BSP_SPI1_TX_USING_DMA
  27. #ifndef SPI1_TX_DMA_CONFIG
  28. #define SPI1_TX_DMA_CONFIG \
  29. { \
  30. .dma_rcc = SPI1_TX_DMA_RCC, \
  31. .Instance = SPI1_TX_DMA_INSTANCE, \
  32. .request = SPI1_TX_DMA_CHANNEL, \
  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. .request = SPI1_RX_DMA_CHANNEL, \
  44. .dma_irq = SPI1_RX_DMA_IRQ, \
  45. }
  46. #endif /* SPI1_RX_DMA_CONFIG */
  47. #endif /* BSP_SPI1_RX_USING_DMA */
  48. #ifdef BSP_USING_SPI2
  49. #ifndef SPI2_BUS_CONFIG
  50. #define SPI2_BUS_CONFIG \
  51. { \
  52. .Instance = SPI2, \
  53. .bus_name = "spi2", \
  54. .irq_type = SPI2_IRQn, \
  55. }
  56. #endif /* SPI2_BUS_CONFIG */
  57. #endif /* BSP_USING_SPI2 */
  58. #ifdef BSP_SPI2_TX_USING_DMA
  59. #ifndef SPI2_TX_DMA_CONFIG
  60. #define SPI2_TX_DMA_CONFIG \
  61. { \
  62. .dma_rcc = SPI2_TX_DMA_RCC, \
  63. .Instance = SPI2_TX_DMA_INSTANCE, \
  64. .request = SPI2_TX_DMA_CHANNEL, \
  65. .dma_irq = SPI2_TX_DMA_IRQ, \
  66. }
  67. #endif /* SPI2_TX_DMA_CONFIG */
  68. #endif /* BSP_SPI2_TX_USING_DMA */
  69. #ifdef BSP_SPI2_RX_USING_DMA
  70. #ifndef SPI2_RX_DMA_CONFIG
  71. #define SPI2_RX_DMA_CONFIG \
  72. { \
  73. .dma_rcc = SPI2_RX_DMA_RCC, \
  74. .Instance = SPI2_RX_DMA_INSTANCE, \
  75. .request = SPI2_RX_DMA_CHANNEL, \
  76. .dma_irq = SPI2_RX_DMA_IRQ, \
  77. }
  78. #endif /* SPI2_RX_DMA_CONFIG */
  79. #endif /* BSP_SPI2_RX_USING_DMA */
  80. #ifdef BSP_USING_SPI3
  81. #ifndef SPI3_BUS_CONFIG
  82. #define SPI3_BUS_CONFIG \
  83. { \
  84. .Instance = SPI3, \
  85. .bus_name = "spi3", \
  86. .irq_type = SPI3_IRQn, \
  87. }
  88. #endif /* SPI3_BUS_CONFIG */
  89. #endif /* BSP_USING_SPI3 */
  90. #ifdef BSP_SPI3_TX_USING_DMA
  91. #ifndef SPI3_TX_DMA_CONFIG
  92. #define SPI3_TX_DMA_CONFIG \
  93. { \
  94. .dma_rcc = SPI3_TX_DMA_RCC, \
  95. .Instance = SPI3_TX_DMA_INSTANCE, \
  96. .request = SPI3_TX_DMA_CHANNEL, \
  97. .dma_irq = SPI3_TX_DMA_IRQ, \
  98. }
  99. #endif /* SPI3_TX_DMA_CONFIG */
  100. #endif /* BSP_SPI3_TX_USING_DMA */
  101. #ifdef BSP_SPI3_RX_USING_DMA
  102. #ifndef SPI3_RX_DMA_CONFIG
  103. #define SPI3_RX_DMA_CONFIG \
  104. { \
  105. .dma_rcc = SPI3_RX_DMA_RCC, \
  106. .Instance = SPI3_RX_DMA_INSTANCE, \
  107. .request = SPI3_RX_DMA_CHANNEL, \
  108. .dma_irq = SPI3_RX_DMA_IRQ, \
  109. }
  110. #endif /* SPI3_RX_DMA_CONFIG */
  111. #endif /* BSP_SPI3_RX_USING_DMA */
  112. #ifdef BSP_USING_SPI4
  113. #ifndef SPI4_BUS_CONFIG
  114. #define SPI4_BUS_CONFIG \
  115. { \
  116. .Instance = SPI4, \
  117. .bus_name = "spi4", \
  118. .irq_type = SPI4_IRQn, \
  119. }
  120. #endif /* SPI4_BUS_CONFIG */
  121. #endif /* BSP_USING_SPI4 */
  122. #ifdef BSP_SPI4_TX_USING_DMA
  123. #ifndef SPI4_TX_DMA_CONFIG
  124. #define SPI4_TX_DMA_CONFIG \
  125. { \
  126. .dma_rcc = SPI4_TX_DMA_RCC, \
  127. .Instance = SPI4_TX_DMA_INSTANCE, \
  128. .request = SPI4_TX_DMA_CHANNEL, \
  129. .dma_irq = SPI4_TX_DMA_IRQ, \
  130. }
  131. #endif /* SPI4_TX_DMA_CONFIG */
  132. #endif /* BSP_SPI4_TX_USING_DMA */
  133. #ifdef BSP_SPI4_RX_USING_DMA
  134. #ifndef SPI4_RX_DMA_CONFIG
  135. #define SPI4_RX_DMA_CONFIG \
  136. { \
  137. .dma_rcc = SPI4_RX_DMA_RCC, \
  138. .Instance = SPI4_RX_DMA_INSTANCE, \
  139. .request = SPI4_RX_DMA_CHANNEL, \
  140. .dma_irq = SPI4_RX_DMA_IRQ, \
  141. }
  142. #endif /* SPI4_RX_DMA_CONFIG */
  143. #endif /* BSP_SPI4_RX_USING_DMA */
  144. #ifdef BSP_USING_SPI5
  145. #ifndef SPI5_BUS_CONFIG
  146. #define SPI5_BUS_CONFIG \
  147. { \
  148. .Instance = SPI5, \
  149. .bus_name = "spi5", \
  150. .irq_type = SPI5_IRQn, \
  151. }
  152. #endif /* SPI5_BUS_CONFIG */
  153. #endif /* BSP_USING_SPI5 */
  154. #ifdef BSP_SPI5_TX_USING_DMA
  155. #ifndef SPI5_TX_DMA_CONFIG
  156. #define SPI5_TX_DMA_CONFIG \
  157. { \
  158. .dma_rcc = SPI5_TX_DMA_RCC, \
  159. .Instance = SPI5_TX_DMA_INSTANCE, \
  160. .request = SPI5_TX_DMA_CHANNEL, \
  161. .dma_irq = SPI5_TX_DMA_IRQ, \
  162. }
  163. #endif /* SPI5_TX_DMA_CONFIG */
  164. #endif /* BSP_SPI5_TX_USING_DMA */
  165. #ifdef BSP_SPI5_RX_USING_DMA
  166. #ifndef SPI5_RX_DMA_CONFIG
  167. #define SPI5_RX_DMA_CONFIG \
  168. { \
  169. .dma_rcc = SPI5_RX_DMA_RCC, \
  170. .Instance = SPI5_RX_DMA_INSTANCE, \
  171. .request = SPI5_RX_DMA_CHANNEL, \
  172. .dma_irq = SPI5_RX_DMA_IRQ, \
  173. }
  174. #endif /* SPI5_RX_DMA_CONFIG */
  175. #endif /* BSP_SPI5_RX_USING_DMA */
  176. #ifdef __cplusplus
  177. }
  178. #endif
  179. #endif /*__SPI_CONFIG_H__ */