[PATCH v4 0/5] iio: adc: ad7380: add alert support

Julien Stephan
2025-01-08T12:49:44Z

Hello,

The ad738x family includes a built-in alert mechanism for early
detection of out-of-bounds conversion results. This series introduces
this functionality to the ad7380 family.

This is the first non RFC version of the series (RFC available at [1] and [2]).

Given the fact that the main use case is to hardwire the interrupt line
and according to discussions in V2 about interrupts, I think the best is
to not generate events, at least while we don't have a reasonable way to
correctly and efficiently handle interrupts.

Events attributes are still populated to allow user to set a threshold
and enable alert detection, so alert pin can be hardwired.

Userspace event can still be added later if needed.

[1]: https://lore.kernel.org/r/20241029-ad7380-add-aleyyrt-support-v1-1-d0359401b788@baylibre.com
[2]: https://lore.kernel.org/r/20241224-ad7380-add-alert-support-v2-0-7c89b2bf7cb3@baylibre.com

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
---
Changes in v4:
- docs: fix some nitpicks from David Lechner
- driver: fix some nitpicks from David Lechner and use helper functions
to get/set the thresholds
- driver: fix reading the low threshold value
- add Reviewed-by tag from David Lechner
- Link to v3: https://lore.kernel.org/r/20250107-ad7380-add-alert-support-v3-0-bce10afd656b@baylibre.com

Changes in v3:
- split regmap cache commit in two
- remove interrupt handling completely, updating commit messages,
driver, and doc
- fix minor comments from v2 review
- improve commit message for iio_device_claim_direct_scoped removal
- Link to v2: https://lore.kernel.org/r/20241224-ad7380-add-alert-support-v2-0-7c89b2bf7cb3@baylibre.com

Changes in v2:
- fix read/write high/low thresholds
- add reset_timeout mechanism for buffered reads
- implement regcache
- add cleanup patch to remove iio_device_claim_direct_scoped calls
- add alert section in the Documentation page
- Link to v1: https://lore.kernel.org/r/20241029-ad7380-add-aleyyrt-support-v1-1-d0359401b788@baylibre.com

---
Julien Stephan (5):
iio: adc: ad7380: do not use iio_device_claim_direct_scoped anymore
iio: adc: ad7380: enable regmap cache
iio: adc: ad7380: do not store osr in private data structure
iio: adc: ad7380: add alert support
docs: iio: ad7380: add alert support

Documentation/iio/ad7380.rst | 33 +++-
drivers/iio/adc/ad7380.c | 402 +++++++++++++++++++++++++++++++++++++------
2 files changed, 378 insertions(+), 57 deletions(-)
---
base-commit: 5ab39233382c621d3271cc274d1534e1b687f4d3
change-id: 20241029-ad7380-add-alert-support-4d0dd6cea8cd

Best regards,
--
Julien Stephan <jstephan@baylibre.com>