devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v7 00/12] iio: adc: Add support for AD4170 series of ADCs
@ 2025-06-30 13:57 Marcelo Schmitt
  2025-06-30 13:57 ` [PATCH v7 01/12] dt-bindings: iio: adc: Add AD4170 Marcelo Schmitt
                   ` (12 more replies)
  0 siblings, 13 replies; 21+ messages in thread
From: Marcelo Schmitt @ 2025-06-30 13:57 UTC (permalink / raw)
  To: linux-iio, devicetree, linux-gpio, linux-kernel
  Cc: jic23, lars, Michael.Hennerich, dlechner, nuno.sa, andy, robh,
	krzk+dt, conor+dt, linus.walleij, brgl, broonie, lgirdwood,
	marcelo.schmitt1

Hello,

AD4170 support v7 comes after testing the driver with even more variations of
channel setups. Signal offset and amplification can be tricky to grasp at times.

Thank you to all reviewers of previous versions. This intends to comply with all
comments and suggestions to v6.

Same amount of patches than v6.

Patch 1 adds device tree documentation for the parts.
Patch 2 adds basic device support.
Patch 3 adds support for calibration scale.
Patch 4 adds support for calibration bias.
Patch 5 adds sinc5+avg to filter_type_available IIO ABI documentation.
Patch 6 adds support for sample frequency along with filter type configuration.
Patch 7 adds support for buffered ADC reading.
Patch 8 adds clock provider support
Patch 9 adds GPIO controller support.
Patch 10 adds internal temperature sensor support.
Patch 11 adds support for external RTD and bridge circuit sensors.
Patch 12 adds timestamp channel

Change log v6 -> v7

[Generic changes]
- Renamed dt-doc and driver from ad4170 to ad4170-4. This will hopefully be more 
  future proof since there is precedent of different devices with names ending
  with and without -N (e.g. AD7091R and AD7091R-5, AD7768 and AD7768-1).

[Device tree changes]
- Dropped leftover/unneeded list of valid reference-buffer values.
- Set vbias at AIN8 in example. The vbias is expected to be set on the IN- pin.

[Basic driver patch]
- Refactored ad4170_parse_adc_channel_type() to use fwnode_property_present()
  so to return errors early if required properties are not present.
- Use spi_write_then_read() to skip dealing with DMA safe buffers in slow data paths.
- Minor tweaks to comments such as 'handle options ...' -> 'handle PGA options ...'.

[sinc5+avg ABI patch]
- Fixed IIO ABI documentation by specifying the correct filter enabled with sinc5+avg.

[Digital filter and sample frequency config patch]
- Now reading SPS table within filter type switch to ensure in bounds array access.
- Squeezed info_mask_separate additions to reduce change diff.

[Buffer support patch]
- Dropped extra assignment of st->trig->dev.parent.

[GPIO controller patch]
- Used local device pointer (replaced &st->spi->dev with dev) in ad4170_parse_firmware().

[External sensor patch]
- adi,vbias was previously set per channel in ad4170 dt-binding but it is set
  per device in adi,ad4130.yaml. Fixed ad4170 parsing of adi,vbias. The
  dt-binding had been updated to the established use of adi,vbias in v4.

Link to v6: https://lore.kernel.org/linux-iio/cover.1750258776.git.marcelo.schmitt@analog.com/
Link to v5: https://lore.kernel.org/linux-iio/cover.1749582679.git.marcelo.schmitt@analog.com/ 
Link to v4: https://lore.kernel.org/linux-iio/cover.1748829860.git.marcelo.schmitt@analog.com/
Link to v3: https://lore.kernel.org/linux-iio/cover.1747083143.git.marcelo.schmitt@analog.com/
Link to v2: https://lore.kernel.org/linux-iio/cover.1745841276.git.marcelo.schmitt@analog.com/
Link to v1: https://lore.kernel.org/linux-iio/cover.1744200264.git.marcelo.schmitt@analog.com/


