Hi Richard,
On Wed, Jan 5, 2022 at 5:12 AM Richard Zhu hongxing.zhu@nxp.com wrote:
When PCIe PHY link never came up and vpcie regulator is present, there would be following dump when try to put the regulator. Add a new host_exit() callback for i.MX PCIe driver to disable this regulator and fix this dump when link never came up.
The driver should undo any enables it did itself, and not undo any enables that anything else did which means it should never be basing decisions on regulator_is_enabled().
To keep usage counter balance of the clocks, powers and so on. Do the clock disable in the error handling after host_init too.
imx6q-pcie 33800000.pcie: Phy link never came up imx6q-pcie: probe of 33800000.pcie failed with error -110
Shouldn't we ignore the dw_pcie_wait_for_link() error?
At least, this was the intention of 886a9c134755 ("PCI: dwc: Move link handling into common code").
------------[ cut here ]------------ WARNING: CPU: 3 PID: 119 at drivers/regulator/core.c:2256 _regulator_put.part.0+0x14c/0x158 Modules linked in:
My concern is that this issue is still present in 5.15, which is LTS.
You only address this problem in 5/6 and I am not sure if the previous patches could be applied to stable as they are cleanups.
How can we fix this for 5.15 stable?
Could you make a minimal fix as the first patch of the series and cleanup patches later?