linux-iio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v6 0/3] iio: temperature: mlx90632: Add powermanagement
@ 2022-09-22  8:13 cmo
  2022-09-22  8:13 ` [PATCH v6 1/3] iio: temperature: mlx90632 Add runtime powermanagement modes cmo
                   ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: cmo @ 2022-09-22  8:13 UTC (permalink / raw)
  To: Jonathan Cameron; +Cc: linux-iio, linux-kernel, Andy Shevchenko, Crt Mori

From: Crt Mori <cmo@melexis.com>

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.

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(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2022-10-09 16:35 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-22  8:13 [PATCH v6 0/3] iio: temperature: mlx90632: Add powermanagement cmo
2022-09-22  8:13 ` [PATCH v6 1/3] iio: temperature: mlx90632 Add runtime powermanagement modes cmo
2022-10-02 16:09   ` Christophe JAILLET
2022-10-02 16:11     ` Christophe JAILLET
2022-10-03  7:43       ` Andy Shevchenko
2022-10-03  8:20     ` Crt Mori
2022-10-09 16:36       ` Jonathan Cameron
2022-09-22  8:13 ` [PATCH v6 2/3] iio: temperature: mlx90632 Read sampling frequency cmo
2022-09-22  8:13 ` [PATCH v6 3/3] iio: temperature: mlx90632 Change return value of sensor measurement channel cmo
2022-09-24 16:32 ` [PATCH v6 0/3] iio: temperature: mlx90632: Add powermanagement Jonathan Cameron
2022-09-26 13:20   ` Crt Mori
2022-10-02 11:25     ` Jonathan Cameron
2022-10-02 14:36       ` Crt Mori
2022-10-02 14:43         ` Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).