Devicetree
 help / color / mirror / Atom feed
* [PATCH v2 0/5] iio: adc: ad7606: add support for AD760{7,8,9} parts
@ 2024-10-25  9:59 Alexandru Ardelean
  2024-10-25  9:59 ` [PATCH v2 1/5] iio: adc: ad7606: fix/persist oversampling_ratio setting Alexandru Ardelean
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Alexandru Ardelean @ 2024-10-25  9:59 UTC (permalink / raw)
  To: linux-iio, linux-kernel, devicetree
  Cc: jic23, krzk+dt, robh, lars, michael.hennerich, gstols, dlechner,
	conor.dooley, Alexandru Ardelean

This change-set adds support for AD7607, AD7608 and AD7609.
These parts are simpler parts for the AD7606x family. They support only
HW-only mode like AD7605, but they support oversampling like the other
AD7606x parts.

AD7607 has a 14-bit resolution.
AD7608 and AD7609 are 18-bit resolution.
AD7607 & AD7608 supports +/-5V and +/-10V ranges.
AD7609 supports +/-10V & +/-20V ranges.

The oversampling settings are the same.
Because of AD7607, the scales had to be reworked (again), but this time
doing away with the allocation at runtime for the scale-available-show
values. This time, the full IIO_VAL_INT_PLUS_MICRO values are stored
statically. AD7607 supports a scale of 1.220703, which is the first and
only (so far) scale that is above 1.

Changelog v1 -> v2:
* https://lore.kernel.org/linux-iio/20241021130221.1469099-1-aardelean@baylibre.com/
* Dropped patch 'iio: adc: ad7606: fix issue/quirk with find_closest() for oversampling'
  - Will focus on fixing 'find_closest()' instead
* Patch 'iio: adc: ad7606: use realbits for sign-extending in scan_direct'
  - Applied David's suggestions to check only for > 16 bits
* Patch 'iio: adc: ad7606: rework scale-available to be static'
  - Applied David's sugestions
    - Rename variable to 'scale_avail_uv'
    - Use 'MICRO' definition for '1000000'
* Patch ' dt-bindings: iio: adc: adi,ad7606: document AD760{7,8,9} parts'
  - Added Connor's Acked-by tag

Alexandru Ardelean (5):
  iio: adc: ad7606: fix/persist oversampling_ratio setting
  iio: adc: ad7606: use realbits for sign-extending in scan_direct
  iio: adc: ad7606: rework scale-available to be static
  dt-bindings: iio: adc: adi,ad7606: document AD760{7,8,9} parts
  iio: adc: ad7606: add support for AD760{7,8,9} parts

 .../bindings/iio/adc/adi,ad7606.yaml          |   9 +
 drivers/iio/adc/ad7606.c                      | 221 +++++++++++++-----
 drivers/iio/adc/ad7606.h                      |   9 +-
 drivers/iio/adc/ad7606_par.c                  |   6 +
 drivers/iio/adc/ad7606_spi.c                  |  42 ++++
 5 files changed, 220 insertions(+), 67 deletions(-)

-- 
2.46.1


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

end of thread, other threads:[~2024-10-26 10:46 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-25  9:59 [PATCH v2 0/5] iio: adc: ad7606: add support for AD760{7,8,9} parts Alexandru Ardelean
2024-10-25  9:59 ` [PATCH v2 1/5] iio: adc: ad7606: fix/persist oversampling_ratio setting Alexandru Ardelean
2024-10-25  9:59 ` [PATCH v2 2/5] iio: adc: ad7606: use realbits for sign-extending in scan_direct Alexandru Ardelean
2024-10-25  9:59 ` [PATCH v2 3/5] iio: adc: ad7606: rework scale-available to be static Alexandru Ardelean
2024-10-25  9:59 ` [PATCH v2 4/5] dt-bindings: iio: adc: adi,ad7606: document AD760{7,8,9} parts Alexandru Ardelean
2024-10-25  9:59 ` [PATCH v2 5/5] iio: adc: ad7606: add support for " Alexandru Ardelean
2024-10-25 15:13 ` [PATCH v2 0/5] " David Lechner
2024-10-26 10:46   ` Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox