[PATCH] platform/x86: asus-wmi: restore battery charge limit support
From: Luis Miguel Arias
Date: Tue Aug 18 2026 - 14:03:07 EST
On ASUS systems where the charge threshold is supported through
ASUS_WMI_DEVID_RSOC, initializing charge_end_threshold to -1 causes
the sysfs attribute to return -ENODATA. This makes TLP consider
charge threshold support unavailable.
Initialize the cached threshold to 100 instead, allowing userspace
to set the desired threshold normally.
Tested on ASUS with TLP 1.8.0:
Before this change:
* charge_end_threshold = -1
* TLP reported no charge threshold support
After this change:
* TLP reports "charge threshold" as supported
* natacpi (asus_wmi) is active
* charge_control_end_threshold can be set to 80%
Signed-off-by: Luis Miguel Arias <luismiguel@xxxxxxxxxxxx>
---
drivers/platform/x86/asus-wmi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
index 80144c412..87363b198 100644
--- a/drivers/platform/x86/asus-wmi.c
+++ b/drivers/platform/x86/asus-wmi.c
@@ -1586,7 +1586,7 @@ static int asus_wmi_battery_add(struct power_supply *battery, struct acpi_batter
* platforms retains it, therefore signal the threshold as unknown
* until user explicitly sets it to a new value.
*/
- charge_end_threshold = -1;
+ charge_end_threshold = 100;
return 0;
}
--
2.47.3