summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorarmink <[email protected]>2018-05-31 17:14:08 +0800
committerarmink <[email protected]>2018-05-31 17:16:15 +0800
commit0b1b5497426f6e2b15cd7f1ec5b1fe61defb5499 (patch)
tree36e3ba1ffe565672303013c668c705a529dee5f7
parent62ed2b9d0f1eae6fe77afceca1ec4348d35aac8f (diff)
[bsp][stm32f429-apollo] Disable the SPI DMA mode. It has some problem when using big data transmission.
-rw-r--r--bsp/stm32f429-apollo/drivers/drv_spi.c4
-rw-r--r--bsp/stm32f429-apollo/drivers/drv_spi.h2
2 files changed, 5 insertions, 1 deletions
diff --git a/bsp/stm32f429-apollo/drivers/drv_spi.c b/bsp/stm32f429-apollo/drivers/drv_spi.c
index e7b547cce2..a82454d907 100644
--- a/bsp/stm32f429-apollo/drivers/drv_spi.c
+++ b/bsp/stm32f429-apollo/drivers/drv_spi.c
@@ -526,6 +526,7 @@ struct stm32f4_spi stm32f4_spi5 =
/* .spi_handle = */{
/* .Instance = */ SPI5,
},
+#ifdef SPI_USE_DMA
/* .hdma_rx = */ {
DMA2_Stream3,
DMA_CHANNEL_2,
@@ -537,6 +538,7 @@ struct stm32f4_spi stm32f4_spi5 =
DMA_CHANNEL_2,
},
/* .hdma_tx_irq = */ DMA2_Stream4_IRQn,
+#endif /* SPI_USE_DMA */
};
static struct rt_spi_bus spi5_bus;
@@ -703,6 +705,7 @@ rt_err_t stm32_spi_bus_register(SPI_TypeDef * SPI,
return RT_ENOSYS;
}
+#ifdef SPI_USE_DMA
/* Configure the DMA handler for Transmission process */
p_spi_bus->hdma_tx.Init.Direction = DMA_MEMORY_TO_PERIPH;
p_spi_bus->hdma_tx.Init.PeriphInc = DMA_PINC_DISABLE;
@@ -727,6 +730,7 @@ rt_err_t stm32_spi_bus_register(SPI_TypeDef * SPI,
p_spi_bus->hdma_rx.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_FULL;
p_spi_bus->hdma_rx.Init.MemBurst = DMA_MBURST_INC4;
p_spi_bus->hdma_rx.Init.PeriphBurst = DMA_PBURST_INC4;
+#endif /* SPI_USE_DMA */
spi_bus->parent.user_data = &stm32f4_spi5;
diff --git a/bsp/stm32f429-apollo/drivers/drv_spi.h b/bsp/stm32f429-apollo/drivers/drv_spi.h
index 8967b4b981..8c74fdb626 100644
--- a/bsp/stm32f429-apollo/drivers/drv_spi.h
+++ b/bsp/stm32f429-apollo/drivers/drv_spi.h
@@ -20,7 +20,7 @@
#include "stm32f4xx_hal.h"
-#define SPI_USE_DMA
+//#define SPI_USE_DMA
struct stm32f4_spi
{