Merge pull request #4633 from whj4674672/spi

[add] spi config increases irq_type
This commit is contained in:
Bernard Xiong 2021-04-27 20:52:33 +08:00 committed by GitHub
commit ff4dfda5ff
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 56 additions and 40 deletions

View File

@ -24,6 +24,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -56,6 +57,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */

View File

@ -24,6 +24,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -56,6 +57,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -88,6 +90,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */

View File

@ -24,6 +24,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -58,6 +59,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -92,6 +94,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */

View File

@ -24,6 +24,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -58,6 +59,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -92,6 +94,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */
@ -126,6 +129,7 @@ extern "C" {
{ \ { \
.Instance = SPI4, \ .Instance = SPI4, \
.bus_name = "spi4", \ .bus_name = "spi4", \
.irq_type = SPI4_IRQn, \
} }
#endif /* SPI4_BUS_CONFIG */ #endif /* SPI4_BUS_CONFIG */
#endif /* BSP_USING_SPI4 */ #endif /* BSP_USING_SPI4 */
@ -160,6 +164,7 @@ extern "C" {
{ \ { \
.Instance = SPI5, \ .Instance = SPI5, \
.bus_name = "spi5", \ .bus_name = "spi5", \
.irq_type = SPI5_IRQn, \
} }
#endif /* SPI5_BUS_CONFIG */ #endif /* SPI5_BUS_CONFIG */
#endif /* BSP_USING_SPI5 */ #endif /* BSP_USING_SPI5 */

View File

@ -23,6 +23,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -57,6 +58,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -91,6 +93,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */
@ -125,6 +128,7 @@ extern "C" {
{ \ { \
.Instance = SPI4, \ .Instance = SPI4, \
.bus_name = "spi4", \ .bus_name = "spi4", \
.irq_type = SPI4_IRQn, \
} }
#endif /* SPI4_BUS_CONFIG */ #endif /* SPI4_BUS_CONFIG */
#endif /* BSP_USING_SPI4 */ #endif /* BSP_USING_SPI4 */
@ -159,6 +163,7 @@ extern "C" {
{ \ { \
.Instance = SPI5, \ .Instance = SPI5, \
.bus_name = "spi5", \ .bus_name = "spi5", \
.irq_type = SPI5_IRQn, \
} }
#endif /* SPI5_BUS_CONFIG */ #endif /* SPI5_BUS_CONFIG */
#endif /* BSP_USING_SPI5 */ #endif /* BSP_USING_SPI5 */

View File

@ -24,6 +24,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -58,6 +59,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */

View File

@ -24,6 +24,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -58,6 +59,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -92,6 +94,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */
@ -126,6 +129,7 @@ extern "C" {
{ \ { \
.Instance = SPI4, \ .Instance = SPI4, \
.bus_name = "spi4", \ .bus_name = "spi4", \
.irq_type = SPI4_IRQn, \
} }
#endif /* SPI4_BUS_CONFIG */ #endif /* SPI4_BUS_CONFIG */
#endif /* BSP_USING_SPI4 */ #endif /* BSP_USING_SPI4 */
@ -160,6 +164,7 @@ extern "C" {
{ \ { \
.Instance = SPI5, \ .Instance = SPI5, \
.bus_name = "spi5", \ .bus_name = "spi5", \
.irq_type = SPI5_IRQn, \
} }
#endif /* SPI5_BUS_CONFIG */ #endif /* SPI5_BUS_CONFIG */
#endif /* BSP_USING_SPI5 */ #endif /* BSP_USING_SPI5 */

View File

@ -23,6 +23,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -57,6 +58,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -91,6 +93,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */
@ -125,6 +128,7 @@ extern "C" {
{ \ { \
.Instance = SPI4, \ .Instance = SPI4, \
.bus_name = "spi4", \ .bus_name = "spi4", \
.irq_type = SPI4_IRQn, \
} }
#endif /* SPI4_BUS_CONFIG */ #endif /* SPI4_BUS_CONFIG */
#endif /* BSP_USING_SPI4 */ #endif /* BSP_USING_SPI4 */
@ -159,6 +163,7 @@ extern "C" {
{ \ { \
.Instance = SPI5, \ .Instance = SPI5, \
.bus_name = "spi5", \ .bus_name = "spi5", \
.irq_type = SPI5_IRQn, \
} }
#endif /* SPI5_BUS_CONFIG */ #endif /* SPI5_BUS_CONFIG */
#endif /* BSP_USING_SPI5 */ #endif /* BSP_USING_SPI5 */

View File

@ -24,6 +24,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -56,6 +57,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -88,6 +90,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */

View File

@ -23,6 +23,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -57,6 +58,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -91,6 +93,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */

View File

@ -23,6 +23,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -57,6 +58,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -91,6 +93,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */
@ -125,6 +128,7 @@ extern "C" {
{ \ { \
.Instance = SPI4, \ .Instance = SPI4, \
.bus_name = "spi4", \ .bus_name = "spi4", \
.irq_type = SPI4_IRQn, \
} }
#endif /* SPI4_BUS_CONFIG */ #endif /* SPI4_BUS_CONFIG */
#endif /* BSP_USING_SPI4 */ #endif /* BSP_USING_SPI4 */
@ -159,6 +163,7 @@ extern "C" {
{ \ { \
.Instance = SPI5, \ .Instance = SPI5, \
.bus_name = "spi5", \ .bus_name = "spi5", \
.irq_type = SPI5_IRQn, \
} }
#endif /* SPI5_BUS_CONFIG */ #endif /* SPI5_BUS_CONFIG */
#endif /* BSP_USING_SPI5 */ #endif /* BSP_USING_SPI5 */

View File

@ -23,6 +23,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -57,6 +58,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -91,6 +93,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */

View File

@ -23,6 +23,7 @@ extern "C" {
{ \ { \
.Instance = SPI1, \ .Instance = SPI1, \
.bus_name = "spi1", \ .bus_name = "spi1", \
.irq_type = SPI1_IRQn, \
} }
#endif /* SPI1_BUS_CONFIG */ #endif /* SPI1_BUS_CONFIG */
#endif /* BSP_USING_SPI1 */ #endif /* BSP_USING_SPI1 */
@ -57,6 +58,7 @@ extern "C" {
{ \ { \
.Instance = SPI2, \ .Instance = SPI2, \
.bus_name = "spi2", \ .bus_name = "spi2", \
.irq_type = SPI2_IRQn, \
} }
#endif /* SPI2_BUS_CONFIG */ #endif /* SPI2_BUS_CONFIG */
#endif /* BSP_USING_SPI2 */ #endif /* BSP_USING_SPI2 */
@ -91,6 +93,7 @@ extern "C" {
{ \ { \
.Instance = SPI3, \ .Instance = SPI3, \
.bus_name = "spi3", \ .bus_name = "spi3", \
.irq_type = SPI3_IRQn, \
} }
#endif /* SPI3_BUS_CONFIG */ #endif /* SPI3_BUS_CONFIG */
#endif /* BSP_USING_SPI3 */ #endif /* BSP_USING_SPI3 */

View File

@ -263,6 +263,12 @@ static rt_err_t stm32_spi_init(struct stm32_spi *spi_drv, struct rt_spi_configur
HAL_NVIC_SetPriority(spi_drv->config->dma_tx->dma_irq, 0, 1); HAL_NVIC_SetPriority(spi_drv->config->dma_tx->dma_irq, 0, 1);
HAL_NVIC_EnableIRQ(spi_drv->config->dma_tx->dma_irq); HAL_NVIC_EnableIRQ(spi_drv->config->dma_tx->dma_irq);
} }
if(spi_drv->spi_dma_flag & SPI_USING_TX_DMA_FLAG || spi_drv->spi_dma_flag & SPI_USING_RX_DMA_FLAG)
{
HAL_NVIC_SetPriority(spi_drv->config->irq_type, 2, 0);
HAL_NVIC_EnableIRQ(spi_drv->config->irq_type);
}
LOG_D("%s init done", spi_drv->config->bus_name); LOG_D("%s init done", spi_drv->config->bus_name);
return RT_EOK; return RT_EOK;

View File

@ -37,6 +37,7 @@ struct stm32_spi_config
{ {
SPI_TypeDef *Instance; SPI_TypeDef *Instance;
char *bus_name; char *bus_name;
IRQn_Type irq_type;
struct dma_config *dma_rx, *dma_tx; struct dma_config *dma_rx, *dma_tx;
}; };

View File

@ -31,8 +31,8 @@ menu "On-chip Peripheral Drivers"
bool "Enable UART1 RX DMA" bool "Enable UART1 RX DMA"
depends on BSP_USING_UART1 && RT_SERIAL_USING_DMA depends on BSP_USING_UART1 && RT_SERIAL_USING_DMA
default n default n
config BSP_USING_UART2 config BSP_USING_UART2
bool "Enable UART2" bool "Enable UART2"
default y default y
@ -41,44 +41,6 @@ menu "On-chip Peripheral Drivers"
depends on BSP_USING_UART2 && RT_SERIAL_USING_DMA depends on BSP_USING_UART2 && RT_SERIAL_USING_DMA
default n default n
endif endif
menuconfig BSP_USING_SPI
bool "Enable SPI BUS"
default n
select RT_USING_SPI
if BSP_USING_SPI
config BSP_USING_SPI1
bool "Enable SPI1 BUS"
default n
config BSP_SPI1_TX_USING_DMA
bool "Enable SPI1 TX DMA"
depends on BSP_USING_SPI1
default n
config BSP_SPI1_RX_USING_DMA
bool "Enable SPI1 RX DMA"
depends on BSP_USING_SPI1
select BSP_SPI1_TX_USING_DMA
default n
endif
menuconfig BSP_USING_I2C1
bool "Enable I2C1 BUS (software simulation)"
default n
select RT_USING_I2C
select RT_USING_I2C_BITOPS
select RT_USING_PIN
if BSP_USING_I2C1
config BSP_I2C1_SCL_PIN
int "i2c1 scl pin number"
range 1 216
default 15
config BSP_I2C1_SDA_PIN
int "I2C1 sda pin number"
range 1 216
default 16
endif
source "../libraries/HAL_Drivers/Kconfig" source "../libraries/HAL_Drivers/Kconfig"
endmenu endmenu