diff --git a/drivers/iio/chemical/ccs811.c b/drivers/iio/chemical/ccs811.c index 75b0cb05dd86..1eab256a1e00 100644 --- a/drivers/iio/chemical/ccs811.c +++ b/drivers/iio/chemical/ccs811.c @@ -258,13 +258,12 @@ static int ccs811_read_raw(struct iio_dev *indio_dev, switch (mask) { case IIO_CHAN_INFO_RAW: - ret = iio_device_claim_direct_mode(indio_dev); - if (ret) - return ret; + if (!iio_device_claim_direct(indio_dev)) + return -EBUSY; ret = ccs811_read_info_raw(data, chan, val, mask); - iio_device_release_direct_mode(indio_dev); + iio_device_release_direct(indio_dev); return ret;