RE: [PATCH v2] dmaengine: fsl-edma: add PM suspend/resume support
From: Yao Yuan
Date: Fri Aug 14 2015 - 02:24:58 EST
Thanks for your review.
About those two methods for DMA suspend that you have mentioned. We have a lot of the discussions in other DMA driver like DMA for Freescale PowerPC.
Finally, we think the device which used the DMA transmission service should cancel the transmission service in its suspend.
So DMA in suspend should be idle.
Once the DMA in late_suspend is not be idle, we think some driver haven't canceled the DMA transmission. So maybe something is error when other driver in suspend.
In the case, we should return failed to stop PM. DMA should not make a choice for other drivers(which used DMA) to force stop DMA transmission.
> -----Original Message-----
> From: pku.leo@xxxxxxxxx [mailto:pku.leo@xxxxxxxxx] On Behalf Of Li Yang
> Sent: Friday, August 14, 2015 4:58 AM
> To: Yuan Yao-B46683
> Cc: Vinod Koul; stefan@xxxxxxxx; Arnd Bergmann; Dan Williams;
> dmaengine@xxxxxxxxxxxxxxx; lkml; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-
> Subject: Re: [PATCH v2] dmaengine: fsl-edma: add PM suspend/resume
> On Tue, Jul 21, 2015 at 3:56 AM, Yuan Yao <yao.yuan@xxxxxxxxxxxxx> wrote:
> > This add power management suspend/resume support for the fsl-edma
> > driver.
> > eDMA acted as a basic function used by others. What it needs to do is
> > the two steps below to support power management.
> > In fsl_edma_suspend_late:
> > Check whether the DMA chan is idle and if it is not idle, stop PM
> > operation.
> You should try to quiesce the device on suspend instead of depending on itself
> to be happen in idle and failing if it is not.