iio: dac: ltc1660: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
authorJonathan Cameron <Jonathan.Cameron@huawei.com>
Tue, 21 Jun 2022 20:26:55 +0000 (21:26 +0100)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Mon, 18 Jul 2022 17:48:18 +0000 (18:48 +0100)
Using these newer macros allows the compiler to remove the unused
structure and functions when !CONFIG_PM_SLEEP + removes the need to
mark pm functions __maybe_unused.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Marcus Folkesson <marcus.folkesson@gmail.com>
Reviewed-by: Marcus Folkesson <marcus.folkesson@gmail.com>
Reviewed-by: Paul Cercueil <paul@crapouillou.net>
Link: https://lore.kernel.org/r/20220621202719.13644-13-jic23@kernel.org
drivers/iio/dac/ltc1660.c

index c76233c9bb72b7524a1f15986b9731565013c36f..2758fc8a5ad5cade6c03a50e13a13f9407b31b51 100644 (file)
@@ -137,20 +137,21 @@ static const struct iio_info ltc1660_info = {
        .write_raw = &ltc1660_write_raw,
 };
 
-static int __maybe_unused ltc1660_suspend(struct device *dev)
+static int ltc1660_suspend(struct device *dev)
 {
        struct ltc1660_priv *priv = iio_priv(spi_get_drvdata(
                                                to_spi_device(dev)));
        return regmap_write(priv->regmap, LTC1660_REG_SLEEP, 0x00);
 }
 
-static int __maybe_unused ltc1660_resume(struct device *dev)
+static int ltc1660_resume(struct device *dev)
 {
        struct ltc1660_priv *priv = iio_priv(spi_get_drvdata(
                                                to_spi_device(dev)));
        return regmap_write(priv->regmap, LTC1660_REG_WAKE, 0x00);
 }
-static SIMPLE_DEV_PM_OPS(ltc1660_pm_ops, ltc1660_suspend, ltc1660_resume);
+static DEFINE_SIMPLE_DEV_PM_OPS(ltc1660_pm_ops, ltc1660_suspend,
+                               ltc1660_resume);
 
 static int ltc1660_probe(struct spi_device *spi)
 {
@@ -233,7 +234,7 @@ static struct spi_driver ltc1660_driver = {
        .driver = {
                .name = "ltc1660",
                .of_match_table = ltc1660_dt_ids,
-               .pm = &ltc1660_pm_ops,
+               .pm = pm_sleep_ptr(&ltc1660_pm_ops),
        },
        .probe  = ltc1660_probe,
        .remove = ltc1660_remove,