Re: [PATCH v2 2/4] iio: light: rohm-bu27034: Fix infinite delay on error

From: Andy Shevchenko

Date: Fri Aug 28 2026 - 03:54:30 EST


On Fri, Aug 28, 2026 at 10:40:36AM +0300, Matti Vaittinen wrote:

> When reading an integration-time fails, the code will use error code to
> compute the sleep time.
>
> Fix this by using the smallest integration time as a default if
> reading fails.

...

> wait_ms = bu27034_get_int_time(data);
> +
> + /*
> + * If reading the integration time fails, default to the minimum so we
> + * don't lose samples. This may waste CPU cycles, but as a hardening
> + * against theoretical, once-in-a-blue-moon error, this should be Ok.
> + */
> + if (wait_ms < 0)
> + wait_ms = BU27034_INT_TIME_US_MIN;
> +
> wait_ms /= 1000;

With the above being open coded the _ms feels not right.
I would expect the TIME_MIN to be in MS from the start
(and for the consistency's sake with the below) and having
all this to be written like

ret = bu27034_get_int_time(data);
if (ret < 0)
wait_ms = _MS_MIN;
else
wait_ms = ret / USEC_PER_MSEC;

> wait_ms -= BU27034_MEAS_WAIT_PREMATURE_MS;

--
With Best Regards,
Andy Shevchenko