Hi Hans,
On 27.09.21 17:12, Hans de Goede wrote:
Hi Nicolò,
On 9/27/21 5:00 PM, Nicolò Piazzalunga wrote:
Hi,
On 9/27/21 3:59 PM, Mark Pearson wrote:
Do let me know if there are some important use cases for these so I can go back to the FW team and discuss supporting them properly.
The important use cases are force discharge and inhibit charge.
These at present are dealt with using tpacpi-bat, which relies on (out of tree) acpi_call.
See also your previous reply.
I can see how those can be useful in certain circumstances.
I can also understand how Lenovo does not want these to be
available by default everywhere.
I think a good compromise would be to add a bool module option
which defaults to false to enable these.
From the user perspective, I don't agree that this is a good
compromise. Users simply want to recalibrate their battery. Having to
set the module option beforehand is an unnecessary hurdle imho.
Of course a module option again leads to support overhead in "user
space". Then tlp-stat -b would have to inform the user that
force_discharge is unfortunately not available, but he should try to set
the module option. What would that be good for?
While I respect Mark's official opinion, I would like to counter with my
experience from 10 years of TLP development and support:
The calls for force_discharge work unmodified since the 2012 ThinkPads
(T420/X220) on all models that also support charge thresholds.
They also work reliably, otherwise the issue tracker at tpacpi-bat and
TLP would be full of user issues.
inhibit_charge is probably used rather rarely, at least no TLP user has
asked for it.
@Mark: what is Lenovo's position on the calls for charge thresholds
already included in thinkpad_acpi? Are they also internal?
Assuming Mark is ok with that, this is still blocked on agreeing
on standard power_supply class property names for these 2 features.
Can you perhaps write a (RFC) patch adding proposed standardized
attributes for this to:
Documentation/ABI/testing/sysfs-class-power
As well as to the enum power_supply_property {}
enum in: include/linux/power_supply.h
And to the power_supply_attrs[] array in
drivers/power/supply/power_supply_sysfs.c
?
And then send that the Sebastian Reichel with the linux-pm
and platform-driver-x86 lists in the Cc?
Regards,
Hans
--
Freundliche Grüße / Kind regards,
Thomas Koch
Mail : linrunner@xxxxxxx
Web : https://linrunner.de/tlp