diff mbox series

pwm: imx-tpm: Enable pinctrl setting for sleep state

Message ID 20240514200534.73847-1-shenwei.wang@nxp.com
State New
Headers show
Series pwm: imx-tpm: Enable pinctrl setting for sleep state | expand

Commit Message

Shenwei Wang May 14, 2024, 8:05 p.m. UTC
Apply the pinctrl setting of sleep state when system enters
suspend state.
Restore to the default pinctrl setting when system resumes.

Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
---
 drivers/pwm/pwm-imx-tpm.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/drivers/pwm/pwm-imx-tpm.c b/drivers/pwm/pwm-imx-tpm.c
index c50ddbac43c8..19245790c67c 100644
--- a/drivers/pwm/pwm-imx-tpm.c
+++ b/drivers/pwm/pwm-imx-tpm.c
@@ -393,7 +393,7 @@  static int pwm_imx_tpm_suspend(struct device *dev)
 
 	clk_disable_unprepare(tpm->clk);
 
-	return 0;
+	return pinctrl_pm_select_sleep_state(dev);
 }
 
 static int pwm_imx_tpm_resume(struct device *dev)
@@ -401,6 +401,10 @@  static int pwm_imx_tpm_resume(struct device *dev)
 	struct imx_tpm_pwm_chip *tpm = dev_get_drvdata(dev);
 	int ret = 0;
 
+	ret = pinctrl_pm_select_default_state(dev);
+	if (ret)
+		return ret;
+
 	ret = clk_prepare_enable(tpm->clk);
 	if (ret)
 		dev_err(dev, "failed to prepare or enable clock: %d\n", ret);