Re: Patch "phy: qcom-qmp-combo: disable runtime PM on unbind" has been added to the 5.15-stable tree

From: Johan Hovold
Date: Mon Oct 17 2022 - 02:25:51 EST


[ Resending with Vinod and the lists on CC. You forgot to CC the
maintainer. ]

On Sun, Oct 16, 2022 at 11:16:01PM -0400, Sasha Levin wrote:
> This is a note to let you know that I've just added the patch titled
>
> phy: qcom-qmp-combo: disable runtime PM on unbind
>
> to the 5.15-stable tree which can be found at:
> http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
>
> The filename of the patch is:
> phy-qcom-qmp-combo-disable-runtime-pm-on-unbind.patch
> and it can be found in the queue-5.15 subdirectory.
>
> If you, or anyone else, feels it should not be added to the stable tree,
> please let <stable@xxxxxxxxxxxxxxx> know about it.
>
>
>
> commit f3aca84b69977d7c024d9fbf52163de4b852df22
> Author: Johan Hovold <johan+linaro@xxxxxxxxxx>
> Date: Wed Sep 7 13:07:13 2022 +0200
>
> phy: qcom-qmp-combo: disable runtime PM on unbind
>
> [ Upstream commit 4382d518d1887e62234560ea08a0203d11d28cc1 ]
>
> Make sure to disable runtime PM also on driver unbind.
>
> Fixes: ac0d239936bd ("phy: qcom-qmp: Add support for runtime PM").
> Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx>
> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
> Link: https://lore.kernel.org/r/20220907110728.19092-2-johan+linaro@xxxxxxxxxx
> Signed-off-by: Vinod Koul <vkoul@xxxxxxxxxx>
> Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
>
> diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-combo.c b/drivers/phy/qualcomm/phy-qcom-qmp-combo.c
> index c7309e981bfb..dcf8a8764e17 100644
> --- a/drivers/phy/qualcomm/phy-qcom-qmp-combo.c
> +++ b/drivers/phy/qualcomm/phy-qcom-qmp-combo.c

This driver did not exist in 5.15. Please don't tell me you're
backporting the QMP driver split and all the follow up cleanups?

Note that hardly any of these QMP fixes had a stable tag for a reason.

> @@ -6273,7 +6273,9 @@ static int qcom_qmp_phy_probe(struct platform_device *pdev)
> return -ENOMEM;
>
> pm_runtime_set_active(dev);
> - pm_runtime_enable(dev);
> + ret = devm_pm_runtime_enable(dev);
> + if (ret)
> + return ret;
> /*
> * Prevent runtime pm from being ON by default. Users can enable
> * it using power/control in sysfs.
> @@ -6323,13 +6325,10 @@ static int qcom_qmp_phy_probe(struct platform_device *pdev)
> phy_provider = devm_of_phy_provider_register(dev, of_phy_simple_xlate);
> if (!IS_ERR(phy_provider))
> dev_info(dev, "Registered Qcom-QMP phy\n");
> - else
> - pm_runtime_disable(dev);
>
> return PTR_ERR_OR_ZERO(phy_provider);
>
> err_node_put:
> - pm_runtime_disable(dev);
> of_node_put(child);
> return ret;
> }

Johan