[PATCH v3 0/5] Add support for AD4129-4/8, AD4130-4, and AD4131-4/8

Jonathan Santos
2026-04-01T11:58:19Z

This patch series extends the AD4130 driver to support additional variants
in the AD4130 family: AD4129-4/8, AD4130-4, and AD4131-4/8.

The series introduces a chip info architecture to handle device-specific
differences. The AD4129 series provides 16-bit resolution with FIFO
support, while the AD4131 series offers 24-bit resolution but without
FIFO capability, requiring triggered buffer implementation. The 4-channel
variants feature reduced analog inputs, fewer GPIOs, and sparse pin
mappings.

---
Changes in v3:
* Since we have either FIFO or triggered buffer configured, create
a union struct with the FIFO buffers and the triggered buffer
scan channel declaration to save memory.
* Some lines in the ad4130_trigger_handler() were ending in comma instead
of a semicolon. Replaced the commas with semicolons for those cases.
* Inverted logic for wait_for_completion_timeout() check in
ad4130_trigger_handler(). It was warning on success.
* Addressed other minor suggestions. See individual patches.
* Link to v2: https://lore.kernel.org/linux-iio/cover.1773311639.git.Jonathan.Santos@analog.com/T/#t/

Changes in v2:
* Add patch documenting the interrupts property.
* Add patch for the SPI id table, moving its content from the chip info
patch.
* Addressed other minor suggestions. See individual patches.
* Link to v1: https://lore.kernel.org/linux-iio/cover.1772078999.git.Jonathan.Santos@analog.com/T/#t/

Jonathan Santos (5):
dt-bindings: iio: adc: ad4130: Document interrupts property
dt-bindings: iio: adc: ad4130: Add new supported parts
iio: adc: ad4130: Add SPI device ID table
iio: adc: ad4130: introduce chip info for future multidevice support
iio: adc: ad4130: add new supported parts

.../bindings/iio/adc/adi,ad4130.yaml | 19 +-
drivers/iio/adc/ad4130.c | 493 +++++++++++++++---
2 files changed, 427 insertions(+), 85 deletions(-)

base-commit: d2a4ec19d2a2e54c23b5180e939994d3da4a6b91
--
2.34.1