[PATCH v6 0/6] iio: dac: ad5504: bindings, cleanups, locking, and scale fixes

From: Taha Ed-Dafili

Date: Sat Aug 22 2026 - 04:59:13 EST


Jonathan Cameron applied patches 2 (sort headers alphabetically) and 4
(introduce local dev pointer) from v3 directly to iio/testing. This
series rebases on top of that state and does not re-send those
patches.

This v6 series addresses one remaining item from the v5 review by
Andy Shevchenko:

* In ad5504_write_dac_powerdown(), move guard(mutex) to after
kstrtobool() since input parsing does not touch shared state and
does not need to be under the lock (Andy)

Testing:
No functional change from v5. This only narrows the critical section
in one sysfs write path. Re-verified on ARM64 Raspberry Pi 5 (BCM2712):
powerdown sysfs read/write and powerdown mode switching (20kohm_to_gnd,
three_state) verified on all four channels without errors.

Previous versions:
v5: https://lore.kernel.org/linux-iio/20260821102255.36705-1-0rayn.dev@xxxxxxxxx/
v4: https://lore.kernel.org/linux-iio/20260817211118.21833-1-0rayn.dev@xxxxxxxxx/
v3: https://lore.kernel.org/linux-iio/20260509142047.30302-1-0rayn.dev@xxxxxxxxx/
v2: https://lore.kernel.org/linux-iio/20260310174835.24209-1-0rayn.dev@xxxxxxxxx/
v1: https://lore.kernel.org/linux-iio/20260212181955.42724-1-0rayn.dev@xxxxxxxxx/

Thank you to Jonathan Cameron, David Lechner, Andy Shevchenko, Nuno Sá,
Krzysztof Kozlowski, Conor Dooley, Uwe Kleine-König, and Joshua Crofts
for the continued reviews.

Taha Ed-Dafili (6):
dt-bindings: iio: dac: ad5504: add output-range and missing gpios
iio: dac: ad5504: Align headers with IWYU principle
iio: dac: ad5504: separate ACPI and DT paths
iio: dac: ad5504: remove legacy platform data support
iio: dac: ad5504: introduce local lock to protect state and spi
transfers
iio: dac: ad5504: support scale via output-range-microvolt property

.../bindings/iio/dac/adi,ad5504.yaml | 39 ++++++++-
drivers/iio/dac/ad5504.c | 82 +++++++++++++++----
include/linux/iio/dac/ad5504.h | 15 ----
3 files changed, 103 insertions(+), 33 deletions(-)
delete mode 100644 include/linux/iio/dac/ad5504.h

--
2.55.0