Hi Richard, On Wed, Jan 5, 2022 at 5:12 AM Richard Zhu <hongxing.zhu@xxxxxxx> 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?