Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 222ccf9a authored by Dan Williams's avatar Dan Williams
Browse files

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: default avatarDan Williams <dan.j.williams@intel.com>
Acked-by: default avatarZhang Wei <wei.zhang@freescale.com>
parent 173acc7c
Loading
Loading
Loading
Loading
+0 −1
Original line number Original line Diff line number Diff line
@@ -685,7 +685,6 @@ static irqreturn_t fsl_dma_chan_do_interrupt(int irq, void *data)
				"nlndar 0x%016llx\n", (u64)get_cdar(fsl_chan),
				"nlndar 0x%016llx\n", (u64)get_cdar(fsl_chan),
				(u64)get_ndar(fsl_chan));
				(u64)get_ndar(fsl_chan));
		stat &= ~FSL_DMA_SR_EOSI;
		stat &= ~FSL_DMA_SR_EOSI;
		fsl_chan_ld_cleanup(fsl_chan);
	}
	}


	/* If it current transfer is the end-of-transfer,
	/* If it current transfer is the end-of-transfer,