Re: [PATCH v2 2/2] mtd: nand: raw: gpmi: improve power management handling

From: Miquel Raynal
Date: Fri Oct 04 2024 - 03:21:59 EST


Hi Han,

han.xu@xxxxxxx wrote on Thu, 3 Oct 2024 15:05:08 -0500:

> On 24/10/03 05:28PM, Miquel Raynal wrote:
> > Hi Han,
> >
> > han.xu@xxxxxxx wrote on Thu, 3 Oct 2024 10:05:16 -0500:
> >
> > > On 24/10/03 09:38AM, Miquel Raynal wrote:
> > > > Hi Han,
> > > >
> > > > han.xu@xxxxxxx wrote on Wed, 2 Oct 2024 10:39:44 -0500:
> > > >
> > > > > The commit refactors the power management handling in the gpmi nand
> > > > > driver. It removes redundant pm_runtime calls in the probe function,
> > > > > handles the pad control in suspend and resume, and moves the calls to
> > > > > acquire and release DMA channels to the runtime suspend and resume
> > > > > functions.
> > > >
> > > > May I know the motivation to acquire and release the DMA channels
> > > > during suspend? In general it seems like a different change which I'd
> > > > prefer to see in its own commit with a justification. The rest looks
> > > > ok otherwise.
> > >
> > > Hi Miquel,
> > >
> > > Thanks for your comments. IMHO there is no much logic changes indeed, just move
> > > the dma channel acquire and release from system pm to the runtime pm, releasing
> > > the unused resources as early as possible. If you think it's necessary I will
> > > split the patch into two parts.
> >
> > Actually I don't understand why these channels are released and
> > acquired again. Does it make sense to do that in the (runtime)
> > suspend/resume path? I'd be in favor of avoiding this extra
> > configuration which as a first sight does not seem required here.
>
> Our local mxs-dma driver (will upstream the changes later) implemented the runtime
> resume/suspend in channel alloc/release functions, so I did this in the gpmi
> nand driver suspend/resume path.

I think it no longer makes sense. RPM takes care of the
suppliers, at least since fw_devlink=rpm.

Thanks,
Miquèl