This series adds the support for software mode when the ADC is used in iio_backend mode. The bus access is based on Angelo's ad3552 implementation, that is we have a particular compatible for the backend (here axi-adc) version supporting the ad7606's register writing, and the ad7606 is defined as a child node of the backend in the devicetree. Small changes are added to make the code a bit more straightforward to understand, and more compact. Signed-off-by: Guillaume Stols <gstols@xxxxxxxxxxxx> --- Guillaume Stols (9): iio: adc: ad7606: Fix hardcoded offset in the ADC channels dt-bindings: iio: dac: adi-axi-adc: Add ad7606 variant iio:adc: ad7606: Move the software mode configuration iio: adc: ad7606: Move software functions into common file iio: adc: adi-axi-adc: Add platform children support iio: adc: adi-axi-adc: Add support for AD7606 register writing iio: adc: ad7606: change r/w_register signature iio: adc: ad7606: Simplify channel macros iio: adc: ad7606: Add support for writing registers when using backend .../devicetree/bindings/iio/adc/adi,axi-adc.yaml | 7 + drivers/iio/adc/ad7606.c | 202 +++++++++++++++++---- drivers/iio/adc/ad7606.h | 113 ++++++++---- drivers/iio/adc/ad7606_bi.h | 16 ++ drivers/iio/adc/ad7606_par.c | 58 +++++- drivers/iio/adc/ad7606_spi.c | 141 +------------- drivers/iio/adc/adi-axi-adc.c | 178 +++++++++++++++++- 7 files changed, 500 insertions(+), 215 deletions(-) --- base-commit: 33d38f912d5ca05501c9bbfe14e0150da9ca85b6 change-id: 20241009-ad7606_add_iio_backend_software_mode-567d9c392243 Best regards, -- Guillaume Stols <gstols@xxxxxxxxxxxx>