aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2008-03-01 09:51:17 -0500
committerDan Williams <dan.j.williams@intel.com>2008-03-04 12:16:46 -0500
commit222ccf9ab838a1ca7163969fabd2cddc10403fb5 (patch)
tree7d0c6102be13a4de0d6e22254625dc505923bcb7
parent173acc7ce8538f1f3040791dc622a92aadc12cf4 (diff)
fsldma: do not cleanup descriptors in hardirq context
"Cleaning" descriptors involves calling pending callbacks and clients assume that their callback will only ever happen in softirq context. Delay cleanup to the tasklet. Signed-off-by: Dan Williams <dan.j.williams@intel.com> Acked-by: Zhang Wei <wei.zhang@freescale.com>
-rw-r--r--drivers/dma/fsldma.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/dma/fsldma.c b/drivers/dma/fsldma.c
index 902e852571a8..cc9a68158d99 100644
--- a/drivers/dma/fsldma.c
+++ b/drivers/dma/fsldma.c
@@ -685,7 +685,6 @@ static irqreturn_t fsl_dma_chan_do_interrupt(int irq, void *data)
685 "nlndar 0x%016llx\n", (u64)get_cdar(fsl_chan), 685 "nlndar 0x%016llx\n", (u64)get_cdar(fsl_chan),
686 (u64)get_ndar(fsl_chan)); 686 (u64)get_ndar(fsl_chan));
687 stat &= ~FSL_DMA_SR_EOSI; 687 stat &= ~FSL_DMA_SR_EOSI;
688 fsl_chan_ld_cleanup(fsl_chan);
689 } 688 }
690 689
691 /* If it current transfer is the end-of-transfer, 690 /* If it current transfer is the end-of-transfer,