drivers/iio/adc/ad7606_spi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
bitmap_empty() is more verbose and efficient, as it stops traversing
scan_mask as soon as the 1st set bit found.
Signed-off-by: Yury Norov (NVIDIA) <yury.norov@gmail.com>
---
drivers/iio/adc/ad7606_spi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/iio/adc/ad7606_spi.c b/drivers/iio/adc/ad7606_spi.c
index f28e4ca37707..7e17ccbcedd0 100644
--- a/drivers/iio/adc/ad7606_spi.c
+++ b/drivers/iio/adc/ad7606_spi.c
@@ -345,7 +345,7 @@ static int ad7606_spi_update_scan_mode(struct iio_dev *indio_dev,
* has no way of demuxing the data to filter out unwanted
* channels.
*/
- if (bitmap_weight(scan_mask, num_adc_ch) != num_adc_ch)
+ if (!bitmap_full(scan_mask, num_adc_ch))
return -EINVAL;
}
--
2.43.0
On Mon, Dec 15, 2025 at 07:18:06PM -0500, Yury Norov (NVIDIA) wrote: > bitmap_empty() is more verbose and efficient, as it stops traversing > scan_mask as soon as the 1st set bit found. Ah, please read this as: bitmap_full() is more verbose and efficient, as it stops traversing scan_mask as soon as the 1st unset bit found. Sorry for miswording the commit message. > Signed-off-by: Yury Norov (NVIDIA) <yury.norov@gmail.com> > --- > drivers/iio/adc/ad7606_spi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/iio/adc/ad7606_spi.c b/drivers/iio/adc/ad7606_spi.c > index f28e4ca37707..7e17ccbcedd0 100644 > --- a/drivers/iio/adc/ad7606_spi.c > +++ b/drivers/iio/adc/ad7606_spi.c > @@ -345,7 +345,7 @@ static int ad7606_spi_update_scan_mode(struct iio_dev *indio_dev, > * has no way of demuxing the data to filter out unwanted > * channels. > */ > - if (bitmap_weight(scan_mask, num_adc_ch) != num_adc_ch) > + if (!bitmap_full(scan_mask, num_adc_ch)) > return -EINVAL; > } > > -- > 2.43.0
On 12/15/25 6:23 PM, Yury Norov wrote: > On Mon, Dec 15, 2025 at 07:18:06PM -0500, Yury Norov (NVIDIA) wrote: >> bitmap_empty() is more verbose and efficient, as it stops traversing >> scan_mask as soon as the 1st set bit found. > > Ah, please read this as: > > bitmap_full() is more verbose and efficient, as it stops traversing > scan_mask as soon as the 1st unset bit found. > I think you mean "bitmap_full() is less verbose"? This isn't a hot path, so efficiency isn't important. This makes the code easier to understand anyway, so a worthy change. > Sorry for miswording the commit message. > >> Signed-off-by: Yury Norov (NVIDIA) <yury.norov@gmail.com> >> --- >> drivers/iio/adc/ad7606_spi.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/iio/adc/ad7606_spi.c b/drivers/iio/adc/ad7606_spi.c >> index f28e4ca37707..7e17ccbcedd0 100644 >> --- a/drivers/iio/adc/ad7606_spi.c >> +++ b/drivers/iio/adc/ad7606_spi.c >> @@ -345,7 +345,7 @@ static int ad7606_spi_update_scan_mode(struct iio_dev *indio_dev, >> * has no way of demuxing the data to filter out unwanted >> * channels. >> */ >> - if (bitmap_weight(scan_mask, num_adc_ch) != num_adc_ch) >> + if (!bitmap_full(scan_mask, num_adc_ch)) >> return -EINVAL; >> } >> >> -- >> 2.43.0 With the commit message fixed: Reviewed-by: David Lechner <dlechner@baylibre.com>
On Mon, 15 Dec 2025 18:26:46 -0600 David Lechner <dlechner@baylibre.com> wrote: > On 12/15/25 6:23 PM, Yury Norov wrote: > > On Mon, Dec 15, 2025 at 07:18:06PM -0500, Yury Norov (NVIDIA) wrote: > >> bitmap_empty() is more verbose and efficient, as it stops traversing > >> scan_mask as soon as the 1st set bit found. > > > > Ah, please read this as: > > > > bitmap_full() is more verbose and efficient, as it stops traversing > > scan_mask as soon as the 1st unset bit found. > > > > I think you mean "bitmap_full() is less verbose"? > > This isn't a hot path, so efficiency isn't important. > > This makes the code easier to understand anyway, so a worthy change. > Tweaked patch description as discussed (with a more inserted before efficient as it's "less verbose and more efficient" and applied. Thanks, Jonathan > > > Sorry for miswording the commit message. > > > >> Signed-off-by: Yury Norov (NVIDIA) <yury.norov@gmail.com> > >> --- > >> drivers/iio/adc/ad7606_spi.c | 2 +- > >> 1 file changed, 1 insertion(+), 1 deletion(-) > >> > >> diff --git a/drivers/iio/adc/ad7606_spi.c b/drivers/iio/adc/ad7606_spi.c > >> index f28e4ca37707..7e17ccbcedd0 100644 > >> --- a/drivers/iio/adc/ad7606_spi.c > >> +++ b/drivers/iio/adc/ad7606_spi.c > >> @@ -345,7 +345,7 @@ static int ad7606_spi_update_scan_mode(struct iio_dev *indio_dev, > >> * has no way of demuxing the data to filter out unwanted > >> * channels. > >> */ > >> - if (bitmap_weight(scan_mask, num_adc_ch) != num_adc_ch) > >> + if (!bitmap_full(scan_mask, num_adc_ch)) > >> return -EINVAL; > >> } > >> > >> -- > >> 2.43.0 > > With the commit message fixed: > > Reviewed-by: David Lechner <dlechner@baylibre.com> >
© 2016 - 2026 Red Hat, Inc.