]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
spi: fsl-lpspi: replace dmaengine_terminate_all() with dmaengine_terminate_sync()
authorCarlos Song <carlos.song@nxp.com>
Mon, 25 May 2026 06:23:56 +0000 (14:23 +0800)
committerMark Brown <broonie@kernel.org>
Mon, 1 Jun 2026 14:08:05 +0000 (15:08 +0100)
dmaengine_terminate_all() has been deprecated, so replace it with
dmaengine_terminate_sync().

Fixes: 09c04466ce7e ("spi: lpspi: add dma mode support")
Cc: stable@vger.kernel.org
Signed-off-by: Carlos Song <carlos.song@nxp.com>
Link: https://patch.msgid.link/20260525062357.3191349-2-carlos.song@oss.nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-fsl-lpspi.c

index e201309f8aae35cff657084242f3843feb64db18..1a94a42fac319d8b37c30bcb646607c831603156 100644 (file)
@@ -647,7 +647,7 @@ static int fsl_lpspi_dma_transfer(struct spi_controller *controller,
                                tx->sgl, tx->nents, DMA_MEM_TO_DEV,
                                DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
        if (!desc_tx) {
-               dmaengine_terminate_all(controller->dma_tx);
+               dmaengine_terminate_sync(controller->dma_tx);
                return -EINVAL;
        }
 
@@ -668,8 +668,8 @@ static int fsl_lpspi_dma_transfer(struct spi_controller *controller,
                                                        transfer_timeout);
                if (!time_left) {
                        dev_err(fsl_lpspi->dev, "I/O Error in DMA TX\n");
-                       dmaengine_terminate_all(controller->dma_tx);
-                       dmaengine_terminate_all(controller->dma_rx);
+                       dmaengine_terminate_sync(controller->dma_tx);
+                       dmaengine_terminate_sync(controller->dma_rx);
                        fsl_lpspi_reset(fsl_lpspi);
                        return -ETIMEDOUT;
                }
@@ -678,8 +678,8 @@ static int fsl_lpspi_dma_transfer(struct spi_controller *controller,
                                                        transfer_timeout);
                if (!time_left) {
                        dev_err(fsl_lpspi->dev, "I/O Error in DMA RX\n");
-                       dmaengine_terminate_all(controller->dma_tx);
-                       dmaengine_terminate_all(controller->dma_rx);
+                       dmaengine_terminate_sync(controller->dma_tx);
+                       dmaengine_terminate_sync(controller->dma_rx);
                        fsl_lpspi_reset(fsl_lpspi);
                        return -ETIMEDOUT;
                }
@@ -688,8 +688,8 @@ static int fsl_lpspi_dma_transfer(struct spi_controller *controller,
                        fsl_lpspi->target_aborted) {
                        dev_dbg(fsl_lpspi->dev,
                                "I/O Error in DMA TX interrupted\n");
-                       dmaengine_terminate_all(controller->dma_tx);
-                       dmaengine_terminate_all(controller->dma_rx);
+                       dmaengine_terminate_sync(controller->dma_tx);
+                       dmaengine_terminate_sync(controller->dma_rx);
                        fsl_lpspi_reset(fsl_lpspi);
                        return -EINTR;
                }
@@ -698,8 +698,8 @@ static int fsl_lpspi_dma_transfer(struct spi_controller *controller,
                        fsl_lpspi->target_aborted) {
                        dev_dbg(fsl_lpspi->dev,
                                "I/O Error in DMA RX interrupted\n");
-                       dmaengine_terminate_all(controller->dma_tx);
-                       dmaengine_terminate_all(controller->dma_rx);
+                       dmaengine_terminate_sync(controller->dma_tx);
+                       dmaengine_terminate_sync(controller->dma_rx);
                        fsl_lpspi_reset(fsl_lpspi);
                        return -EINTR;
                }