i2c: st: use pm_sleep_ptr to avoid ifdef CONFIG_PM_SLEEP

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>
This commit is contained in:
Alain Volmat 2023-02-06 22:03:23 +01:00 committed by Wolfram Sang
parent 001e944fc1
commit fce55da31d

View 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,