[PATCH v10 5/7] PCI: imx6: Turn off regulator when the system is in suspend mode

Hongxing Zhu hongxing.zhu at nxp.com
Mon Jun 13 17:58:34 PDT 2022


> -----Original Message-----
> From: Francesco Dolcini <francesco.dolcini at toradex.com>
> Sent: 2022年6月13日 18:17
> To: Hongxing Zhu <hongxing.zhu at nxp.com>; l.stach at pengutronix.de;
> bhelgaas at google.com; robh at kernel.org
> Cc: broonie at kernel.org; lorenzo.pieralisi at arm.com; festevam at gmail.com;
> francesco.dolcini at toradex.com; linux-pci at vger.kernel.org;
> linux-arm-kernel at lists.infradead.org; linux-kernel at vger.kernel.org;
> kernel at pengutronix.de; dl-linux-imx <linux-imx at nxp.com>
> Subject: Re: [PATCH v10 5/7] PCI: imx6: Turn off regulator when the system is
> in suspend mode
> 
> On Mon, Jun 13, 2022 at 04:55:36PM +0800, Richard Zhu wrote:
> > The driver should undo any enables it did itself. The regulator
> > disable shouldn't be basing decisions on regulator_is_enabled().
> >
> > Move the regulator_disable to the suspend function, turn off regulator
> > when the system is in suspend mode.
> 
> According to the documentation:
> 
>   vpcie-supply:
>     description: Should specify the regulator in charge of PCIe port power.
>       The regulator will be enabled when initializing the PCIe host and
>       disabled either as part of the init process or when shutting down
>       the host (optional required).
> 
> Is this really what we want to do (remove power in suspend, enable it on
> resume)? On our boards this powers a PCIe device connected to the host port,
> that sound fair according to the binding documentation for it.
> Am I wrong?
> 
> We do have issues with PCIe not working anymore after suspend/resume,
> wondering (I did not have time to properly dig into it) if this is the root cause.
> 
Hi Francesco:
Yes, you're right. This regulator is used to powered up the port. It's
 reasonable to move the disable to suspend refer to Lucas' review comments.
BTW, I suspect that your PCIe failure after suspend/resume is caused by the
 MSI_ADDR missing. Can you make a double check on it?
I used found that the MSI_ADDR should be re-configured again during resume on
 some platforms. But I didn't issue that fix patch in time. Sorry about that.

Best Regards
Richard Zhu

> Francesco



More information about the linux-arm-kernel mailing list