]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ACPI: bus: Indicate support for battery charge limiting thru _OSC
authorArmin Wolf <W_Armin@gmx.de>
Thu, 20 Jun 2024 19:14:10 +0000 (21:14 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 1 Jul 2024 17:26:04 +0000 (19:26 +0200)
The ACPI battery driver can handle the "charge limiting" state
of the battery, so the platform can advertise this state.

Indicate this by setting bit 19 ("Battery Charge Limiting Support")
when evaluating _OSC.

Tested on a Lenovo Ideapad S145-14IWL.

Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Link: https://patch.msgid.link/20240620191410.3646-2-W_Armin@gmx.de
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/bus.c
include/linux/acpi.h

index 787eca8384100225d1e92445fda1efe43854e935..bdbd60ae889797093549551c14673974d4a1b4aa 100644 (file)
@@ -329,6 +329,8 @@ static void acpi_bus_osc_negotiate_platform_control(void)
                capbuf[OSC_SUPPORT_DWORD] |= OSC_SB_PPC_OST_SUPPORT;
        if (IS_ENABLED(CONFIG_ACPI_THERMAL))
                capbuf[OSC_SUPPORT_DWORD] |= OSC_SB_FAST_THERMAL_SAMPLING_SUPPORT;
+       if (IS_ENABLED(CONFIG_ACPI_BATTERY))
+               capbuf[OSC_SUPPORT_DWORD] |= OSC_SB_BATTERY_CHARGE_LIMITING_SUPPORT;
 
        capbuf[OSC_SUPPORT_DWORD] |= OSC_SB_HOTPLUG_OST_SUPPORT;
        capbuf[OSC_SUPPORT_DWORD] |= OSC_SB_PCLPI_SUPPORT;
index 28c3fb2bef0daacbd524476dc3a4fd97de29b22c..b87ef8f3caa0854fcf6f4347e8ea22dcc100da5b 100644 (file)
@@ -576,6 +576,7 @@ acpi_status acpi_run_osc(acpi_handle handle, struct acpi_osc_context *context);
 #define OSC_SB_CPC_FLEXIBLE_ADR_SPACE          0x00004000
 #define OSC_SB_GENERIC_INITIATOR_SUPPORT       0x00020000
 #define OSC_SB_NATIVE_USB4_SUPPORT             0x00040000
+#define OSC_SB_BATTERY_CHARGE_LIMITING_SUPPORT 0x00080000
 #define OSC_SB_PRM_SUPPORT                     0x00200000
 #define OSC_SB_FFH_OPR_SUPPORT                 0x00400000