[PATCH v3 3/7] PCI: imx6: Fix the regulator dump when link never came up

Richard Zhu hongxing.zhu at nxp.com
Sun Oct 31 18:46:35 PDT 2021


> -----Original Message-----
> From: Mark Brown <broonie at kernel.org>
> Sent: Friday, October 29, 2021 7:46 PM
> To: Richard Zhu <hongxing.zhu at nxp.com>
> Cc: Francesco Dolcini <francesco.dolcini at toradex.com>;
> l.stach at pengutronix.de; bhelgaas at google.com;
> lorenzo.pieralisi at arm.com; jingoohan1 at gmail.com;
> linux-pci at vger.kernel.org; dl-linux-imx <linux-imx at nxp.com>;
> linux-arm-kernel at lists.infradead.org; linux-kernel at vger.kernel.org;
> kernel at pengutronix.de
> Subject: Re: [PATCH v3 3/7] PCI: imx6: Fix the regulator dump when link
> never came up
> 
> On Fri, Oct 29, 2021 at 03:58:41AM +0000, Richard Zhu wrote:
> 
> > > The driver should undo any enables it did itself, it should not undo
> > > any enables that anything else did which means it should never be
> > > basing decisions on regulator_is_enabled().  While the regulator may
> > > not be shared in the particular board you're looking at it may be
> > > shared in other systems.
> 
> > [Richard Zhu] Understood. Thanks.
> > Can I disabled this regulator in PCIe probe failure handler without
> > the
> >  regulator_is_enabled() check?
> 
> If the driver called regulator_enable() (and that didn't return an
> error) it can always call regulator_disable() as many times as it called
> regulator_enable(), no need to check if the regulator is still enabled.
> When the driver hasn't successfully called regulator_enable() it shouldn't
> call regulator_disable() even if the regualtor is enabled.
> This means that after your driver has enabled the regulator it can just
> disable it but between the regulator_get() and regulator_enable() it
> shouldn't do that.
[Richard Zhu] Got that, thanks a lot.
BR
Richard



More information about the linux-arm-kernel mailing list