public inbox for linux-iio@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/22] Extend device support for AD5686 driver
@ 2026-04-22 14:45 Rodrigo Alencar via B4 Relay
  2026-04-22 14:45 ` [PATCH 01/22] dt-bindings: iio: dac: ad5696: extend device support Rodrigo Alencar via B4 Relay
                   ` (22 more replies)
  0 siblings, 23 replies; 30+ messages in thread
From: Rodrigo Alencar via B4 Relay @ 2026-04-22 14:45 UTC (permalink / raw)
  To: Jonathan Cameron, linux-iio, devicetree, linux-kernel,
	Michael Auchter, linux-hardening
  Cc: Lars-Peter Clausen, Michael Hennerich, David Lechner,
	Andy Shevchenko, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Kees Cook, Gustavo A. R. Silva, Philipp Zabel, Rodrigo Alencar

This series adds support for multiple nanoDAC parts, adding triggered
buffer and gain control support to the ad5686 DAC driver family, along
with a number of driver cleanups and fixes.

Initial patches update the device-tree bindings:
- Add compatible entries for missing and new parts;
- Add GPIO properties for RESET, GAIN and LDAC pins;
- Add missing power supplies properties.

Driver cleanups and fixes:
- Refactor include headers (IWYU);
- Switch to device managed mutex initialization;
- Drop enum chip id in favor of per-device chip_info structs;
- Fix voltage reference control on single-channel devices;
- Fix powerdown control on dual-channel devices;
- Introduce bus ops struct with a sync() operation for batching
  bus transfers.

New functionality:
- Device support for: AD5316R, AD5675, AD5697R, AD5313R, AD5317R,
  AD5674, AD5679, AD5687, AD5687R, AD5689 and AD5689R;
- Consume optional reset and new power supplies;
- LDAC GPIO handling (active-low, held low when unused);
- SPI bus sync() implementation for batching multiple transfers;
- Triggered buffer support, leveraging LDAC and sync() to flush
  all channel writes atomically;
- Gain control support through the scale property.

Signed-off-by: Rodrigo Alencar <rodrigo.alencar@analog.com>
---
Rodrigo Alencar (22):
      dt-bindings: iio: dac: ad5696: extend device support
      dt-bindings: iio: dac: ad5696: add reset/ldac/gain gpio support
      dt-bindings: iio: dac: ad5696: rework on power supplies
      dt-bindings: iio: dac: ad5686: extend device support
      dt-bindings: iio: dac: ad5686: add reset/ldac/gain gpio support
      dt-bindings: iio: dac: ad5686: rework on power supplies
      iio: dac: ad5686: refactor include headers
      iio: dac: ad5686: remove redundant register definition
      iio: dac: ad5686: drop enum id
      iio: dac: ad5686: add of_match table to the spi driver
      iio: dac: ad5686: fix ref bit initialization for single-channel parts
      iio: dac: ad5686: fix powerdown control
      iio: dac: ad5686: fix input raw value check
      iio: dac: ad5686: add support for missing power supplies
      iio: dac: ad5686: create bus ops struct
      iio: dac: ad5686: extend device support with new parts
      iio: dac: ad5686: update device list description
      iio: dac: ad5686: consume optional reset signal
      iio: dac: ad5686: add ldac gpio
      iio: dac: ad5686: implement new sync() op for the spi bus
      iio: dac: ad5686: add triggered buffer support
      iio: dac: ad5686: add gain control support

 .../devicetree/bindings/iio/dac/adi,ad5686.yaml    |  61 +-
 .../devicetree/bindings/iio/dac/adi,ad5696.yaml    |  60 +-
 drivers/iio/dac/Kconfig                            |  18 +-
 drivers/iio/dac/ad5686-spi.c                       | 200 ++++--
 drivers/iio/dac/ad5686.c                           | 775 +++++++++++++--------
 drivers/iio/dac/ad5686.h                           | 144 ++--
 drivers/iio/dac/ad5696-i2c.c                       |  94 +--
 7 files changed, 906 insertions(+), 446 deletions(-)
---
base-commit: eade2b843d9b1f668fc1775f15611bb0a1999cd9
change-id: 20260325-ad5313r-iio-support-882ad39356e1

Best regards,
-- 
Rodrigo Alencar <rodrigo.alencar@analog.com>



^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2026-04-22 20:28 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-22 14:45 [PATCH 00/22] Extend device support for AD5686 driver Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 01/22] dt-bindings: iio: dac: ad5696: extend device support Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 02/22] dt-bindings: iio: dac: ad5696: add reset/ldac/gain gpio support Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 03/22] dt-bindings: iio: dac: ad5696: rework on power supplies Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 04/22] dt-bindings: iio: dac: ad5686: extend device support Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 05/22] dt-bindings: iio: dac: ad5686: add reset/ldac/gain gpio support Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 06/22] dt-bindings: iio: dac: ad5686: rework on power supplies Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 07/22] iio: dac: ad5686: refactor include headers Rodrigo Alencar via B4 Relay
2026-04-22 19:43   ` Andy Shevchenko
2026-04-22 14:45 ` [PATCH 08/22] iio: dac: ad5686: remove redundant register definition Rodrigo Alencar via B4 Relay
2026-04-22 19:47   ` Andy Shevchenko
2026-04-22 14:45 ` [PATCH 09/22] iio: dac: ad5686: drop enum id Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 10/22] iio: dac: ad5686: add of_match table to the spi driver Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 11/22] iio: dac: ad5686: fix ref bit initialization for single-channel parts Rodrigo Alencar via B4 Relay
2026-04-22 19:58   ` Andy Shevchenko
2026-04-22 14:45 ` [PATCH 12/22] iio: dac: ad5686: fix powerdown control Rodrigo Alencar via B4 Relay
2026-04-22 20:25   ` Andy Shevchenko
2026-04-22 14:45 ` [PATCH 13/22] iio: dac: ad5686: fix input raw value check Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 14/22] iio: dac: ad5686: add support for missing power supplies Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 15/22] iio: dac: ad5686: create bus ops struct Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 16/22] iio: dac: ad5686: extend device support with new parts Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 17/22] iio: dac: ad5686: update device list description Rodrigo Alencar via B4 Relay
2026-04-22 20:06   ` Andy Shevchenko
2026-04-22 20:07     ` Andy Shevchenko
2026-04-22 14:45 ` [PATCH 18/22] iio: dac: ad5686: consume optional reset signal Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 19/22] iio: dac: ad5686: add ldac gpio Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 20/22] iio: dac: ad5686: implement new sync() op for the spi bus Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 21/22] iio: dac: ad5686: add triggered buffer support Rodrigo Alencar via B4 Relay
2026-04-22 14:45 ` [PATCH 22/22] iio: dac: ad5686: add gain control support Rodrigo Alencar via B4 Relay
2026-04-22 20:28 ` [PATCH 00/22] Extend device support for AD5686 driver Andy Shevchenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox