diff options
author | Alison Schofield <amsfield22@gmail.com> | 2016-07-18 22:35:24 +0300 |
---|---|---|
committer | Jonathan Cameron <jic23@kernel.org> | 2016-07-24 21:58:41 +0300 |
commit | b4d46409d603ab041bcb1ac9858d076d29e78af8 (patch) | |
tree | 1580fa521ab1b104f87c3ccd465ae745c3d6658c /drivers/iio/adc/ad7793.c | |
parent | 4d19c487555e8fe6e40f645c17e12cc30d4a18bf (diff) | |
download | linux-b4d46409d603ab041bcb1ac9858d076d29e78af8.tar.xz |
iio: adc: ad7793: use iio helper function to guarantee direct mode
Replace the code that guarantees the device stays in direct mode
with iio_device_claim_direct_mode() which does same.
Signed-off-by: Alison Schofield <amsfield22@gmail.com>
Cc: Daniel Baluta <daniel.baluta@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'drivers/iio/adc/ad7793.c')
-rw-r--r-- | drivers/iio/adc/ad7793.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/iio/adc/ad7793.c b/drivers/iio/adc/ad7793.c index 847789bae821..e6706a09e100 100644 --- a/drivers/iio/adc/ad7793.c +++ b/drivers/iio/adc/ad7793.c @@ -519,11 +519,9 @@ static int ad7793_write_raw(struct iio_dev *indio_dev, int ret, i; unsigned int tmp; - mutex_lock(&indio_dev->mlock); - if (iio_buffer_enabled(indio_dev)) { - mutex_unlock(&indio_dev->mlock); - return -EBUSY; - } + ret = iio_device_claim_direct_mode(indio_dev); + if (ret) + return ret; switch (mask) { case IIO_CHAN_INFO_SCALE: @@ -548,7 +546,7 @@ static int ad7793_write_raw(struct iio_dev *indio_dev, ret = -EINVAL; } - mutex_unlock(&indio_dev->mlock); + iio_device_release_direct_mode(indio_dev); return ret; } |