From: David Lechner Date: Mon, 10 Feb 2025 22:33:33 +0000 (-0600) Subject: iio: adc: ad7606: use gpiod_multi_set_value_cansleep X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=f23209e9758a27c828606251f0895a2bbcb58235;p=users%2Fjedix%2Flinux-maple.git iio: adc: ad7606: use gpiod_multi_set_value_cansleep Reduce verbosity by using gpiod_multi_set_value_cansleep() instead of gpiod_set_array_value(). These are not called in an atomic context, so changing to the cansleep variant is fine. Also drop unnecessary braces while we are at it. Reviewed-by: Linus Walleij Signed-off-by: David Lechner Link: https://patch.msgid.link/20250210-gpio-set-array-helper-v3-7-d6a673674da8@baylibre.com Signed-off-by: Jonathan Cameron --- diff --git a/drivers/iio/adc/ad7606.c b/drivers/iio/adc/ad7606.c index 1e8b03a518b8..87908cc51e48 100644 --- a/drivers/iio/adc/ad7606.c +++ b/drivers/iio/adc/ad7606.c @@ -828,8 +828,7 @@ static int ad7606_write_os_hw(struct iio_dev *indio_dev, int val) values[0] = val & GENMASK(2, 0); - gpiod_set_array_value(st->gpio_os->ndescs, st->gpio_os->desc, - st->gpio_os->info, values); + gpiod_multi_set_value_cansleep(st->gpio_os, values); /* AD7616 requires a reset to update value */ if (st->chip_info->os_req_reset) @@ -1260,10 +1259,9 @@ static int ad7606b_sw_mode_setup(struct iio_dev *indio_dev) * in the device tree, then they need to be set to high, * otherwise, they must be hardwired to VDD */ - if (st->gpio_os) { - gpiod_set_array_value(st->gpio_os->ndescs, st->gpio_os->desc, - st->gpio_os->info, os); - } + if (st->gpio_os) + gpiod_multi_set_value_cansleep(st->gpio_os, os); + /* OS of 128 and 256 are available only in software mode */ st->oversampling_avail = ad7606b_oversampling_avail; st->num_os_ratios = ARRAY_SIZE(ad7606b_oversampling_avail);