i2c: st: use pm_sleep_ptr to avoid ifdef CONFIG_PM_SLEEP
authorAlain Volmat <avolmat@me.com>
Mon, 6 Feb 2023 21:03:23 +0000 (22:03 +0100)
committerWolfram Sang <wsa@kernel.org>
Sun, 12 Feb 2023 21:06:49 +0000 (22:06 +0100)
Rely on pm_sleep_ptr when setting the pm ops and get rid
of the ifdef CONFIG_PM_SLEEP around suspend/resume functions.

Signed-off-by: Alain Volmat <avolmat@me.com>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
drivers/i2c/busses/i2c-st.c

index 8848231..f823913 100644 (file)
@@ -740,7 +740,6 @@ static int st_i2c_xfer(struct i2c_adapter *i2c_adap,
        return (ret < 0) ? ret : i;
 }
 
-#ifdef CONFIG_PM_SLEEP
 static int st_i2c_suspend(struct device *dev)
 {
        struct st_i2c_dev *i2c_dev = dev_get_drvdata(dev);
@@ -762,11 +761,7 @@ static int st_i2c_resume(struct device *dev)
        return 0;
 }
 
-static SIMPLE_DEV_PM_OPS(st_i2c_pm, st_i2c_suspend, st_i2c_resume);
-#define ST_I2C_PM      (&st_i2c_pm)
-#else
-#define ST_I2C_PM      NULL
-#endif
+static DEFINE_SIMPLE_DEV_PM_OPS(st_i2c_pm, st_i2c_suspend, st_i2c_resume);
 
 static u32 st_i2c_func(struct i2c_adapter *adap)
 {
@@ -901,7 +896,7 @@ static struct platform_driver st_i2c_driver = {
        .driver = {
                .name = "st-i2c",
                .of_match_table = st_i2c_match,
-               .pm = ST_I2C_PM,
+               .pm = pm_sleep_ptr(&st_i2c_pm),
        },
        .probe = st_i2c_probe,
        .remove = st_i2c_remove,