]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ACPI: bus: Indicate support for _TFP thru _OSC
authorArmin Wolf <W_Armin@gmx.de>
Sat, 9 Mar 2024 20:13:06 +0000 (21:13 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 May 2024 07:49:06 +0000 (09:49 +0200)
[ Upstream commit 95d43290f1e476b3be782dd17642e452d0436266 ]

The ACPI thermal driver already uses the _TPF ACPI method to retrieve
precise sampling time values, but this is not reported thru _OSC.

Fix this by setting bit 9 ("Fast Thermal Sampling support") when
evaluating _OSC.

Fixes: a2ee7581afd5 ("ACPI: thermal: Add Thermal fast Sampling Period (_TFP) support")
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/acpi/bus.c
include/linux/acpi.h

index 569bd15f211be9d190dc557820ffedbf5ee8a046..9c5fc12fc13cbce5820ada1573f66d8d489e7abb 100644 (file)
@@ -316,6 +316,8 @@ static void acpi_bus_osc_negotiate_platform_control(void)
                capbuf[OSC_SUPPORT_DWORD] |= OSC_SB_PAD_SUPPORT;
        if (IS_ENABLED(CONFIG_ACPI_PROCESSOR))
                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;
 
        capbuf[OSC_SUPPORT_DWORD] |= OSC_SB_HOTPLUG_OST_SUPPORT;
        capbuf[OSC_SUPPORT_DWORD] |= OSC_SB_PCLPI_SUPPORT;
index b7165e52b3c687bde0d295e7094cff66f5aebd48..e4f4fb67ab55a45620899fc8efd2b2d6cd82f59f 100644 (file)
@@ -573,6 +573,7 @@ acpi_status acpi_run_osc(acpi_handle handle, struct acpi_osc_context *context);
 #define OSC_SB_CPCV2_SUPPORT                   0x00000040
 #define OSC_SB_PCLPI_SUPPORT                   0x00000080
 #define OSC_SB_OSLPI_SUPPORT                   0x00000100
+#define OSC_SB_FAST_THERMAL_SAMPLING_SUPPORT   0x00000200
 #define OSC_SB_CPC_DIVERSE_HIGH_SUPPORT                0x00001000
 #define OSC_SB_GENERIC_INITIATOR_SUPPORT       0x00002000
 #define OSC_SB_CPC_FLEXIBLE_ADR_SPACE          0x00004000