diff options
author | 2025-03-03 12:47:04 +0100 | |
---|---|---|
committer | 2025-03-11 19:09:16 +0000 | |
commit | 780c9dbb160f442ed460ee091fbf646f6d7c3b08 (patch) | |
tree | f8c7d2a30b63247d10449c5368dba89ba2636b8e | |
parent | iio: adc: ad4130: Adapt internal names to match official filter_type ABI (diff) | |
download | wireguard-linux-780c9dbb160f442ed460ee091fbf646f6d7c3b08.tar.xz wireguard-linux-780c9dbb160f442ed460ee091fbf646f6d7c3b08.zip |
iio: adc: ad_sigma_delta: Add error checking for ad_sigma_delta_set_channel()
All other calls to ad_sigma_delta_set_channel() in ad_sigma_delta.c
check the return value afterwards. Do it for all calls.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Link: https://patch.msgid.link/20250303114659.1672695-16-u.kleine-koenig@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-rw-r--r-- | drivers/iio/adc/ad_sigma_delta.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/iio/adc/ad_sigma_delta.c b/drivers/iio/adc/ad_sigma_delta.c index d91a3ba127e3..6c37f8e21120 100644 --- a/drivers/iio/adc/ad_sigma_delta.c +++ b/drivers/iio/adc/ad_sigma_delta.c @@ -390,7 +390,9 @@ int ad_sigma_delta_single_conversion(struct iio_dev *indio_dev, if (!iio_device_claim_direct(indio_dev)) return -EBUSY; - ad_sigma_delta_set_channel(sigma_delta, chan->address); + ret = ad_sigma_delta_set_channel(sigma_delta, chan->address); + if (ret) + goto out_release; spi_bus_lock(sigma_delta->spi->controller); sigma_delta->bus_locked = true; @@ -431,6 +433,7 @@ out_unlock: sigma_delta->keep_cs_asserted = false; sigma_delta->bus_locked = false; spi_bus_unlock(sigma_delta->spi->controller); +out_release: iio_device_release_direct(indio_dev); if (ret) |