From: Jonathan Cameron Date: Mon, 17 Feb 2025 14:01:32 +0000 (+0000) Subject: iio: accel: kx022a: Switch to sparse friendly iio_device_claim/release_direct() X-Git-Tag: v6.15-rc1~78^2~8^2~82 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6c21fc09c3e60c018997c80331cdac5f1603558b;p=thirdparty%2Fkernel%2Flinux.git iio: accel: kx022a: Switch to sparse friendly iio_device_claim/release_direct() 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. Cc: Matti Vaittinen Reviewed-by: Matti Vaittinen Reviewed-by: David Lechner Link: https://patch.msgid.link/20250217140135.896574-6-jic23@kernel.org Signed-off-by: Jonathan Cameron --- diff --git a/drivers/iio/accel/kionix-kx022a.c b/drivers/iio/accel/kionix-kx022a.c index 727e007c5fc10..07dcf5f0599f5 100644 --- a/drivers/iio/accel/kionix-kx022a.c +++ b/drivers/iio/accel/kionix-kx022a.c @@ -577,13 +577,12 @@ static int kx022a_write_raw(struct iio_dev *idev, * issues if users trust the watermark to be reached within known * time-limit). */ - ret = iio_device_claim_direct_mode(idev); - if (ret) - return ret; + if (!iio_device_claim_direct(idev)) + return -EBUSY; ret = __kx022a_write_raw(idev, chan, val, val2, mask); - iio_device_release_direct_mode(idev); + iio_device_release_direct(idev); return ret; } @@ -624,15 +623,14 @@ static int kx022a_read_raw(struct iio_dev *idev, switch (mask) { case IIO_CHAN_INFO_RAW: - ret = iio_device_claim_direct_mode(idev); - if (ret) - return ret; + if (!iio_device_claim_direct(idev)) + return -EBUSY; mutex_lock(&data->mutex); ret = kx022a_get_axis(data, chan, val); mutex_unlock(&data->mutex); - iio_device_release_direct_mode(idev); + iio_device_release_direct(idev); return ret;