On Tue, Oct 26, 2021 at 09:06:56AM +0000, Richard Zhu wrote: > > -----Original Message----- > > From: Francesco Dolcini <francesco.dolcini@xxxxxxxxxxx> > > Sent: Tuesday, October 26, 2021 4:52 PM > > To: Richard Zhu <hongxing.zhu@xxxxxxx> > > Cc: Mark Brown <broonie@xxxxxxxxxx>; Francesco Dolcini > > <francesco.dolcini@xxxxxxxxxxx>; l.stach@xxxxxxxxxxxxxx; > > bhelgaas@xxxxxxxxxx; lorenzo.pieralisi@xxxxxxx; jingoohan1@xxxxxxxxx; > > linux-pci@xxxxxxxxxxxxxxx; dl-linux-imx <linux-imx@xxxxxxx>; > > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; > > kernel@xxxxxxxxxxxxxx > > Subject: Re: [PATCH v3 3/7] PCI: imx6: Fix the regulator dump when link never > > came up > > > > On Tue, Oct 26, 2021 at 02:18:18AM +0000, Richard Zhu wrote: > > > The _enabled check is used because that this regulator is optional in the HW > > design. > > > To make the codes clean and aligned on different HW boards, the _enabled > > check is added. > > > > > > The root cause is that the error return is not handled properly by the > > controller driver. > > > I.MX PCIe controller doesn't support the Hot-Plug, and it would return > > > -110 error when PCIe link never came up. Thus, the _probe would be failed > > in the end. > > > The clocks/regulator usage balance should be considered by i.MX PCIe > > controller, that's all. > > > It's not a general case, and the problem is not caused by the regulator > > support. > > > > Hello Richard, > > I have one curiosity on this topic. Does this works well in case the regulator is > > shared? I just want to be sure that if the regulator is shared everything is > > working fine even if the PCI-E link is not used or not coming up for any reason. > > > [Richard Zhu] Hi Francesco: > Actually, this regulator used by i.MX PCIe controller driver is one fixed gpio regulator. > Refer to my understand, this regulator is not shared by different devices. > > Up to now, it works fine to power up the PCIe slot populated on the HW board. Isn't this something that depend on the actual board design? From the driver point of view you should not silently enforce such design requirement on the board. Am I missing something here? Would be glad to you if you can clarify in case. Francesco