mbox series

[v3,0/1] iio: bmi323: have the peripheral consume less power

Message ID 20240824141122.334620-1-benato.denis96@gmail.com (mailing list archive)
Headers show
Series iio: bmi323: have the peripheral consume less power | expand

Message

Denis Benato Aug. 24, 2024, 2:11 p.m. UTC
The bmi323 chip is part of handhelds PCs that are run on battery.

One of said PC is well-known for its short battery life, even in s2idle:
help mitigate that by putting the device in its lowest-consumption
state while the peripheral is unused.

Have runtime-pm suspend callback save used configuration registers
and runtime-pm resume callback restore saved registers to restore
the previous state.

Changelog:
- V2: patch 1:
	+ change patch commit message
	+ drop removal callbacks and use devm_add_action_or_reset
	+ split bmi323_init in two functions
	+ separate regs to save and relative value
	+ drop unhelpful consts ptr modifiers
	+ add a comment to explain why BMI323_FIFO_CTRL_REG is
	  being used in runtime resume
- V3: patch 1:
  + drop a struct array and replace with an array of
    unsigned int: u8 was too small and it would have resulted
    in overflow of register addresses
  + use single-line comments where possible
  + drop useless comments
  + remove intermediate variables
  + remove blank lines

Previous patches obsoleted:
https://lore.kernel.org/all/20240811161202.19818-1-benato.denis96@gmail.com
https://lore.kernel.org/all/20240818150923.20387-1-benato.denis96@gmail.com

Signed-off-by: Denis Benato <benato.denis96@gmail.com>

Denis Benato (1):
  iio: bmi323: peripheral in lowest power state on suspend

 drivers/iio/imu/bmi323/bmi323_core.c | 155 ++++++++++++++++++++++++++-
 1 file changed, 153 insertions(+), 2 deletions(-)

Comments

Jonathan Cameron Aug. 26, 2024, 10:41 a.m. UTC | #1
On Sat, 24 Aug 2024 16:11:21 +0200
Denis Benato <benato.denis96@gmail.com> wrote:

> The bmi323 chip is part of handhelds PCs that are run on battery.
> 
> One of said PC is well-known for its short battery life, even in s2idle:
> help mitigate that by putting the device in its lowest-consumption
> state while the peripheral is unused.
> 
> Have runtime-pm suspend callback save used configuration registers
> and runtime-pm resume callback restore saved registers to restore
> the previous state.
> 
For future reference, don't send new versions of a patch series
in reply to previous version. It's a good way to ensure your
code does not get reviewed as busy maintainers and reviewers
tend to start with latest threads and this style means
your patch ends up way off the top of the screen!

I don't know if other subsystems specifically ask for this style
of reply, but the ones that I interact with all specifically ask
people to not do what you have here.

Jonathan

> Changelog:
> - V2: patch 1:
> 	+ change patch commit message
> 	+ drop removal callbacks and use devm_add_action_or_reset
> 	+ split bmi323_init in two functions
> 	+ separate regs to save and relative value
> 	+ drop unhelpful consts ptr modifiers
> 	+ add a comment to explain why BMI323_FIFO_CTRL_REG is
> 	  being used in runtime resume
> - V3: patch 1:
>   + drop a struct array and replace with an array of
>     unsigned int: u8 was too small and it would have resulted
>     in overflow of register addresses
>   + use single-line comments where possible
>   + drop useless comments
>   + remove intermediate variables
>   + remove blank lines
> 
> Previous patches obsoleted:
> https://lore.kernel.org/all/20240811161202.19818-1-benato.denis96@gmail.com
> https://lore.kernel.org/all/20240818150923.20387-1-benato.denis96@gmail.com
> 
> Signed-off-by: Denis Benato <benato.denis96@gmail.com>
> 
> Denis Benato (1):
>   iio: bmi323: peripheral in lowest power state on suspend
> 
>  drivers/iio/imu/bmi323/bmi323_core.c | 155 ++++++++++++++++++++++++++-
>  1 file changed, 153 insertions(+), 2 deletions(-)
>
Denis Benato Aug. 26, 2024, 9 p.m. UTC | #2
On 26/08/24 12:41, Jonathan Cameron wrote:
> On Sat, 24 Aug 2024 16:11:21 +0200
> Denis Benato <benato.denis96@gmail.com> wrote:
> 
>> The bmi323 chip is part of handhelds PCs that are run on battery.
>>
>> One of said PC is well-known for its short battery life, even in s2idle:
>> help mitigate that by putting the device in its lowest-consumption
>> state while the peripheral is unused.
>>
>> Have runtime-pm suspend callback save used configuration registers
>> and runtime-pm resume callback restore saved registers to restore
>> the previous state.
>>
> For future reference, don't send new versions of a patch series
> in reply to previous version. It's a good way to ensure your
> code does not get reviewed as busy maintainers and reviewers
> tend to start with latest threads and this style means
> your patch ends up way off the top of the screen!
> 
> I don't know if other subsystems specifically ask for this style
> of reply, but the ones that I interact with all specifically ask
> people to not do what you have here.
> 
> Jonathan
> 
Hello Jonathan,

Thanks for the heads up! I didn't know and now I do.

Thanks for your time, patience and guidance.

Best regards,
Denis

>> Changelog:
>> - V2: patch 1:
>> 	+ change patch commit message
>> 	+ drop removal callbacks and use devm_add_action_or_reset
>> 	+ split bmi323_init in two functions
>> 	+ separate regs to save and relative value
>> 	+ drop unhelpful consts ptr modifiers
>> 	+ add a comment to explain why BMI323_FIFO_CTRL_REG is
>> 	  being used in runtime resume
>> - V3: patch 1:
>>   + drop a struct array and replace with an array of
>>     unsigned int: u8 was too small and it would have resulted
>>     in overflow of register addresses
>>   + use single-line comments where possible
>>   + drop useless comments
>>   + remove intermediate variables
>>   + remove blank lines
>>
>> Previous patches obsoleted:
>> https://lore.kernel.org/all/20240811161202.19818-1-benato.denis96@gmail.com
>> https://lore.kernel.org/all/20240818150923.20387-1-benato.denis96@gmail.com
>>
>> Signed-off-by: Denis Benato <benato.denis96@gmail.com>
>>
>> Denis Benato (1):
>>   iio: bmi323: peripheral in lowest power state on suspend
>>
>>  drivers/iio/imu/bmi323/bmi323_core.c | 155 ++++++++++++++++++++++++++-
>>  1 file changed, 153 insertions(+), 2 deletions(-)
>>
>