diff options
author | Laxman Dewangan <ldewangan@nvidia.com> | 2012-01-27 19:32:56 +0530 |
---|---|---|
committer | Rohan Somvanshi <rsomvanshi@nvidia.com> | 2012-02-03 05:10:03 -0800 |
commit | fc9c898cba915636226834e6e04fd40f5fb00f21 (patch) | |
tree | bf194e231da9d3688a7ed023bdec258b2b5bd6d1 /drivers/spi | |
parent | f9cbba7e132ed3c60cab9a557595bb9de28108a6 (diff) |
spi: tegra: dequeue dma req using tegra_dma_dequeue_req()
The dma client should use the tegra_dma_dequeue_req() for
dequeue the dma request.
Change-Id: I1f433c85ffec997d8c608e08509c48c72b27120a
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: http://git-master/r/77804
Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Diffstat (limited to 'drivers/spi')
-rw-r--r-- | drivers/spi/spi-tegra.c | 10 | ||||
-rw-r--r-- | drivers/spi/spi_slave_tegra.c | 10 |
2 files changed, 12 insertions, 8 deletions
diff --git a/drivers/spi/spi-tegra.c b/drivers/spi/spi-tegra.c index 1e1ec8310094..7be67d0ff2bc 100644 --- a/drivers/spi/spi-tegra.c +++ b/drivers/spi/spi-tegra.c @@ -1072,13 +1072,14 @@ static irqreturn_t spi_tegra_isr_thread(int irq, void *context_data) /* Abort dmas if any error */ if (tspi->cur_direction & DATA_DIR_TX) { if (tspi->tx_status) { - tegra_dma_dequeue(tspi->tx_dma); + tegra_dma_dequeue_req(tspi->tx_dma, &tspi->tx_dma_req); err += 1; } else { wait_status = wait_for_completion_interruptible_timeout( &tspi->tx_dma_complete, SLINK_DMA_TIMEOUT); if (wait_status <= 0) { - tegra_dma_dequeue(tspi->tx_dma); + tegra_dma_dequeue_req(tspi->tx_dma, + &tspi->tx_dma_req); dev_err(&tspi->pdev->dev, "Error in Dma Tx " "transfer\n"); err += 1; @@ -1088,13 +1089,14 @@ static irqreturn_t spi_tegra_isr_thread(int irq, void *context_data) if (tspi->cur_direction & DATA_DIR_RX) { if (tspi->rx_status) { - tegra_dma_dequeue(tspi->rx_dma); + tegra_dma_dequeue_req(tspi->rx_dma, &tspi->rx_dma_req); err += 2; } else { wait_status = wait_for_completion_interruptible_timeout( &tspi->rx_dma_complete, SLINK_DMA_TIMEOUT); if (wait_status <= 0) { - tegra_dma_dequeue(tspi->rx_dma); + tegra_dma_dequeue_req(tspi->rx_dma, + &tspi->rx_dma_req); dev_err(&tspi->pdev->dev, "Error in Dma Rx " "transfer\n"); err += 2; diff --git a/drivers/spi/spi_slave_tegra.c b/drivers/spi/spi_slave_tegra.c index 3153ad54fb01..9aa9056698dc 100644 --- a/drivers/spi/spi_slave_tegra.c +++ b/drivers/spi/spi_slave_tegra.c @@ -974,13 +974,14 @@ static irqreturn_t spi_tegra_isr_thread(int irq, void *context_data) /* Abort dmas if any error */ if (tspi->cur_direction & DATA_DIR_TX) { if (tspi->tx_status) { - tegra_dma_dequeue(tspi->tx_dma); + tegra_dma_dequeue_req(tspi->tx_dma, &tspi->tx_dma_req); err += 1; } else { wait_status = wait_for_completion_interruptible_timeout( &tspi->tx_dma_complete, SLINK_DMA_TIMEOUT); if (wait_status <= 0) { - tegra_dma_dequeue(tspi->tx_dma); + tegra_dma_dequeue_req(tspi->tx_dma, + &tspi->tx_dma_req); dev_err(&tspi->pdev->dev, "Error in Dma Tx " "transfer\n"); err += 1; @@ -990,13 +991,14 @@ static irqreturn_t spi_tegra_isr_thread(int irq, void *context_data) if (tspi->cur_direction & DATA_DIR_RX) { if (tspi->rx_status) { - tegra_dma_dequeue(tspi->rx_dma); + tegra_dma_dequeue_req(tspi->rx_dma, &tspi->rx_dma_req); err += 2; } else { wait_status = wait_for_completion_interruptible_timeout( &tspi->rx_dma_complete, SLINK_DMA_TIMEOUT); if (wait_status <= 0) { - tegra_dma_dequeue(tspi->rx_dma); + tegra_dma_dequeue_req(tspi->rx_dma, + &tspi->rx_dma_req); dev_err(&tspi->pdev->dev, "Error in Dma Rx " "transfer\n"); err += 2; |