Message ID | 20220604161223.461847-3-jic23@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | IIO: Where dev_pm_ops rework and namespaces meet (4-8) | expand |
> From: Jonathan Cameron <Jonathan.Cameron@huawei.com> > > If CONFIG_PM_SLEEP is not defined using EXPORT_SIMPLE_DEV_PM_OPS() > in conjunction with pm_sleep_ptr() allows the compiler to remove > the unused code and data. This removes the need for __maybe_unused > markings etc. > > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> > Cc: Lorenzo Bianconi <lorenzo@kernel.org> > Link: https://lore.kernel.org/r/20220220181522.541718-6-jic23@kernel.org Acked-by: Lorenzo Bianconi <lorenzo@kernel.org> > --- > drivers/iio/humidity/hts221_core.c | 9 +++------ > drivers/iio/humidity/hts221_i2c.c | 2 +- > drivers/iio/humidity/hts221_spi.c | 2 +- > 3 files changed, 5 insertions(+), 8 deletions(-) > > diff --git a/drivers/iio/humidity/hts221_core.c b/drivers/iio/humidity/hts221_core.c > index 6a39615b6961..da9c08432ef2 100644 > --- a/drivers/iio/humidity/hts221_core.c > +++ b/drivers/iio/humidity/hts221_core.c > @@ -670,7 +670,7 @@ int hts221_probe(struct device *dev, int irq, const char *name, > } > EXPORT_SYMBOL(hts221_probe); > > -static int __maybe_unused hts221_suspend(struct device *dev) > +static int hts221_suspend(struct device *dev) > { > struct iio_dev *iio_dev = dev_get_drvdata(dev); > struct hts221_hw *hw = iio_priv(iio_dev); > @@ -680,7 +680,7 @@ static int __maybe_unused hts221_suspend(struct device *dev) > FIELD_PREP(HTS221_ENABLE_MASK, false)); > } > > -static int __maybe_unused hts221_resume(struct device *dev) > +static int hts221_resume(struct device *dev) > { > struct iio_dev *iio_dev = dev_get_drvdata(dev); > struct hts221_hw *hw = iio_priv(iio_dev); > @@ -694,10 +694,7 @@ static int __maybe_unused hts221_resume(struct device *dev) > return err; > } > > -const struct dev_pm_ops hts221_pm_ops = { > - SET_SYSTEM_SLEEP_PM_OPS(hts221_suspend, hts221_resume) > -}; > -EXPORT_SYMBOL(hts221_pm_ops); > +EXPORT_SIMPLE_DEV_PM_OPS(hts221_pm_ops, hts221_suspend, hts221_resume); > > MODULE_AUTHOR("Lorenzo Bianconi <lorenzo.bianconi@st.com>"); > MODULE_DESCRIPTION("STMicroelectronics hts221 sensor driver"); > diff --git a/drivers/iio/humidity/hts221_i2c.c b/drivers/iio/humidity/hts221_i2c.c > index cab39c4756f8..933b05e4d972 100644 > --- a/drivers/iio/humidity/hts221_i2c.c > +++ b/drivers/iio/humidity/hts221_i2c.c > @@ -62,7 +62,7 @@ MODULE_DEVICE_TABLE(i2c, hts221_i2c_id_table); > static struct i2c_driver hts221_driver = { > .driver = { > .name = "hts221_i2c", > - .pm = &hts221_pm_ops, > + .pm = pm_sleep_ptr(&hts221_pm_ops), > .of_match_table = hts221_i2c_of_match, > .acpi_match_table = ACPI_PTR(hts221_acpi_match), > }, > diff --git a/drivers/iio/humidity/hts221_spi.c b/drivers/iio/humidity/hts221_spi.c > index 729e86e433b1..888c5eab944c 100644 > --- a/drivers/iio/humidity/hts221_spi.c > +++ b/drivers/iio/humidity/hts221_spi.c > @@ -55,7 +55,7 @@ MODULE_DEVICE_TABLE(spi, hts221_spi_id_table); > static struct spi_driver hts221_driver = { > .driver = { > .name = "hts221_spi", > - .pm = &hts221_pm_ops, > + .pm = pm_sleep_ptr(&hts221_pm_ops), > .of_match_table = hts221_spi_of_match, > }, > .probe = hts221_spi_probe, > -- > 2.36.1 >
diff --git a/drivers/iio/humidity/hts221_core.c b/drivers/iio/humidity/hts221_core.c index 6a39615b6961..da9c08432ef2 100644 --- a/drivers/iio/humidity/hts221_core.c +++ b/drivers/iio/humidity/hts221_core.c @@ -670,7 +670,7 @@ int hts221_probe(struct device *dev, int irq, const char *name, } EXPORT_SYMBOL(hts221_probe); -static int __maybe_unused hts221_suspend(struct device *dev) +static int hts221_suspend(struct device *dev) { struct iio_dev *iio_dev = dev_get_drvdata(dev); struct hts221_hw *hw = iio_priv(iio_dev); @@ -680,7 +680,7 @@ static int __maybe_unused hts221_suspend(struct device *dev) FIELD_PREP(HTS221_ENABLE_MASK, false)); } -static int __maybe_unused hts221_resume(struct device *dev) +static int hts221_resume(struct device *dev) { struct iio_dev *iio_dev = dev_get_drvdata(dev); struct hts221_hw *hw = iio_priv(iio_dev); @@ -694,10 +694,7 @@ static int __maybe_unused hts221_resume(struct device *dev) return err; } -const struct dev_pm_ops hts221_pm_ops = { - SET_SYSTEM_SLEEP_PM_OPS(hts221_suspend, hts221_resume) -}; -EXPORT_SYMBOL(hts221_pm_ops); +EXPORT_SIMPLE_DEV_PM_OPS(hts221_pm_ops, hts221_suspend, hts221_resume); MODULE_AUTHOR("Lorenzo Bianconi <lorenzo.bianconi@st.com>"); MODULE_DESCRIPTION("STMicroelectronics hts221 sensor driver"); diff --git a/drivers/iio/humidity/hts221_i2c.c b/drivers/iio/humidity/hts221_i2c.c index cab39c4756f8..933b05e4d972 100644 --- a/drivers/iio/humidity/hts221_i2c.c +++ b/drivers/iio/humidity/hts221_i2c.c @@ -62,7 +62,7 @@ MODULE_DEVICE_TABLE(i2c, hts221_i2c_id_table); static struct i2c_driver hts221_driver = { .driver = { .name = "hts221_i2c", - .pm = &hts221_pm_ops, + .pm = pm_sleep_ptr(&hts221_pm_ops), .of_match_table = hts221_i2c_of_match, .acpi_match_table = ACPI_PTR(hts221_acpi_match), }, diff --git a/drivers/iio/humidity/hts221_spi.c b/drivers/iio/humidity/hts221_spi.c index 729e86e433b1..888c5eab944c 100644 --- a/drivers/iio/humidity/hts221_spi.c +++ b/drivers/iio/humidity/hts221_spi.c @@ -55,7 +55,7 @@ MODULE_DEVICE_TABLE(spi, hts221_spi_id_table); static struct spi_driver hts221_driver = { .driver = { .name = "hts221_spi", - .pm = &hts221_pm_ops, + .pm = pm_sleep_ptr(&hts221_pm_ops), .of_match_table = hts221_spi_of_match, }, .probe = hts221_spi_probe,