[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <tkJb_14m7EeHjs3G_DaqN0tMCLMA4qNheZDxfrsnGHoxFrsxOebsq46o8pXT-f7i2SgcZiFGk8FEy6BWVeT7xtTShgbyXqYNyeu58bayOS0=@protonmail.com>
Date: Wed, 18 Aug 2021 19:25:34 +0000
From: Barnabás Pőcze <pobrn@...tonmail.com>
To: "Luke D. Jones" <luke@...nes.dev>
Cc: linux-kernel@...r.kernel.org, hdegoede@...hat.com,
hadess@...ess.net, platform-driver-x86@...r.kernel.org
Subject: Re: [PATCH v5 1/1] asus-wmi: Add support for platform_profile
Hi
2021. augusztus 18., szerda 21:07 keltezéssel, Luke D. Jones írta:
> Add initial support for platform_profile where the support is
> based on availability of ASUS_THROTTLE_THERMAL_POLICY.
>
> Because throttle_thermal_policy is used by platform_profile and is
> writeable separately to platform_profile any userspace changes to
> throttle_thermal_policy need to notify platform_profile.
>
> In future throttle_thermal_policy sysfs should be removed so that
> only one method controls the laptop power profile.
>
> Signed-off-by: Luke D. Jones <luke@...nes.dev>
> ---
> drivers/platform/x86/Kconfig | 1 +
> drivers/platform/x86/asus-wmi.c | 130 +++++++++++++++++++++++++++++++-
> 2 files changed, 127 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
> index d12db6c316ea..46dec48a36c1 100644
> --- a/drivers/platform/x86/Kconfig
> +++ b/drivers/platform/x86/Kconfig
> [...]
> +static int platform_profile_set(struct platform_profile_handler *pprof,
> + enum platform_profile_option profile)
> +{
> + struct asus_wmi *asus;
> + int tp;
> +
> + asus = container_of(pprof, struct asus_wmi, platform_profile_handler);
> +
> + switch (profile) {
> + case PLATFORM_PROFILE_PERFORMANCE:
> + tp = ASUS_THROTTLE_THERMAL_POLICY_OVERBOOST;
> + break;
> + case PLATFORM_PROFILE_BALANCED:
> + tp = ASUS_THROTTLE_THERMAL_POLICY_DEFAULT;
> + break;
> + case PLATFORM_PROFILE_QUIET:
> + tp = ASUS_THROTTLE_THERMAL_POLICY_SILENT;
> + break;
> + default:
> + return -EOPNOTSUPP;
> + }
> +
> + asus->throttle_thermal_policy_mode = tp;
> + return throttle_thermal_policy_write(asus);
Here the new mode will be stored even if activating it fails, no?
> +}
> [...]
Best regards,
Barnabás Pőcze
Powered by blists - more mailing lists