This is the second series of three on updating the AD5686 driver.

Initially, a big patch series was sent:
https://lore.kernel.org/r/[email protected]

Then, the first patch series added fixes and cleanups:
https://lore.kernel.org/linux-iio/[email protected]/

This one is introducing new features:
- Consume optional reset and correct 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 <[email protected]>
---
Changes in v6:
- Refactor command/data macros in favor of FIELD_PREP()
- Link to v5: 
https://lore.kernel.org/r/[email protected]

Changes in v5:
- Create auxiliary handler for the triggered buffer.
- Do not allow modification of double_scale in case gain_gpio is not set.
- Link to v4: 
https://lore.kernel.org/r/[email protected]

Changes in v4:
- Replace anyof+const for enum in dt-bindings. 
- Address some sashiko's comments.
- Use guard(mutex)() in trigger handler and other misc changes.
- Link to v3: 
https://lore.kernel.org/r/[email protected]

Changes in v3:
- Add range-double property.
- Acquire reset control after power-up delay.
- Include cleanup.h and use guard(mutex)() in read_raw().
- Link to v2: 
https://lore.kernel.org/r/[email protected]

Changes in v2:
- Get reset control deasserted.
- Update entire spi_transfer struct rather than individual fields.
- Replace udelay() for fsleep() in probe().
- Minor changes addressing further feedback.
- Link to v1: 
https://lore.kernel.org/r/[email protected]

---
Rodrigo Alencar (6):
      iio: dac: ad5686: refactor command/data macros
      iio: dac: ad5686: introduce sync operation
      iio: dac: ad5686: implement new sync() op for the spi bus
      iio: dac: ad5686: read_raw/write_raw: use guard(mutex)()
      iio: dac: ad5686: add triggered buffer support
      iio: dac: ad5686: add gain control support

 drivers/iio/dac/Kconfig      |   2 +
 drivers/iio/dac/ad5686-spi.c | 136 +++++++++++++++++++++-------
 drivers/iio/dac/ad5686.c     | 209 +++++++++++++++++++++++++++++++++++++++----
 drivers/iio/dac/ad5686.h     |  43 ++++++---
 drivers/iio/dac/ad5696-i2c.c |  13 +--
 5 files changed, 334 insertions(+), 69 deletions(-)
---
base-commit: 4c0ecdbdc0d87570f74e656e21d56bae1ab6a8f1
change-id: 20260602-ad5686-new-features-e116c04bddb9

Best regards,
-- 
Rodrigo Alencar <[email protected]>



Reply via email to