Re: [PATCH v6 2/2] iio: accel: Add support for the Bosch-Sensortec BMI088

From: Linus Walleij
Date: Sat Jan 23 2021 - 18:22:28 EST


On Sat, Jan 23, 2021 at 4:35 PM Jonathan Cameron <jic23@xxxxxxxxxx> wrote:
> [Me]
> > Next, I think it is better to let suspend/resume, i.e. system PM
> > reuse runtime PM since you're implementing that. This is why
> > we invented PM runtime force resume and force suspend.
>
> Here the driver is turning more off for full suspend than in the
> runtime path. If that results in significant extra delay then
> it's not appropriate to have that in the runtime suspend path.

I see the point.

The resume path calls bmi088_accel_enable() which incurs
a 5ms delay.

The runtime resume path incurs a 1 ms delay.

The runtime autosuspend kicks in after 2 ms.

> Maybe the simplification of not doing the deeper power saving
> mode is worth the extra power cost or extra delay, but
> I'm not yet convinced.

I would personally set the autosuspend to ~20ms and just use
one path and take a hit of 5 ms whenever we go down between
measures if it is a system that is for human interaction, but for
control systems this more complex set-up may be better for
response latencies.

The current approach may be better tuned to perfection and
we are all perfectionists :D

I'm just worrying a little about bugs and maintainability.

Yours,
Linus Walleij