Spi starts transfer using dma with DMA_CTRL_ACK which is not require
becasue spi driver does not use completed dma_desc after transfer
done and so it does not ack the dma descriptor. Removing the
DMA_CTRL_ACK flag to avoid memory leak in dma driver.

Signed-off-by: Laxman Dewangan <[email protected]>
---
 drivers/spi/spi-tegra20-slink.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/spi/spi-tegra20-slink.c b/drivers/spi/spi-tegra20-slink.c
index 7882b50..5b4c8c8 100644
--- a/drivers/spi/spi-tegra20-slink.c
+++ b/drivers/spi/spi-tegra20-slink.c
@@ -473,7 +473,7 @@ static int tegra_slink_start_tx_dma(struct tegra_slink_data 
*tspi, int len)
        INIT_COMPLETION(tspi->tx_dma_complete);
        tspi->tx_dma_desc = dmaengine_prep_slave_single(tspi->tx_dma_chan,
                                tspi->tx_dma_phys, len, DMA_MEM_TO_DEV,
-                               DMA_PREP_INTERRUPT |  DMA_CTRL_ACK);
+                               DMA_PREP_INTERRUPT);
        if (!tspi->tx_dma_desc) {
                dev_err(tspi->dev, "Not able to get desc for Tx\n");
                return -EIO;
@@ -492,7 +492,7 @@ static int tegra_slink_start_rx_dma(struct tegra_slink_data 
*tspi, int len)
        INIT_COMPLETION(tspi->rx_dma_complete);
        tspi->rx_dma_desc = dmaengine_prep_slave_single(tspi->rx_dma_chan,
                                tspi->rx_dma_phys, len, DMA_DEV_TO_MEM,
-                               DMA_PREP_INTERRUPT |  DMA_CTRL_ACK);
+                               DMA_PREP_INTERRUPT);
        if (!tspi->rx_dma_desc) {
                dev_err(tspi->dev, "Not able to get desc for Rx\n");
                return -EIO;
-- 
1.7.1.1

--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to