Skip to contentSkip to conversation

staging: iio: adt7316: modernize power management

PATCH In review Michael Harris 3 participants 3 messages Jan 6 – Jan 11

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH v3 1/1 staging: iio: adt7316: modernize power management

Replaced use of deprecated function SIMPLE_DEV_PM_OPS() with EXPORT_GPL_SIMPLE_DEV_PM_OPS().

Removed PM preprocessor conditions with usage of pm_sleep_ptr().

---
v3: Fix commit message function/macro references
v2: Corrected staging list email address

---
 drivers/staging/iio/addac/adt7316-i2c.c | 2 +-
 drivers/staging/iio/addac/adt7316-spi.c | 2 +-
 drivers/staging/iio/addac/adt7316.c     | 6 ++----
 drivers/staging/iio/addac/adt7316.h     | 6 +-----
 4 files changed, 5 insertions(+), 11 deletions(-)
drivers/staging/iio/addac/adt7316-i2c.c +1 -1
index f45968ef94ea..3bdaee925dee 100644
@@ -136,7 +136,7 @@ static struct i2c_driver adt7316_driver = {
 	.driver = {
 		.name = "adt7316",
 		.of_match_table = adt7316_of_match,
-		.pm = ADT7316_PM_OPS,
+		.pm = pm_sleep_ptr(&adt7316_pm_ops),
 	},
 	.probe = adt7316_i2c_probe,
 	.id_table = adt7316_i2c_id,
drivers/staging/iio/addac/adt7316-spi.c +1 -1
index af513e003da7..f91325d11394 100644
@@ -142,7 +142,7 @@ static struct spi_driver adt7316_driver = {
 	.driver = {
 		.name = "adt7316",
 		.of_match_table = adt7316_of_spi_match,
-		.pm = ADT7316_PM_OPS,
+		.pm = pm_sleep_ptr(&adt7316_pm_ops),
 	},
 	.probe = adt7316_spi_probe,
 	.id_table = adt7316_spi_id,
drivers/staging/iio/addac/adt7316.c +2 -4
index 8a9a8262c2be..59fb3bd26bc1 100644
@@ -2082,7 +2082,6 @@ static const struct attribute_group adt7516_event_attribute_group = {
 	.name = "events",
 };
 
-#ifdef CONFIG_PM_SLEEP
 static int adt7316_disable(struct device *dev)
 {
 	struct iio_dev *dev_info = dev_get_drvdata(dev);
@@ -2098,9 +2097,8 @@ static int adt7316_enable(struct device *dev)
 
 	return _adt7316_store_enabled(chip, 1);
 }
-EXPORT_SYMBOL_GPL(adt7316_pm_ops);
-SIMPLE_DEV_PM_OPS(adt7316_pm_ops, adt7316_disable, adt7316_enable);
-#endif
+
+EXPORT_GPL_SIMPLE_DEV_PM_OPS(adt7316_pm_ops, adt7316_disable, adt7316_enable);
 
 static const struct iio_info adt7316_info = {
 	.attrs = &adt7316_attribute_group,
drivers/staging/iio/addac/adt7316.h +1 -5
index 8c2a92ae7157..f208f0d3583a 100644
@@ -22,12 +22,8 @@ struct adt7316_bus {
 	int (*multi_write)(void *client, u8 first_reg, u8 count, u8 *data);
 };
 
-#ifdef CONFIG_PM_SLEEP
 extern const struct dev_pm_ops adt7316_pm_ops;
-#define ADT7316_PM_OPS (&adt7316_pm_ops)
-#else
-#define ADT7316_PM_OPS NULL
-#endif
+
 int adt7316_probe(struct device *dev, struct adt7316_bus *bus,
 		  const char *name);
 
Signature · 1 line
2.52.0
Reviewed-by on v3 1/1
#1 lore raw
Quoted 4 lines · Michael Harris

Replaced use of deprecated function SIMPLE_DEV_PM_OPS() with EXPORT_GPL_SIMPLE_DEV_PM_OPS().

Removed PM preprocessor conditions with usage of pm_sleep_ptr().

FWIW,

Signature · 2 lines
With Best Regards,
Andy Shevchenko
maintainer
#2 lore raw
Quoted 8 lines · On Tue, 6 Jan 2026 23:04:00 +0200 Andy Shevchenko…
Quoted 4 lines · Michael Harris

Replaced use of deprecated function SIMPLE_DEV_PM_OPS() with EXPORT_GPL_SIMPLE_DEV_PM_OPS().

Removed PM preprocessor conditions with usage of pm_sleep_ptr().

FWIW,

Applied to the togreg branch of iio.git and pushed out as testing.

thanks,

Jonathan

Quoted 1 line