From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> These new functions allow sparse to find failures to release direct mode reducing chances of bugs over the claim_direct_mode() functions that are deprecated. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> --- drivers/iio/accel/msa311.c | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/drivers/iio/accel/msa311.c b/drivers/iio/accel/msa311.c index 7f4ab7cdbc4a..d31c11fbbe68 100644 --- a/drivers/iio/accel/msa311.c +++ b/drivers/iio/accel/msa311.c @@ -594,13 +594,12 @@ static int msa311_read_raw_data(struct iio_dev *indio_dev, __le16 axis; int err; - err = iio_device_claim_direct_mode(indio_dev); - if (err) - return err; + if (!iio_device_claim_direct(indio_dev)) + return -EBUSY; err = pm_runtime_resume_and_get(dev); if (err) { - iio_device_release_direct_mode(indio_dev); + iio_device_release_direct(indio_dev); return err; } @@ -611,7 +610,7 @@ static int msa311_read_raw_data(struct iio_dev *indio_dev, pm_runtime_mark_last_busy(dev); pm_runtime_put_autosuspend(dev); - iio_device_release_direct_mode(indio_dev); + iio_device_release_direct(indio_dev); if (err) { dev_err(dev, "can't get axis %s (%pe)\n", @@ -763,13 +762,12 @@ static int msa311_write_samp_freq(struct iio_dev *indio_dev, int val, int val2) * enabled, because sometimes MSA311 chip returns outliers during * frequency values growing up in the read operation moment. */ - err = iio_device_claim_direct_mode(indio_dev); - if (err) - return err; + if (!iio_device_claim_direct(indio_dev)) + return -EBUSY; err = pm_runtime_resume_and_get(dev); if (err) { - iio_device_release_direct_mode(indio_dev); + iio_device_release_direct(indio_dev); return err; } @@ -786,7 +784,7 @@ static int msa311_write_samp_freq(struct iio_dev *indio_dev, int val, int val2) pm_runtime_mark_last_busy(dev); pm_runtime_put_autosuspend(dev); - iio_device_release_direct_mode(indio_dev); + iio_device_release_direct(indio_dev); if (err) dev_err(dev, "can't update frequency (%pe)\n", ERR_PTR(err)); -- 2.48.1