[PATCH v5 5/6] PCI: imx6: Fix the regulator dump when link never came up

Fabio Estevam festevam at gmail.com
Wed Jan 5 13:51:58 PST 2022


Hi Richard,

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



More information about the linux-arm-kernel mailing list