summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/atsam/spi/atsam_spi_bus.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/arm/atsam/spi/atsam_spi_bus.c')
-rw-r--r--c/src/lib/libbsp/arm/atsam/spi/atsam_spi_bus.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/c/src/lib/libbsp/arm/atsam/spi/atsam_spi_bus.c b/c/src/lib/libbsp/arm/atsam/spi/atsam_spi_bus.c
index c88cec9868..247f8869f5 100644
--- a/c/src/lib/libbsp/arm/atsam/spi/atsam_spi_bus.c
+++ b/c/src/lib/libbsp/arm/atsam/spi/atsam_spi_bus.c
@@ -354,8 +354,8 @@ static uint32_t atsam_send_command(
)
{
Spid *spid = &bus->SpiDma;
-
Spi *pSpiHw = spid->pSpiHw;
+ Xdmac *pXdmac = bus->SpiDma.pXdmad->pXdmacs;
if (
atsam_configure_link_list(
@@ -382,14 +382,9 @@ static uint32_t atsam_send_command(
bus->spi_switched_on = true;
- /* Start DMA 0(RX) && 1(TX) */
- if (XDMAD_StartTransfer(spid->pXdmad, bus->dma_rx_channel)) {
- return SPID_ERROR_LOCK;
- }
-
- if (XDMAD_StartTransfer(spid->pXdmad, bus->dma_tx_channel)) {
- return SPID_ERROR_LOCK;
- }
+ /* Start DMA */
+ XDMAC_StartTransfer(pXdmac, bus->dma_rx_channel);
+ XDMAC_StartTransfer(pXdmac, bus->dma_tx_channel);
return 0;
}