All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/4] iio: adc: ad9467: Support alternative backends
@ 2026-01-21 12:08 Tomas Melin
  2026-01-21 12:08 ` [PATCH v4 1/4] iio: industrialio-backend: support backend capabilities Tomas Melin
                   ` (4 more replies)
  0 siblings, 5 replies; 12+ messages in thread
From: Tomas Melin @ 2026-01-21 12:08 UTC (permalink / raw)
  To: Michael Hennerich, Nuno Sa, Lars-Peter Clausen, Jonathan Cameron,
	David Lechner, Andy Shevchenko, Olivier Moysan
  Cc: linux-iio, linux-kernel, Tomas Melin

To facilitate backends with different set of features, add support
for defining capabilites provided by the backend. These capabilites
typically extend beyond a single operation and are therefore not
directly linked to if a single function call is implemented or not.
Furthermore, the capabilites determine if a certain set of operations
should be attempted, or skipped by the frontend. This way
the frontend driver can work with a minimalistic set of features and
still have the device in fully functional state.

Signed-off-by: Tomas Melin <tomas.melin@vaisala.com>
---
Changes in v4:
- Readd CAP_BUFFERING and also add CAP_ALWAYS_ON to support backends
  that do not need explicit enable/disable
- Don't mix checks for eopnotsupp and caps. Prefer capability checking
  also for caps that map to single operation
- Move capability checking to top of call stack
- Revise iio_backend_has_caps to use bool signature and fixup semantics
- Amend documentation texts
- Add capability checks for axi-dac
- Drop two's complement patch from this series, already applied
- Link to v3: https://lore.kernel.org/r/20260114-b4-ad9467-optional-backend-v3-0-d2c84979d010@vaisala.com

Changes in v3:
- Reduce set of capabilities to only include calibration. The other
  ones propsed in V2 can be seen as subset of calibration, or single
  operation failing with opnotsupported
- Rename backends checking function
- Relocate caps field inside backend struct (pahole)
- Add kernel-docs
- Add capabilites for exisiting backend variants
- Link to v2: https://lore.kernel.org/r/20260113-b4-ad9467-optional-backend-v2-0-0a27e7e72f41@vaisala.com

Changes in v2:
- Added industrialio-backend capabilities feature
- Removed acceptance for fully optional backend, instead require atleast
  minimalistic backend to exist
- Switched to FIELD_MODIFY()
- Fixed kernel test robot reported failure for missing bitfield.h
- Link to v1: https://lore.kernel.org/r/20251216-b4-ad9467-optional-backend-v1-0-83e61531ef4d@vaisala.com

---
Tomas Melin (4):
      iio: industrialio-backend: support backend capabilities
      iio: adc: adi-axi-adc: define supported iio-backend capabilities
      iio: adc: adi-axi-dac: define supported iio-backend capabilities
      iio: adc: ad9467: check for backend capabilities

 drivers/iio/adc/ad9467.c           | 72 ++++++++++++++++++++++++--------------
 drivers/iio/adc/adi-axi-adc.c      |  3 ++
 drivers/iio/dac/adi-axi-dac.c      |  2 ++
 drivers/iio/industrialio-backend.c | 16 +++++++++
 include/linux/iio/backend.h        | 25 +++++++++++++
 5 files changed, 91 insertions(+), 27 deletions(-)
---
base-commit: a7b10f0963c651a6406d958a5f64b9c5594f84da
change-id: 20251215-b4-ad9467-optional-backend-23f1099ee4d7

Best regards,
-- 
Tomas Melin <tomas.melin@vaisala.com>


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

end of thread, other threads:[~2026-01-23  8:18 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-21 12:08 [PATCH v4 0/4] iio: adc: ad9467: Support alternative backends Tomas Melin
2026-01-21 12:08 ` [PATCH v4 1/4] iio: industrialio-backend: support backend capabilities Tomas Melin
2026-01-22 20:43   ` Jonathan Cameron
2026-01-23  5:38     ` Tomas Melin
2026-01-21 12:08 ` [PATCH v4 2/4] iio: adc: adi-axi-adc: define supported iio-backend capabilities Tomas Melin
2026-01-21 12:08 ` [PATCH v4 3/4] iio: adc: adi-axi-dac: " Tomas Melin
2026-01-22 20:44   ` Jonathan Cameron
2026-01-21 12:08 ` [PATCH v4 4/4] iio: adc: ad9467: check for backend capabilities Tomas Melin
2026-01-21 12:58   ` Andy Shevchenko
2026-01-23  7:10     ` Tomas Melin
2026-01-23  8:18       ` Andy Shevchenko
2026-01-22 20:38 ` [PATCH v4 0/4] iio: adc: ad9467: Support alternative backends Jonathan Cameron

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.