Re: [PATCH v6 0/3] iio: temperature: mlx90632: Add powermanagement

From: Jonathan Cameron
Date: Sat Sep 24 2022 - 12:32:43 EST


On Thu, 22 Sep 2022 10:13:21 +0200
cmo@xxxxxxxxxxx wrote:

> From: Crt Mori <cmo@xxxxxxxxxxx>
>
> As discussed previously on the group under the
> "Controlling device power management from terminal" thread the mlx90632
> sensor provides measurement capabilities under sleep_step mode. This
> series runtime suspends the unused chip to sleep step mode to save power
> but in case of continuous sequential reading it switches to continuous
> mode for faster readouts. This value is hardcoded to
> MLX90632_MEAS_MAX_TIME (with some buffer) and not user configurable.
>
> The sensor runtime suspension is set to MLX90632_SLEEP_DELAY_MS which is
> hardcoded to 3 times as much as MEAS_MAX_TIME.
>
Hi Crt,

Applied. However, we are cutting it very tight for the coming merge window
so I'm not sure I'll get a 3rd pull request out (this just missed the 2nd
one as I only queued up material that was in a final state last weekend)
So for now pushed out as testing and we'll see if Linus hints at an rc8
when he releases rc7 tomorrow. If not this will be 6.2 material now.

Thanks,

Jonathan


> Changes in v6:
>
> - Revert changes to the suspend to prevent power mode regression
>
> Changes in v5 (per review comments from Jonathan Cameron):
>
> - Migrate to devm also for driver removal, along with putting it to low
> power mode
>
> Changes in v4 (per review comments from Jonathan Cameron):
>
> - Migrate back to devm_pm_runtime_enable and remove the pm_disable function
> - Remove pm stuff from remove and also sleep, since when iio device is
> not registered also sleep makes no sense.
> - Replace use EOPNOTSUPP as per checkpatch suggestion although some drivers
> still use ENOTSUPP.
> - Change the style of read frequency
>
> Changes in v3 (per review comments from Jonathan Cameron):
>
> - Change the "available" attribute presentation to more recent way
> suggested
> - Replace devm_pm_runtime_enable with enable and devm_add_action_or_reset
> - When suspending device also put it to lower power mode in case there is
> dummy regulator
> - Use more switch cases instead of if/else
>
> Changes in v2:
>
> - apply review comments from Andy Shevchenko
>
> Crt Mori (3):
> iio: temperature: mlx90632 Add runtime powermanagement modes
> iio: temperature: mlx90632 Read sampling frequency
> iio: temperature: mlx90632 Change return value of sensor measurement
> channel
>
> drivers/iio/temperature/mlx90632.c | 440 ++++++++++++++++++++++++-----
> 1 file changed, 369 insertions(+), 71 deletions(-)
>