Hi, On 1/2/23 19:18, Jonathan Cameron wrote: > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > SIMPLE_DEV_PM_OPS() is deprecated as it requires explicit protection > against unused function warnings. The new combination of pm_sleep_ptr() > and DEFINE_SIMPLE_DEV_PM_OPS() allows the compiler to see the functions, > thus suppressing the warning, but still allowing the unused code to be > removed. Thus also drop the __maybe_unused markings. > > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > Cc: Hans de Goede <hdegoede@xxxxxxxxxx> Thanks, patch looks good to me: Reviewed-by: Hans de Goede <hdegoede@xxxxxxxxxx> Regards, Hans > --- > drivers/input/touchscreen/silead.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/input/touchscreen/silead.c b/drivers/input/touchscreen/silead.c > index 8a7351c4414c..a37fac089010 100644 > --- a/drivers/input/touchscreen/silead.c > +++ b/drivers/input/touchscreen/silead.c > @@ -736,7 +736,7 @@ static int silead_ts_probe(struct i2c_client *client) > return 0; > } > > -static int __maybe_unused silead_ts_suspend(struct device *dev) > +static int silead_ts_suspend(struct device *dev) > { > struct i2c_client *client = to_i2c_client(dev); > > @@ -745,7 +745,7 @@ static int __maybe_unused silead_ts_suspend(struct device *dev) > return 0; > } > > -static int __maybe_unused silead_ts_resume(struct device *dev) > +static int silead_ts_resume(struct device *dev) > { > struct i2c_client *client = to_i2c_client(dev); > bool second_try = false; > @@ -784,7 +784,7 @@ static int __maybe_unused silead_ts_resume(struct device *dev) > return 0; > } > > -static SIMPLE_DEV_PM_OPS(silead_ts_pm, silead_ts_suspend, silead_ts_resume); > +static DEFINE_SIMPLE_DEV_PM_OPS(silead_ts_pm, silead_ts_suspend, silead_ts_resume); > > static const struct i2c_device_id silead_ts_id[] = { > { "gsl1680", 0 }, > @@ -832,7 +832,7 @@ static struct i2c_driver silead_ts_driver = { > .name = SILEAD_TS_NAME, > .acpi_match_table = ACPI_PTR(silead_ts_acpi_match), > .of_match_table = of_match_ptr(silead_ts_of_match), > - .pm = &silead_ts_pm, > + .pm = pm_sleep_ptr(&silead_ts_pm), > }, > }; > module_i2c_driver(silead_ts_driver);