On Mon, 8 Aug 2022 13:26:42 +0200 Crt Mori <cmo@xxxxxxxxxxx> wrote: > Not sure if I should apply both but: > > Acked-by: Crt Mori <cmo@xxxxxxxxxxx> > Tested-by: Crt Mori <cmo@xxxxxxxxxxx> Absolutely. Both is perfect. Thanks! > > > On Sun, 7 Aug 2022 at 20:54, Jonathan Cameron <jic23@xxxxxxxxxx> wrote: > > > > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > > > The callbacks in this driver are simple and it doesn't matter if > > they are unnecessarily called multiple times. However, we might as > > well not repeat the effort if the device is already suspended. > > The new DEFINE_RUNTIME_DEV_PM_OPS() has the advantage that we don't > > need to mark the callbacks __maybe_unused. The compiler will still > > remove them for us if CONFIG_PM is not set. > > > > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > Cc: Crt Mori <cmo@xxxxxxxxxxx> > > --- > > drivers/iio/temperature/mlx90632.c | 10 +++++----- > > 1 file changed, 5 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/iio/temperature/mlx90632.c b/drivers/iio/temperature/mlx90632.c > > index 7ee7ff8047a4..9fc69d099784 100644 > > --- a/drivers/iio/temperature/mlx90632.c > > +++ b/drivers/iio/temperature/mlx90632.c > > @@ -952,7 +952,7 @@ static const struct of_device_id mlx90632_of_match[] = { > > }; > > MODULE_DEVICE_TABLE(of, mlx90632_of_match); > > > > -static int __maybe_unused mlx90632_pm_suspend(struct device *dev) > > +static int mlx90632_pm_suspend(struct device *dev) > > { > > struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev)); > > struct mlx90632_data *data = iio_priv(indio_dev); > > @@ -960,7 +960,7 @@ static int __maybe_unused mlx90632_pm_suspend(struct device *dev) > > return mlx90632_sleep(data); > > } > > > > -static int __maybe_unused mlx90632_pm_resume(struct device *dev) > > +static int mlx90632_pm_resume(struct device *dev) > > { > > struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev)); > > struct mlx90632_data *data = iio_priv(indio_dev); > > @@ -968,14 +968,14 @@ static int __maybe_unused mlx90632_pm_resume(struct device *dev) > > return mlx90632_wakeup(data); > > } > > > > -static UNIVERSAL_DEV_PM_OPS(mlx90632_pm_ops, mlx90632_pm_suspend, > > - mlx90632_pm_resume, NULL); > > +static DEFINE_RUNTIME_DEV_PM_OPS(mlx90632_pm_ops, mlx90632_pm_suspend, > > + mlx90632_pm_resume, NULL); > > > > static struct i2c_driver mlx90632_driver = { > > .driver = { > > .name = "mlx90632", > > .of_match_table = mlx90632_of_match, > > - .pm = &mlx90632_pm_ops, > > + .pm = pm_ptr(&mlx90632_pm_ops), > > }, > > .probe = mlx90632_probe, > > .remove = mlx90632_remove, > > -- > > 2.37.1 > >