[PATCH v2 00/17] iio: Stop looking at pm_runtime_put_autosuspend() return codes

From: Brian Norris

Date: Wed Oct 21 2026 - 20:01:12 EST


Similar to this effort:

Subject: [PATCH v1 00/23] PM: runtime: Convert pm_runtime_put() to a void function
https://lore.kernel.org/all/6245770.lOV4Wx5bFT@rafael.j.wysocki/

i.e., commit 3afd8df02433 ("PM: runtime: Change pm_runtime_put() return
type to void") and friends.

As with pm_runtime_put(), there is very little value in return-code
checking for pm_runtime_put_autosuspend().

Checking the return code is more likely to produce a race condition
(fighting with user space writing "on" to the "control" attribute) than
to tell a consumer useful info.

Because the IIO subsystem has the bulk of drivers that inspect
pm_runtime_put_autosuspend(), and because those drivers have a lot of
other issues touching the same code (which Jonathan suggested [1] I
fix -- I fix some, but not all), I'm sending an IIO-specific series
under a v2 label (since many of the changes are still borrowed from the
earlier series).

For reference, the larger v1 series can be found at [2].

- Brian

[1] https://lore.kernel.org/all/20261018211807.66bfea0d@jic23-hlaptop/
[2] https://lore.kernel.org/all/20261006231900.3230373-1-briannorris@xxxxxxxxxxxx/

Changes in v2:
* Split iio into its own series
* Split into per-driver patches
* Fix various usage bugs in these iio drivers in the adjacent code
* Remove now-unnecessary helpers
* Maintain Reviewed-by from v1 for drivers where there was no
additional change (aside from splitting up patches)

Brian Norris (17):
iio: accel: fxls8962af: Discard pm_runtime_put_autosuspend() return
values
iio: accel: kxcjk-1013: Discard pm_runtime_put_autosuspend() return
values
iio: accel: mma8452: Discard pm_runtime_put_autosuspend() return
values
iio: accel: mma955x: Discard pm_runtime_put_autosuspend() return
values
iio: accel: bmc150: Discard pm_runtime_put_autosuspend() return values
iio: adc: rcar-gyroadc: Discard pm_runtime_put_autosuspend() return
values
iio: adc: ti-ads1015: Discard pm_runtime_put_autosuspend() return
values
iio: chemical: atlas-sensor: Discard pm_runtime_put_autosuspend()
return values
iio: hid-sensors: Discard pm_runtime_put_autosuspend() return values
iio: gyro: bmg160: Discard pm_runtime_put_autosuspend() return values
iio: gyro: fxas21002c: Discard pm_runtime_put_autosuspend() return
values
iio: imu: kmx61: Discard pm_runtime_put_autosuspend() return values
iio: light: apds9960: Discard pm_runtime_put_autosuspend() return
values
iio: light: pa12203001: Discard pm_runtime_put_autosuspend() return
values
iio: light: rpr0521: Discard pm_runtime_put_autosuspend() return
values
iio: light: tsl2583: Discard pm_runtime_put_autosuspend() return
values
iio: light: us5182d: Discard pm_runtime_put_autosuspend() return
values

drivers/iio/accel/bmc150-accel-core.c | 75 +++-----
drivers/iio/accel/fxls8962af-core.c | 56 +++---
drivers/iio/accel/kxcjk-1013.c | 118 ++++++------
drivers/iio/accel/mma8452.c | 100 ++++++----
drivers/iio/accel/mma9551.c | 21 ++-
drivers/iio/accel/mma9551_core.c | 39 +---
drivers/iio/accel/mma9551_core.h | 1 -
drivers/iio/accel/mma9553.c | 36 ++--
drivers/iio/adc/rcar-gyroadc.c | 4 +-
drivers/iio/adc/ti-ads1015.c | 50 ++---
drivers/iio/chemical/atlas-sensor.c | 4 +-
.../common/hid-sensors/hid-sensor-trigger.c | 14 +-
drivers/iio/gyro/bmg160_core.c | 178 ++++++++----------
drivers/iio/gyro/fxas21002c_core.c | 33 +---
drivers/iio/imu/kmx61.c | 25 +--
drivers/iio/light/apds9960.c | 48 ++---
drivers/iio/light/pa12203001.c | 26 +--
drivers/iio/light/rpr0521.c | 57 +++---
drivers/iio/light/tsl2583.c | 27 +--
drivers/iio/light/us5182d.c | 32 +---
20 files changed, 401 insertions(+), 543 deletions(-)

--
2.56.0.218.g1ec904b173-goog