diff options
author | Gergo Koteles <soyer@irl.hu> | 2024-04-08 19:35:11 +0200 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2024-04-15 15:48:31 +0200 |
commit | 822188bf55e1ae6f5c41272382b2aa5f206bc6ab (patch) | |
tree | 92b6b409e4bfecde474ad7ee715e1e60392f9d4e /drivers/platform | |
parent | ba95eb44676d68049490af617049a7bf68946527 (diff) |
platform/x86: ideapad-laptop: switch platform profiles using thermal management key
Ideapad laptops have thermal management or performance mode switch key
(Fn + Q). They report KEY_PROG4.
If supported, cycle between platform profiles instead.
Tested on Yoga7 14ARB7.
Signed-off-by: Gergo Koteles <soyer@irl.hu>
Link: https://lore.kernel.org/r/e5cf301ef731b037e211d468fe1d362fe3ea40ad.1712597199.git.soyer@irl.hu
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'drivers/platform')
-rw-r--r-- | drivers/platform/x86/ideapad-laptop.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c index 8a5bef4eedfe..fcf13d88fd6e 100644 --- a/drivers/platform/x86/ideapad-laptop.c +++ b/drivers/platform/x86/ideapad-laptop.c @@ -1218,8 +1218,11 @@ static void ideapad_check_special_buttons(struct ideapad_private *priv) switch (bit) { case 6: /* Z570 */ case 0: /* Z580 */ - /* Thermal Management button */ - ideapad_input_report(priv, 65); + /* Thermal Management / Performance Mode button */ + if (priv->dytc) + platform_profile_cycle(); + else + ideapad_input_report(priv, 65); break; case 1: /* OneKey Theater button */ |