]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
iio: chemical: scd30: Switch to sparse friendly claim/release_direct()
authorJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 9 Feb 2025 18:06:00 +0000 (18:06 +0000)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Mon, 17 Feb 2025 12:57:30 +0000 (12:57 +0000)
This driver caused a false positive with __cond_lock() style solution
but is fine with the simple boolean return approach now used.

Cc: Tomasz Duszynski <tomasz.duszynski@octakon.com>
Reviewed-by: David Lechner <dlechner@baylibre.com>
Link: https://patch.msgid.link/20250209180624.701140-4-jic23@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/chemical/scd30_core.c

index 23ba46f7ca32062604e5ab1e65df205f47d93c36..3fed6b63710f0c57591e33dd43dfb1762301dff4 100644 (file)
@@ -211,18 +211,17 @@ static int scd30_read_raw(struct iio_dev *indio_dev, struct iio_chan_spec const
                        return IIO_VAL_INT;
                }
 
-               ret = iio_device_claim_direct_mode(indio_dev);
-               if (ret)
-                       return ret;
+               if (!iio_device_claim_direct(indio_dev))
+                       return -EBUSY;
 
                ret = scd30_read(state);
                if (ret) {
-                       iio_device_release_direct_mode(indio_dev);
+                       iio_device_release_direct(indio_dev);
                        return ret;
                }
 
                *val = state->meas[chan->address];
-               iio_device_release_direct_mode(indio_dev);
+               iio_device_release_direct(indio_dev);
                return IIO_VAL_INT;
        case IIO_CHAN_INFO_SCALE:
                *val = 0;