Ana-Maria Cusco (1):
  iio: adc: Add basic support for AD4170-4

Marcelo Schmitt (11):
  dt-bindings: iio: adc: Add AD4170
  iio: adc: ad4170-4: Add support for calibration gain
  iio: adc: ad4170-4: Add support for calibration bias
  Documentation: ABI: IIO: Add sinc5+avg to the filter_type_available
    list
  iio: adc: ad4170-4: Add digital filter and sample frequency config
    support
  iio: adc: ad4170-4: Add support for buffered data capture
  iio: adc: ad4170-4: Add clock provider support
  iio: adc: ad4170-4: Add GPIO controller support
  iio: adc: ad4170-4: Add support for internal temperature sensor
  iio: adc: ad4170-4: Add support for weigh scale and RTD sensors
  iio: adc: ad4170-4: Add timestamp channel

 Documentation/ABI/testing/sysfs-bus-iio       |    1 +
 .../bindings/iio/adc/adi,ad4170-4.yaml        |  555 +++
 MAINTAINERS                                   |    8 +
 drivers/iio/adc/Kconfig                       |   16 +
 drivers/iio/adc/Makefile                      |    1 +
 drivers/iio/adc/ad4170-4.c                    | 3020 +++++++++++++++++
 6 files changed, 3601 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad4170-4.yaml
 create mode 100644 drivers/iio/adc/ad4170-4.c


base-commit: 42498420746a4db923f03d048a0ebc9bd2371f56
-- 
2.47.2


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

end of thread, other threads:[~2025-07-06 17:10 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-30 13:57 [PATCH v7 00/12] iio: adc: Add support for AD4170 series of ADCs Marcelo Schmitt
2025-06-30 13:57 ` [PATCH v7 01/12] dt-bindings: iio: adc: Add AD4170 Marcelo Schmitt
2025-07-06 17:08   ` Jonathan Cameron
2025-06-30 13:58 ` [PATCH v7 02/12] iio: adc: Add basic support for AD4170-4 Marcelo Schmitt
2025-06-30 13:58 ` [PATCH v7 03/12] iio: adc: ad4170-4: Add support for calibration gain Marcelo Schmitt
2025-06-30 13:59 ` [PATCH v7 04/12] iio: adc: ad4170-4: Add support for calibration bias Marcelo Schmitt
2025-06-30 13:59 ` [PATCH v7 05/12] Documentation: ABI: IIO: Add sinc5+avg to the filter_type_available list Marcelo Schmitt
2025-06-30 13:59 ` [PATCH v7 06/12] iio: adc: ad4170-4: Add digital filter and sample frequency config support Marcelo Schmitt
2025-06-30 14:00 ` [PATCH v7 07/12] iio: adc: ad4170-4: Add support for buffered data capture Marcelo Schmitt
2025-06-30 14:00 ` [PATCH v7 08/12] iio: adc: ad4170-4: Add clock provider support Marcelo Schmitt
2025-06-30 14:00 ` [PATCH v7 09/12] iio: adc: ad4170-4: Add GPIO controller support Marcelo Schmitt
2025-06-30 14:01 ` [PATCH v7 10/12] iio: adc: ad4170-4: Add support for internal temperature sensor Marcelo Schmitt
2025-06-30 14:01 ` [PATCH v7 11/12] iio: adc: ad4170-4: Add support for weigh scale and RTD sensors Marcelo Schmitt
2025-06-30 14:01 ` [PATCH v7 12/12] iio: adc: ad4170-4: Add timestamp channel Marcelo Schmitt
2025-07-02  8:09 ` [PATCH v7 00/12] iio: adc: Add support for AD4170 series of ADCs Andy Shevchenko
2025-07-02 12:00   ` Marcelo Schmitt
2025-07-02 12:15     ` Andy Shevchenko
2025-07-02 18:59       ` Marcelo Schmitt
2025-07-03 14:13         ` Andy Shevchenko
2025-07-03 20:24           ` Marcelo Schmitt
2025-07-06 17:10             ` Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).