diff mbox series

platform/x86: ideapad-laptop: add missing Ideapad Pro 5 fn keys

Message ID 20241102183116.30142-1-renato@calgera.com (mailing list archive)
State Accepted, archived
Delegated to: Hans de Goede
Headers show
Series platform/x86: ideapad-laptop: add missing Ideapad Pro 5 fn keys | expand

Commit Message

Renato Caldas Nov. 2, 2024, 6:31 p.m. UTC
The scancodes for the Mic Mute and Airplane keys on the Ideapad Pro 5
(14AHP9 at least, probably the other variants too) are different and
were not being picked up by the driver. This adds them to the keymap.

Apart from what is already supported, the remaining fn keys are
unfortunately producing windows-specific key-combos.

Signed-off-by: Renato Caldas <renato@calgera.com>
---
 drivers/platform/x86/ideapad-laptop.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Hans de Goede Nov. 4, 2024, 10:46 a.m. UTC | #1
Hi,

On 2-Nov-24 7:31 PM, Renato Caldas wrote:
> The scancodes for the Mic Mute and Airplane keys on the Ideapad Pro 5
> (14AHP9 at least, probably the other variants too) are different and
> were not being picked up by the driver. This adds them to the keymap.
> 
> Apart from what is already supported, the remaining fn keys are
> unfortunately producing windows-specific key-combos.
> 
> Signed-off-by: Renato Caldas <renato@calgera.com>

Thank you for your patch, I've applied this patch to my review-hans 
branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans

Note it will show up in my review-hans branch once I've pushed my
local branch there, which might take a while.

I will include this patch in my next fixes pull-req to Linus
for the current kernel development cycle.

Regards,

Hans


> ---
>  drivers/platform/x86/ideapad-laptop.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c
> index c64dfc56651d..c908f52ed717 100644
> --- a/drivers/platform/x86/ideapad-laptop.c
> +++ b/drivers/platform/x86/ideapad-laptop.c
> @@ -1294,6 +1294,9 @@ static const struct key_entry ideapad_keymap[] = {
>  	{ KE_KEY,	0x27 | IDEAPAD_WMI_KEY, { KEY_HELP } },
>  	/* Refresh Rate Toggle */
>  	{ KE_KEY,	0x0a | IDEAPAD_WMI_KEY, { KEY_REFRESH_RATE_TOGGLE } },
> +	/* Specific to some newer models */
> +	{ KE_KEY,	0x3e | IDEAPAD_WMI_KEY, { KEY_MICMUTE } },
> +	{ KE_KEY,	0x3f | IDEAPAD_WMI_KEY, { KEY_RFKILL } },
>  
>  	{ KE_END },
>  };
diff mbox series

Patch

diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c
index c64dfc56651d..c908f52ed717 100644
--- a/drivers/platform/x86/ideapad-laptop.c
+++ b/drivers/platform/x86/ideapad-laptop.c
@@ -1294,6 +1294,9 @@  static const struct key_entry ideapad_keymap[] = {
 	{ KE_KEY,	0x27 | IDEAPAD_WMI_KEY, { KEY_HELP } },
 	/* Refresh Rate Toggle */
 	{ KE_KEY,	0x0a | IDEAPAD_WMI_KEY, { KEY_REFRESH_RATE_TOGGLE } },
+	/* Specific to some newer models */
+	{ KE_KEY,	0x3e | IDEAPAD_WMI_KEY, { KEY_MICMUTE } },
+	{ KE_KEY,	0x3f | IDEAPAD_WMI_KEY, { KEY_RFKILL } },
 
 	{ KE_END },
 };