Message ID | 20210730071651.17394-1-colin.king@canonical.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | iio: adc: Fix incorrect exit of for-loop | expand |
On Fri, 30 Jul 2021 08:16:51 +0100 Colin King <colin.king@canonical.com> wrote: > From: Colin Ian King <colin.king@canonical.com> > > Currently the for-loop that scans for the optimial adc_period iterates > through all the possible adc_period levels because the exit logic in > the loop is inverted. I believe the comparison should be swapped and > the continue replaced with a break to exit the loop at the correct > point. > > Addresses-Coverity: ("Continue has no effect") > Fixes: e08e19c331fb ("iio:adc: add iio driver for Palmas (twl6035/7) gpadc") > Signed-off-by: Colin Ian King <colin.king@canonical.com> ouch. Applied to the fixes togreg branch of iio.git and marked for stable. Thanks, Jonathan > --- > drivers/iio/adc/palmas_gpadc.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/iio/adc/palmas_gpadc.c b/drivers/iio/adc/palmas_gpadc.c > index 6ef09609be9f..f9c8385c72d3 100644 > --- a/drivers/iio/adc/palmas_gpadc.c > +++ b/drivers/iio/adc/palmas_gpadc.c > @@ -664,8 +664,8 @@ static int palmas_adc_wakeup_configure(struct palmas_gpadc *adc) > > adc_period = adc->auto_conversion_period; > for (i = 0; i < 16; ++i) { > - if (((1000 * (1 << i)) / 32) < adc_period) > - continue; > + if (((1000 * (1 << i)) / 32) >= adc_period) > + break; > } > if (i > 0) > i--;
diff --git a/drivers/iio/adc/palmas_gpadc.c b/drivers/iio/adc/palmas_gpadc.c index 6ef09609be9f..f9c8385c72d3 100644 --- a/drivers/iio/adc/palmas_gpadc.c +++ b/drivers/iio/adc/palmas_gpadc.c @@ -664,8 +664,8 @@ static int palmas_adc_wakeup_configure(struct palmas_gpadc *adc) adc_period = adc->auto_conversion_period; for (i = 0; i < 16; ++i) { - if (((1000 * (1 << i)) / 32) < adc_period) - continue; + if (((1000 * (1 << i)) / 32) >= adc_period) + break; } if (i > 0) i--;