drivers/i2c/busses/i2c-imx.c | 2 ++ 1 file changed, 2 insertions(+)
Switch different pinctrl state in different system power status.
Signed-off-by: Carlos Song <carlos.song@nxp.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
---
Change for V2:
- Add Frank reviewed-by. No code change.
---
drivers/i2c/busses/i2c-imx.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c
index b6ed270dd04b..350346a7892c 100644
--- a/drivers/i2c/busses/i2c-imx.c
+++ b/drivers/i2c/busses/i2c-imx.c
@@ -1871,6 +1871,7 @@ static int i2c_imx_runtime_suspend(struct device *dev)
struct imx_i2c_struct *i2c_imx = dev_get_drvdata(dev);
clk_disable(i2c_imx->clk);
+ pinctrl_pm_select_sleep_state(dev);
return 0;
}
@@ -1880,6 +1881,7 @@ static int i2c_imx_runtime_resume(struct device *dev)
struct imx_i2c_struct *i2c_imx = dev_get_drvdata(dev);
int ret;
+ pinctrl_pm_select_default_state(dev);
ret = clk_enable(i2c_imx->clk);
if (ret)
dev_err(dev, "can't enable I2C clock, ret=%d\n", ret);
--
2.34.1
On Wed, Dec 18, 2024 at 12:41:14PM +0800, Carlos Song wrote: > Switch different pinctrl state in different system power status. > > Signed-off-by: Carlos Song <carlos.song@nxp.com> > Reviewed-by: Frank Li <Frank.Li@nxp.com> > --- > Change for V2: > - Add Frank reviewed-by. No code change. > --- > drivers/i2c/busses/i2c-imx.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c > index b6ed270dd04b..350346a7892c 100644 > --- a/drivers/i2c/busses/i2c-imx.c > +++ b/drivers/i2c/busses/i2c-imx.c > @@ -1871,6 +1871,7 @@ static int i2c_imx_runtime_suspend(struct device *dev) > struct imx_i2c_struct *i2c_imx = dev_get_drvdata(dev); > > clk_disable(i2c_imx->clk); > + pinctrl_pm_select_sleep_state(dev); > > return 0; > } > @@ -1880,6 +1881,7 @@ static int i2c_imx_runtime_resume(struct device *dev) > struct imx_i2c_struct *i2c_imx = dev_get_drvdata(dev); > int ret; > > + pinctrl_pm_select_default_state(dev); Both pinctrl_pm_select_sleep_state() and pinctrl_pm_select_default_state() may fail. Please use return values. -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
On Wed, Dec 18, 2024 at 12:41:14PM +0800, Carlos Song wrote: > Switch different pinctrl state in different system power status. > > Signed-off-by: Carlos Song <carlos.song@nxp.com> > Reviewed-by: Frank Li <Frank.Li@nxp.com> > --- > Change for V2: > - Add Frank reviewed-by. No code change. Needn't send v2 if only add review-by tags without any code change. Frank > --- > drivers/i2c/busses/i2c-imx.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c > index b6ed270dd04b..350346a7892c 100644 > --- a/drivers/i2c/busses/i2c-imx.c > +++ b/drivers/i2c/busses/i2c-imx.c > @@ -1871,6 +1871,7 @@ static int i2c_imx_runtime_suspend(struct device *dev) > struct imx_i2c_struct *i2c_imx = dev_get_drvdata(dev); > > clk_disable(i2c_imx->clk); > + pinctrl_pm_select_sleep_state(dev); > > return 0; > } > @@ -1880,6 +1881,7 @@ static int i2c_imx_runtime_resume(struct device *dev) > struct imx_i2c_struct *i2c_imx = dev_get_drvdata(dev); > int ret; > > + pinctrl_pm_select_default_state(dev); > ret = clk_enable(i2c_imx->clk); > if (ret) > dev_err(dev, "can't enable I2C clock, ret=%d\n", ret); > -- > 2.34.1 >
© 2016 - 2026 Red Hat, Inc.