58 lines
2.0 KiB
Diff
58 lines
2.0 KiB
Diff
From 4d538d888ff723832da4b9bb48b17eebc3b7765c Mon Sep 17 00:00:00 2001
|
|
From: Armin Wolf <W_Armin@gmx.de>
|
|
Date: Sun, 24 Nov 2024 18:19:41 +0100
|
|
Subject: [PATCH] platform/x86: asus-wmi: Ignore return value when writing
|
|
thermal policy
|
|
|
|
On some machines like the ASUS Vivobook S14 writing the thermal policy
|
|
returns the currently writen thermal policy instead of an error code.
|
|
|
|
Ignore the return code to avoid falsely returning an error when the
|
|
thermal policy was written successfully.
|
|
|
|
Reported-by: auslands-kv@gmx.de
|
|
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219517
|
|
Fixes: 2daa86e78c49 ("platform/x86: asus_wmi: Support throttle thermal policy")
|
|
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
|
|
---
|
|
drivers/platform/x86/asus-wmi.c | 11 ++---------
|
|
1 file changed, 2 insertions(+), 9 deletions(-)
|
|
|
|
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
|
|
index 89f5f44857d555..a173f95d6d35b8 100644
|
|
--- a/drivers/platform/x86/asus-wmi.c
|
|
+++ b/drivers/platform/x86/asus-wmi.c
|
|
@@ -3106,7 +3106,6 @@ static int fan_boost_mode_check_present(struct asus_wmi *asus)
|
|
|
|
static int fan_boost_mode_write(struct asus_wmi *asus)
|
|
{
|
|
- u32 retval;
|
|
u8 value;
|
|
int err;
|
|
|
|
@@ -3718,8 +3717,8 @@ static int throttle_thermal_policy_write(struct asus_wmi *asus)
|
|
value = asus->throttle_thermal_policy_mode;
|
|
}
|
|
|
|
- err = asus_wmi_set_devstate(asus->throttle_thermal_policy_dev,
|
|
- value, &retval);
|
|
+ /* Some machines do not return an error code as a result, so we ignore it */
|
|
+ err = asus_wmi_set_devstate(asus->throttle_thermal_policy_dev, value, NULL);
|
|
|
|
sysfs_notify(&asus->platform_device->dev.kobj, NULL,
|
|
"throttle_thermal_policy");
|
|
@@ -3729,12 +3728,6 @@ static int throttle_thermal_policy_write(struct asus_wmi *asus)
|
|
return err;
|
|
}
|
|
|
|
- if (retval != 1) {
|
|
- pr_warn("Failed to set throttle thermal policy (retval): 0x%x\n",
|
|
- retval);
|
|
- return -EIO;
|
|
- }
|
|
-
|
|
/* Must set to disabled if mode is toggled */
|
|
if (asus->cpu_fan_curve_available)
|
|
asus->custom_fan_curves[FAN_CURVE_DEV_CPU].enabled = false;
|
|
|