aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/dma/tegra20-apb-dma.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
index 24acd711e032..6ed3f43be41e 100644
--- a/drivers/dma/tegra20-apb-dma.c
+++ b/drivers/dma/tegra20-apb-dma.c
@@ -475,8 +475,7 @@ static void tegra_dma_abort_all(struct tegra_dma_channel *tdc)
475 while (!list_empty(&tdc->pending_sg_req)) { 475 while (!list_empty(&tdc->pending_sg_req)) {
476 sgreq = list_first_entry(&tdc->pending_sg_req, 476 sgreq = list_first_entry(&tdc->pending_sg_req,
477 typeof(*sgreq), node); 477 typeof(*sgreq), node);
478 list_del(&sgreq->node); 478 list_move_tail(&sgreq->node, &tdc->free_sg_req);
479 list_add_tail(&sgreq->node, &tdc->free_sg_req);
480 if (sgreq->last_sg) { 479 if (sgreq->last_sg) {
481 dma_desc = sgreq->dma_desc; 480 dma_desc = sgreq->dma_desc;
482 dma_desc->dma_status = DMA_ERROR; 481 dma_desc->dma_status = DMA_ERROR;
@@ -570,8 +569,7 @@ static void handle_cont_sngl_cycle_dma_done(struct tegra_dma_channel *tdc,
570 569
571 /* If not last req then put at end of pending list */ 570 /* If not last req then put at end of pending list */
572 if (!list_is_last(&sgreq->node, &tdc->pending_sg_req)) { 571 if (!list_is_last(&sgreq->node, &tdc->pending_sg_req)) {
573 list_del(&sgreq->node); 572 list_move_tail(&sgreq->node, &tdc->pending_sg_req);
574 list_add_tail(&sgreq->node, &tdc->pending_sg_req);
575 sgreq->configured = false; 573 sgreq->configured = false;
576 st = handle_continuous_head_request(tdc, sgreq, to_terminate); 574 st = handle_continuous_head_request(tdc, sgreq, to_terminate);
577 if (!st) 575 if (!st)