diff options
-rw-r--r-- | drivers/dma/tegra20-apb-dma.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c index a8de08b8cbce..9d70b3aeb782 100644 --- a/drivers/dma/tegra20-apb-dma.c +++ b/drivers/dma/tegra20-apb-dma.c @@ -811,7 +811,7 @@ static enum dma_status tegra_dma_tx_status(struct dma_chan *dc, unsigned int residual; ret = dma_cookie_status(dc, cookie, txstate); - if (ret == DMA_COMPLETE || !txstate) + if (ret == DMA_COMPLETE) return ret; spin_lock_irqsave(&tdc->lock, flags); @@ -837,7 +837,7 @@ static enum dma_status tegra_dma_tx_status(struct dma_chan *dc, dma_desc = NULL; found: - if (dma_desc) { + if (dma_desc && txstate) { residual = dma_desc->bytes_requested - (dma_desc->bytes_transferred % dma_desc->bytes_requested); |