diff options
author | Dan Williams <dan.j.williams@intel.com> | 2008-03-01 09:51:17 -0500 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2008-03-04 12:16:46 -0500 |
commit | 222ccf9ab838a1ca7163969fabd2cddc10403fb5 (patch) | |
tree | 7d0c6102be13a4de0d6e22254625dc505923bcb7 | |
parent | 173acc7ce8538f1f3040791dc622a92aadc12cf4 (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.c | 1 |
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, |