Hi Jonathan, On Mon, Jan 02, 2023 at 06:17:41PM +0000, 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: Jeff LaBundy <jeff@xxxxxxxxxxx> Reviewed-by: Jeff LaBundy <jeff@xxxxxxxxxxx> Thank you for doing this! Just a note to Dmitry that this would need to be applied after [1] so as to avoid a tiny merge conflict. [1] https://patchwork.kernel.org/patch/13087784/ > --- > drivers/input/misc/iqs269a.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/input/misc/iqs269a.c b/drivers/input/misc/iqs269a.c > index a348247d3d38..8348d8c85e1d 100644 > --- a/drivers/input/misc/iqs269a.c > +++ b/drivers/input/misc/iqs269a.c > @@ -1697,7 +1697,7 @@ static int iqs269_probe(struct i2c_client *client) > return error; > } > > -static int __maybe_unused iqs269_suspend(struct device *dev) > +static int iqs269_suspend(struct device *dev) > { > struct iqs269_private *iqs269 = dev_get_drvdata(dev); > struct i2c_client *client = iqs269->client; > @@ -1756,7 +1756,7 @@ static int __maybe_unused iqs269_suspend(struct device *dev) > return error; > } > > -static int __maybe_unused iqs269_resume(struct device *dev) > +static int iqs269_resume(struct device *dev) > { > struct iqs269_private *iqs269 = dev_get_drvdata(dev); > struct i2c_client *client = iqs269->client; > @@ -1803,7 +1803,7 @@ static int __maybe_unused iqs269_resume(struct device *dev) > return error; > } > > -static SIMPLE_DEV_PM_OPS(iqs269_pm, iqs269_suspend, iqs269_resume); > +static DEFINE_SIMPLE_DEV_PM_OPS(iqs269_pm, iqs269_suspend, iqs269_resume); > > static const struct of_device_id iqs269_of_match[] = { > { .compatible = "azoteq,iqs269a" }, > @@ -1815,7 +1815,7 @@ static struct i2c_driver iqs269_i2c_driver = { > .driver = { > .name = "iqs269a", > .of_match_table = iqs269_of_match, > - .pm = &iqs269_pm, > + .pm = pm_sleep_ptr(&iqs269_pm), > }, > .probe_new = iqs269_probe, > }; > -- > 2.39.0 > Kind regards, Jeff LaBundy