Re: [PATCH 5.15.y v2 5/5] phy: qcom-qmp-combo: fix runtime suspend
From: Stephen Boyd
Date: Thu Feb 02 2023 - 16:50:31 EST
Quoting Johan Hovold (2023-01-23 02:48:01)
> On Fri, Jan 13, 2023 at 12:45:48PM -0800, Stephen Boyd wrote:
> > diff --git a/drivers/phy/qualcomm/phy-qcom-qmp.c b/drivers/phy/qualcomm/phy-qcom-qmp.c
> > index b8646eaf1767..64a42e28e99f 100644
> > --- a/drivers/phy/qualcomm/phy-qcom-qmp.c
> > +++ b/drivers/phy/qualcomm/phy-qcom-qmp.c
> > @@ -4985,15 +4985,11 @@ static void qcom_qmp_phy_disable_autonomous_mode(struct qmp_phy *qphy)
> > static int __maybe_unused qcom_qmp_phy_runtime_suspend(struct device *dev)
> > {
> > struct qcom_qmp *qmp = dev_get_drvdata(dev);
> > - struct qmp_phy *qphy = qmp->phys[0];
> > + struct qmp_phy *qphy = qmp->usb_phy;
> > const struct qmp_phy_cfg *cfg = qphy->cfg;
> >
> > dev_vdbg(dev, "Suspending QMP phy, mode:%d\n", qphy->mode);
> >
> > - /* Supported only for USB3 PHY and luckily USB3 is the first phy */
> > - if (cfg->type != PHY_TYPE_USB3)
> > - return 0;
>
> This is still not correct as this code would now be executed also for
> PCIe and UFS PHYs, which wasn't the case before.
Ah right. So weirdly, the conditional should be kept.