[PATCH v6 0/4] iio: adc: ad4080: add support for AD4880 dual-channel ADC

Antoniu Miclaus posted 4 patches 3 weeks, 3 days ago
There is a newer version of this series
.../bindings/iio/adc/adi,ad4080.yaml          |  53 +++-
drivers/iio/adc/ad4080.c                      | 230 ++++++++++++++----
drivers/iio/industrialio-backend.c            |  62 +++--
include/linux/iio/backend.h                   |   2 +
4 files changed, 278 insertions(+), 69 deletions(-)
[PATCH v6 0/4] iio: adc: ad4080: add support for AD4880 dual-channel ADC
Posted by Antoniu Miclaus 3 weeks, 3 days ago
Add support for the AD4880, a dual-channel 20-bit 40MSPS SAR ADC from
the same family as AD4080.

The AD4880 has two independent ADC channels, each with its own SPI
configuration interface and LVDS data output. The driver uses
spi_new_ancillary_device() for the second channel's SPI and requires
two io-backend instances for the data interfaces.

This series includes:
  - Use __free(fwnode_handle) for automatic cleanup in iio backend
  - Refactored devm_iio_backend_get_by_index() for multi-channel backend lookup
  - DT bindings update for AD4880
  - Driver support for AD4880

This series depends on the SPI ancillary device patches already picked
up in Mark Brown's SPI tree (https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git).
Added base-commit in the cover letter below.

Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/ad4880.pdf

Changes in v6:
  - Move fwnode_back declaration back to inline position above
    IS_ERR() check (patch 2)
  - Rebase on top of broonie/spi for-next and use --base to declare
    the SPI dependency (cover letter)

Antoniu Miclaus (4):
  iio: backend: use __free(fwnode_handle) for automatic cleanup
  iio: backend: add devm_iio_backend_get_by_index()
  dt-bindings: iio: adc: ad4080: add AD4880 support
  iio: adc: ad4080: add support for AD4880 dual-channel ADC

 .../bindings/iio/adc/adi,ad4080.yaml          |  53 +++-
 drivers/iio/adc/ad4080.c                      | 230 ++++++++++++++----
 drivers/iio/industrialio-backend.c            |  62 +++--
 include/linux/iio/backend.h                   |   2 +
 4 files changed, 278 insertions(+), 69 deletions(-)


base-commit: 2cd3974b9ae59ac731a4792e1608be32621b6e98
--
2.43.0
Re: [PATCH v6 0/4] iio: adc: ad4080: add support for AD4880 dual-channel ADC
Posted by Jonathan Cameron 3 weeks, 2 days ago
On Fri, 13 Mar 2026 13:58:49 +0200
Antoniu Miclaus <antoniu.miclaus@analog.com> wrote:

> Add support for the AD4880, a dual-channel 20-bit 40MSPS SAR ADC from
> the same family as AD4080.
> 
> The AD4880 has two independent ADC channels, each with its own SPI
> configuration interface and LVDS data output. The driver uses
> spi_new_ancillary_device() for the second channel's SPI and requires
> two io-backend instances for the data interfaces.
> 
> This series includes:
>   - Use __free(fwnode_handle) for automatic cleanup in iio backend
>   - Refactored devm_iio_backend_get_by_index() for multi-channel backend lookup
>   - DT bindings update for AD4880
>   - Driver support for AD4880
> 
> This series depends on the SPI ancillary device patches already picked
> up in Mark Brown's SPI tree (https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git).
> Added base-commit in the cover letter below.
> 
> Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/ad4880.pdf
> 
> Changes in v6:
>   - Move fwnode_back declaration back to inline position above
>     IS_ERR() check (patch 2)
>   - Rebase on top of broonie/spi for-next and use --base to declare
>     the SPI dependency (cover letter)

Ok. Given there was nothing in v5 to indicate a need to do a v6
you should have replied to that thread to say you were doing so.
The fwnode thing was something I said I'd fix up whilst applying.
The SPI dependency was a 'do it better next time' comment.

I've dropped the v5 version I applied.  Now you have questions
to answer from Andy on this one.


> 
> Antoniu Miclaus (4):
>   iio: backend: use __free(fwnode_handle) for automatic cleanup
>   iio: backend: add devm_iio_backend_get_by_index()
>   dt-bindings: iio: adc: ad4080: add AD4880 support
>   iio: adc: ad4080: add support for AD4880 dual-channel ADC
> 
>  .../bindings/iio/adc/adi,ad4080.yaml          |  53 +++-
>  drivers/iio/adc/ad4080.c                      | 230 ++++++++++++++----
>  drivers/iio/industrialio-backend.c            |  62 +++--
>  include/linux/iio/backend.h                   |   2 +
>  4 files changed, 278 insertions(+), 69 deletions(-)
> 
> 
> base-commit: 2cd3974b9ae59ac731a4792e1608be32621b6e98
> --
> 2.43.0
>