From: Vasiliy Kupriakov Date: Fri, 28 Aug 2020 21:49:30 +0000 (+0300) Subject: platform/x86: asus-wmi: Add userspace notification for performance mode change X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=72ceec58685f8a5c2ec22d9617c7b1e239e2e809;p=linux.git platform/x86: asus-wmi: Add userspace notification for performance mode change When user presses Fn-F5, the driver automatically changes throttle thermal policy (or fan boost mode, depending on laptop model). It would be convenient for userspace software to be able to poll on corresponding sysfs variable. For example, to show a notification about mode change. Note that there is currently no way to handle Fn-F5 from userspace directly, driver does not pass it. Signed-off-by: Vasiliy Kupriakov Link: https://lore.kernel.org/r/20200828214932.20866-2-rublag-ns@yandex.ru Signed-off-by: Hans de Goede --- diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c index fa884c418f4ea..9ca15f7243430 100644 --- a/drivers/platform/x86/asus-wmi.c +++ b/drivers/platform/x86/asus-wmi.c @@ -1690,6 +1690,10 @@ static int fan_boost_mode_write(struct asus_wmi *asus) pr_info("Set fan boost mode: %u\n", value); err = asus_wmi_set_devstate(ASUS_WMI_DEVID_FAN_BOOST_MODE, value, &retval); + + sysfs_notify(&asus->platform_device->dev.kobj, NULL, + "fan_boost_mode"); + if (err) { pr_warn("Failed to set fan boost mode: %d\n", err); return err; @@ -1801,6 +1805,10 @@ static int throttle_thermal_policy_write(struct asus_wmi *asus) err = asus_wmi_set_devstate(ASUS_WMI_DEVID_THROTTLE_THERMAL_POLICY, value, &retval); + + sysfs_notify(&asus->platform_device->dev.kobj, NULL, + "throttle_thermal_policy"); + if (err) { pr_warn("Failed to set throttle thermal policy: %d\n", err); return err;