On Mon, Jan 29, 2024 at 11:43 AM David Lechner <dlechner@xxxxxxxxxxxx> wrote: > > Although this technically works, it is better to avoid using bool as > a bit value. > > Fixes sparse warning: > > drivers/iio/adc/ad7380.c:353:34: sparse: sparse: dubious: x & !y > > Reported-by: kernel test robot <lkp@xxxxxxxxx> > Closes: https://lore.kernel.org/oe-kbuild-all/202401280629.5kknB57C-lkp@xxxxxxxxx/ > Signed-off-by: David Lechner <dlechner@xxxxxxxxxxxx> > --- > drivers/iio/adc/ad7380.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/iio/adc/ad7380.c b/drivers/iio/adc/ad7380.c > index 44b8b18ab213..a4aa0db47720 100644 > --- a/drivers/iio/adc/ad7380.c > +++ b/drivers/iio/adc/ad7380.c > @@ -350,7 +350,8 @@ static int ad7380_init(struct ad7380_state *st) > /* select internal or external reference voltage */ > ret = regmap_update_bits(st->regmap, AD7380_REG_ADDR_CONFIG1, > AD7380_CONFIG1_REFSEL, > - FIELD_PREP(AD7380_CONFIG1_REFSEL, !!st->vref)); > + FIELD_PREP(AD7380_CONFIG1_REFSEL, > + st->vref : 1 : 0)); Somehow managed to introduce a typo between testing and sending. :-( Will send a v2 with the fix. > if (ret < 0) > return ret; > > -- > 2.43.0 >