Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

staging: iio: ad7606: use iio_device_{claim|release}_direct_mode()

Replace the code that guarantees the device stays in direct mode with
iio_device_{claim|release}_direct_mode() which does same.

Signed-off-by: Alison Schofield <amsfield22@gmail.com>
Acked-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>

authored by

Alison Schofield and committed by
Jonathan Cameron
ff5c37e3 c455e583

+6 -6
+6 -6
drivers/staging/iio/adc/ad7606_core.c
··· 88 88 89 89 switch (m) { 90 90 case IIO_CHAN_INFO_RAW: 91 - mutex_lock(&indio_dev->mlock); 92 - if (iio_buffer_enabled(indio_dev)) 93 - ret = -EBUSY; 94 - else 95 - ret = ad7606_scan_direct(indio_dev, chan->address); 96 - mutex_unlock(&indio_dev->mlock); 91 + ret = iio_device_claim_direct_mode(indio_dev); 92 + if (ret) 93 + return ret; 94 + 95 + ret = ad7606_scan_direct(indio_dev, chan->address); 96 + iio_device_release_direct_mode(indio_dev); 97 97 98 98 if (ret < 0) 99 99 return ret;