diff options
author | Ville Baillie <villeb@bytesnap.co.uk> | 2021-09-21 07:21:32 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-01-05 15:12:32 +0100 |
commit | 2df1e1887c6801fdba74dfe03704aa9a40608056 (patch) | |
tree | 7e82be4e9a0dd27e260e5837be325032e045fdea | |
parent | 2a0a658ed6ef6bbddf700d1c2e1690e4e8054117 (diff) |
spi: atmel: Fix PDC transfer setup bug
commit 75e33c55ae8fb4a177fe07c284665e1d61b02560 upstream.
atmel_spi_dma_map_xfer to never be called in PDC mode. This causes the
driver to silently fail.
This patch changes the conditional to match the behaviour of the
previous commit before the refactor.
Fixes: 5fa5e6dec762 ("spi: atmel: Switch to transfer_one transfer method")
Signed-off-by: Ville Baillie <villeb@bytesnap.co.uk>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20210921072132.21831-1-villeb@bytesnap.co.uk
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/spi/spi-atmel.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/spi/spi-atmel.c b/drivers/spi/spi-atmel.c index 19499131e5676..26fa3f8260fb6 100644 --- a/drivers/spi/spi-atmel.c +++ b/drivers/spi/spi-atmel.c @@ -1315,7 +1315,7 @@ static int atmel_spi_one_transfer(struct spi_master *master, * DMA map early, for performance (empties dcache ASAP) and * better fault reporting. */ - if ((!master->cur_msg_mapped) + if ((!master->cur_msg->is_dma_mapped) && as->use_pdc) { if (atmel_spi_dma_map_xfer(as, xfer) < 0) return -ENOMEM; @@ -1394,7 +1394,7 @@ static int atmel_spi_one_transfer(struct spi_master *master, } } - if (!master->cur_msg_mapped + if (!master->cur_msg->is_dma_mapped && as->use_pdc) atmel_spi_dma_unmap_xfer(master, xfer); |