Re: [PATCH v2 1/2] phy: starfive: Fix runtime PM cleanup in JH7110 DPHY TX probe

From: Changhuang Liang

Date: Sun Jul 19 2026 - 21:31:29 EST



> stf_dphy_probe() enables runtime PM before getting the clock and reset
> controls, creating the PHY and registering the PHY provider. If any of those
> steps fails, probe returns with runtime PM still enabled.
>
> The driver also has no remove callback, so runtime PM is left enabled on
> driver unbind after a successful probe.
>
> Use devm_pm_runtime_enable() so runtime PM is disabled automatically on
> later probe failures and on driver unbind.
>
> Fixes: d3ab79553308 ("phy: starfive: Add mipi dphy tx support")
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Can Peng <pengcan@xxxxxxxxxx>

Reviewed-by: Changhuang Liang <changhuang.liang@xxxxxxxxxxxxxxxx>

> ---
> drivers/phy/starfive/phy-jh7110-dphy-tx.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/phy/starfive/phy-jh7110-dphy-tx.c
> b/drivers/phy/starfive/phy-jh7110-dphy-tx.c
> index c64d1c91b130..181491a93807 100644
> --- a/drivers/phy/starfive/phy-jh7110-dphy-tx.c
> +++ b/drivers/phy/starfive/phy-jh7110-dphy-tx.c
> @@ -392,6 +392,7 @@ static int stf_dphy_probe(struct platform_device
> *pdev) {
> struct phy_provider *phy_provider;
> struct stf_dphy *dphy;
> + int ret;
>
> dphy = devm_kzalloc(&pdev->dev, sizeof(*dphy), GFP_KERNEL);
> if (!dphy)
> @@ -406,7 +407,9 @@ static int stf_dphy_probe(struct platform_device
> *pdev)
> if (IS_ERR(dphy->topsys))
> return PTR_ERR(dphy->topsys);
>
> - pm_runtime_enable(&pdev->dev);
> + ret = devm_pm_runtime_enable(&pdev->dev);
> + if (ret)
> + return ret;
>
> dphy->txesc_clk = devm_clk_get(&pdev->dev, "txesc");
> if (IS_ERR(dphy->txesc_clk))
> --
> 2.53.0