mbox series

[00/29] IIO: ADCs: Sparse friendly claim of direct mode

Message ID 20250217141630.897334-1-jic23@kernel.org (mailing list archive)
Headers show
Series IIO: ADCs: Sparse friendly claim of direct mode | expand

Message

Jonathan Cameron Feb. 17, 2025, 2:16 p.m. UTC
From: Jonathan Cameron <Jonathan.Cameron@huawei.com>

Note that a number of the drivers touched in this series have no
obvious active maintainer, so it would be much appreciated if anyone
has time to take a look! It is a large series so feel free to review
any you have time to look at rather than feeling you need to look
at the whole thing!

This is effectively part 3 of what will probably be around 5 series
focused on moving from iio_device_claim/release_direct_mode() to
iio_device_claim/release_direct(). The new form is more consistent
with conditional locking semantics and sparse markings have been
added that let us detect miss-balance between claim and release.

More details can be found in the cover letter of the first series:
https://lore.kernel.org/all/20250209180624.701140-1-jic23@kernel.org/

This series focuses on the ADC drivers.

Jonathan Cameron (29):
  iio: adc: vf610: Move claim of direct mode to caller of
    vf610_read_sample and use guard(mutex)
  iio: adc: vf610: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ti-ads1100: Use guard(mutex) to allow direct returns
  iio: adc: ti-ads1100: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ti-ads1015: Use guard(mutex) and factor out code for
    INFO_RAW
  iio: adc: ti-ads1015: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: stm32-dfsdm: Factor out core of reading INFO_RAW
  iio: adc: stm32-dfsdm: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ad4030: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ad7192: Factor out core of ad7192_write_raw() to simplify
    error handling.
  iio: adc: ad7192: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ad7768-1: Move setting of val a bit later to avoid
    unnecessary return value check
  iio: adc: ad7768-1: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ad7606: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ad7791: Factor out core of ad7791_write_raw() to simplify
    error handling
  iio: adc: ad7791: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ad7793: Factor out core of ad7793_write_raw() to simplify
    error handling
  iio: adc: ad7793: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ad799x: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: ad_sigma_delta: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: at91-sama5d2: Move claim of direct mode up a level and use
    guard()
  iio: adc: at91-sama5d2: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: max1027: Move claim of direct mode up one level and use
    guard()
  iio: adc: max1027: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: max11410: Factor out writing of sampling frequency to
    simplify errro paths.
  iio: adc: max11410: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: mxs-lradc: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: rcar: Switch to sparse friendly
    iio_device_claim/release_direct()
  iio: adc: Switch to sparse friendly iio_device_claim/release_direct()

 drivers/iio/adc/ad4030.c           |  21 ++--
 drivers/iio/adc/ad7173.c           |   9 +-
 drivers/iio/adc/ad7192.c           | 119 ++++++++++----------
 drivers/iio/adc/ad7266.c           |   7 +-
 drivers/iio/adc/ad7298.c           |   7 +-
 drivers/iio/adc/ad7380.c           |  56 +++++-----
 drivers/iio/adc/ad7476.c           |   7 +-
 drivers/iio/adc/ad7606.c           |  14 ++-
 drivers/iio/adc/ad7768-1.c         |  10 +-
 drivers/iio/adc/ad7791.c           |  31 +++---
 drivers/iio/adc/ad7793.c           |  80 +++++++-------
 drivers/iio/adc/ad7887.c           |   7 +-
 drivers/iio/adc/ad7923.c           |   7 +-
 drivers/iio/adc/ad7944.c           |   7 +-
 drivers/iio/adc/ad799x.c           |  14 ++-
 drivers/iio/adc/ad_sigma_delta.c   |   7 +-
 drivers/iio/adc/at91-sama5d2_adc.c |  54 +++++-----
 drivers/iio/adc/dln2-adc.c         |   7 +-
 drivers/iio/adc/max1027.c          |  37 +++----
 drivers/iio/adc/max11410.c         |  72 ++++++-------
 drivers/iio/adc/mxs-lradc-adc.c    |  14 ++-
 drivers/iio/adc/rcar-gyroadc.c     |   9 +-
 drivers/iio/adc/stm32-adc.c        |   7 +-
 drivers/iio/adc/stm32-dfsdm-adc.c  |  76 +++++++------
 drivers/iio/adc/ti-adc084s021.c    |   9 +-
 drivers/iio/adc/ti-adc108s102.c    |   7 +-
 drivers/iio/adc/ti-ads1015.c       | 168 ++++++++++++-----------------
 drivers/iio/adc/ti-ads1100.c       |  44 +++-----
 drivers/iio/adc/ti-ads1298.c       |   7 +-
 drivers/iio/adc/ti-ads131e08.c     |  14 ++-
 drivers/iio/adc/ti-tlc4541.c       |   7 +-
 drivers/iio/adc/vf610_adc.c        |  36 +++----
 32 files changed, 440 insertions(+), 531 deletions(-)