From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> After Paul's work [1] to cleanup us the PM related macros allow use of pm_ptr() and pm_sleep_ptr() making the compiler figure out what structures and functions can be dropped without __maybe_unused mess, I've been working through converting IIO. [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/include/linux/pm.h?id=c06ef740d401d0f4ab188882bf6f8d9cf0f75eaf This particular set is the low hanging fruit. The majority of the remainder in IIO require more thought because: 1) They only have runtime pm callbacks, but no sleep ones. Need to check there is no reason we can't use use the force_runtime_suspend approach. 2) Odd cases like using same functions for sleep and runtime pm but not via force runtime suspend. 3) Other weird corner cases where I want to take a closer look before sending them out (I think some of them are buggy). Anyhow, whilst I've CC'd a lot of people I suspect some will no longer be active on these addresses - hence if anyone has time to look at a few patches rather than just the ones for drivers they maintain that would be much appreciated. In some cases I haven't CC'd anyone on a particular patch because I'm fairly sure the author is not longer at the same address. Any review of those ones in particular would be great. Thanks, Jonathan Jonathan Cameron (36): iio: accel: bma220: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: adc: ad799x: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: adc: at91-sam5d2: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: adc: imx7d_adc: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: adc: meson_saradc: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: adc: mt6577_auxadc: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: adc: stmpe-adc: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: adc: ti-am335x: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: adc: xilinx-ams: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: chemical: scd4x: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: dac: ds4424: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: dac: ltc1660: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: dac: max517: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: dac: max5821: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: dac: mcp4725: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: gyro: itg3200: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: health: afe4403: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: health: afe4404: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: light: al3010: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: light: al3320a: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: light: as73211: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: light: bh1750: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: light: cm3605: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: proximity: cros_ec_mkbp: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: temperature: ltc2983: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() iio: light: us5182: Switch from CONFIG_PM guards to pm_ptr() etc iio: adc: imx8qxp: Switch to DEFINE_RUNTIME_DEV_PM_OPS and pm_ptr() iio: light: gp2ap002: Switch to DEFINE_RUNTIME_DEV_PM_OPS and pm_ptr() iio: light: isl29028: Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr() iio: light: tsl2583: Use DEFINE_RUNTIME_DEV_PM_OPS and pm_ptr() iio: light: tsl2591: Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr() iio: light: vcnl4000: Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr() macros iio: light: vcnl4035: Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr() macros iio: light: veml6030: Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr() macros iio: magnetometer: ak8974: Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr() macros iio: magn: yas530: Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr() macros drivers/iio/accel/bma220_spi.c | 8 ++++---- drivers/iio/adc/ad799x.c | 8 ++++---- drivers/iio/adc/at91-sama5d2_adc.c | 9 +++++---- drivers/iio/adc/imx7d_adc.c | 5 +++-- drivers/iio/adc/imx8qxp-adc.c | 13 ++++++------- drivers/iio/adc/meson_saradc.c | 10 +++++----- drivers/iio/adc/mt6577_auxadc.c | 12 ++++++------ drivers/iio/adc/stmpe-adc.c | 6 +++--- drivers/iio/adc/ti_am335x_adc.c | 8 ++++---- drivers/iio/adc/xilinx-ams.c | 8 ++++---- drivers/iio/chemical/scd4x.c | 8 ++++---- drivers/iio/dac/ds4424.c | 8 ++++---- drivers/iio/dac/ltc1660.c | 9 +++++---- drivers/iio/dac/max517.c | 8 ++++---- drivers/iio/dac/max5821.c | 9 +++++---- drivers/iio/dac/mcp4725.c | 9 +++++---- drivers/iio/gyro/itg3200_core.c | 9 +++++---- drivers/iio/health/afe4403.c | 9 +++++---- drivers/iio/health/afe4404.c | 9 +++++---- drivers/iio/light/al3010.c | 8 ++++---- drivers/iio/light/al3320a.c | 9 +++++---- drivers/iio/light/as73211.c | 9 +++++---- drivers/iio/light/bh1750.c | 6 +++--- drivers/iio/light/cm3605.c | 13 +++++-------- drivers/iio/light/gp2ap002.c | 14 +++++--------- drivers/iio/light/isl29028.c | 13 +++++-------- drivers/iio/light/tsl2583.c | 13 +++++-------- drivers/iio/light/tsl2591.c | 12 +++++------- drivers/iio/light/us5182d.c | 8 +++----- drivers/iio/light/vcnl4000.c | 14 +++++--------- drivers/iio/light/vcnl4035.c | 14 +++++--------- drivers/iio/light/veml6030.c | 14 +++++--------- drivers/iio/magnetometer/ak8974.c | 14 +++++--------- drivers/iio/magnetometer/yamaha-yas530.c | 14 +++++--------- drivers/iio/proximity/cros_ec_mkbp_proximity.c | 8 ++++---- drivers/iio/temperature/ltc2983.c | 9 +++++---- 36 files changed, 165 insertions(+), 192 deletions(-) -- 2.36.1