[PATCH v2 2/2] phy: qcom-snps-femto-v2: add system sleep PM ops
Adrien Thierry
athierry at redhat.com
Mon Jun 5 11:44:54 PDT 2023
Add the system sleep suspend and resume callbacks, reusing the same code
as the runtime suspend and resume callbacks.
Signed-off-by: Adrien Thierry <athierry at redhat.com>
---
I'm still a bit confused as to what the difference is between
suspend/resume PM ops and the struct usb_phy set_suspend() callback.
Please tell me if I should be populating the latter instead.
drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c b/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c
index ce1d2f8b568a..378a5029f61e 100644
--- a/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c
+++ b/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c
@@ -179,7 +179,7 @@ static inline void qcom_snps_hsphy_write_mask(void __iomem *base, u32 offset,
readl_relaxed(base + offset);
}
-static int qcom_snps_hsphy_suspend(struct qcom_snps_hsphy *hsphy)
+static int qcom_snps_hsphy_do_suspend(struct qcom_snps_hsphy *hsphy)
{
dev_dbg(&hsphy->phy->dev, "Suspend QCOM SNPS PHY\n");
@@ -199,7 +199,7 @@ static int qcom_snps_hsphy_suspend(struct qcom_snps_hsphy *hsphy)
return 0;
}
-static int qcom_snps_hsphy_resume(struct qcom_snps_hsphy *hsphy)
+static int qcom_snps_hsphy_do_resume(struct qcom_snps_hsphy *hsphy)
{
int ret;
@@ -214,25 +214,25 @@ static int qcom_snps_hsphy_resume(struct qcom_snps_hsphy *hsphy)
return 0;
}
-static int __maybe_unused qcom_snps_hsphy_runtime_suspend(struct device *dev)
+static int __maybe_unused qcom_snps_hsphy_suspend(struct device *dev)
{
struct qcom_snps_hsphy *hsphy = dev_get_drvdata(dev);
if (!hsphy->phy_initialized)
return 0;
- qcom_snps_hsphy_suspend(hsphy);
+ qcom_snps_hsphy_do_suspend(hsphy);
return 0;
}
-static int __maybe_unused qcom_snps_hsphy_runtime_resume(struct device *dev)
+static int __maybe_unused qcom_snps_hsphy_resume(struct device *dev)
{
struct qcom_snps_hsphy *hsphy = dev_get_drvdata(dev);
if (!hsphy->phy_initialized)
return 0;
- qcom_snps_hsphy_resume(hsphy);
+ qcom_snps_hsphy_do_resume(hsphy);
return 0;
}
@@ -518,8 +518,10 @@ static const struct of_device_id qcom_snps_hsphy_of_match_table[] = {
MODULE_DEVICE_TABLE(of, qcom_snps_hsphy_of_match_table);
static const struct dev_pm_ops qcom_snps_hsphy_pm_ops = {
- SET_RUNTIME_PM_OPS(qcom_snps_hsphy_runtime_suspend,
- qcom_snps_hsphy_runtime_resume, NULL)
+ SET_RUNTIME_PM_OPS(qcom_snps_hsphy_suspend,
+ qcom_snps_hsphy_resume, NULL)
+ SET_SYSTEM_SLEEP_PM_OPS(qcom_snps_hsphy_suspend,
+ qcom_snps_hsphy_resume)
};
static void qcom_snps_hsphy_override_param_update_val(
--
2.40.1
More information about the linux-phy
mailing list