* [PATCH v2 0/2] platform/x86: asus-wmi: map more keys on ExpertBook B9
@ 2025-07-14 15:07 Anton Khirnov
2025-07-14 15:07 ` [PATCH v2 1/2] Input: allocate a keycode for Fn+space Anton Khirnov
2025-07-14 15:07 ` [PATCH v2 2/2] platform/x86: asus-wmi: map more keys on ExpertBook B9 Anton Khirnov
0 siblings, 2 replies; 9+ messages in thread
From: Anton Khirnov @ 2025-07-14 15:07 UTC (permalink / raw)
To: Corentin Chary, Luke D. Jones, Hans de Goede, Ilpo Järvinen,
Dmitry Torokhov
Cc: platform-driver-x86, linux-kernel, linux-input
Hi,
second version of the set [1], changed according to review by Hans de
Goede.
Now allocates a new keycode KEY_FN_SPACE for Fn+space.
The key mappings now are:
* Fn+space -> FN_SPACE
* Fn+f -> FN_F
* <noise cancel> -> F13
* Fn+<noise cancel> -> F14
[1] https://lore.kernel.org/platform-driver-x86/20250702070231.2872-1-anton@khirnov.net/
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v2 1/2] Input: allocate a keycode for Fn+space
2025-07-14 15:07 [PATCH v2 0/2] platform/x86: asus-wmi: map more keys on ExpertBook B9 Anton Khirnov
@ 2025-07-14 15:07 ` Anton Khirnov
2025-07-15 12:26 ` Hans de Goede
2025-08-07 7:04 ` Anton Khirnov
2025-07-14 15:07 ` [PATCH v2 2/2] platform/x86: asus-wmi: map more keys on ExpertBook B9 Anton Khirnov
1 sibling, 2 replies; 9+ messages in thread
From: Anton Khirnov @ 2025-07-14 15:07 UTC (permalink / raw)
To: Corentin Chary, Luke D. Jones, Hans de Goede, Ilpo Järvinen,
Dmitry Torokhov
Cc: platform-driver-x86, linux-kernel, linux-input
The Asus ExpertBook B9 laptop sends a WMI event when Fn+space is
pressed. Since I could not find any information on what this combination
is intended to do on this or any other Asus laptop, allocate a
KEY_FN_SPACE keycode for it.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
---
include/uapi/linux/input-event-codes.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/uapi/linux/input-event-codes.h b/include/uapi/linux/input-event-codes.h
index 3b2524e4b667..a49b0782fd8a 100644
--- a/include/uapi/linux/input-event-codes.h
+++ b/include/uapi/linux/input-event-codes.h
@@ -548,6 +548,7 @@
#define KEY_FN_S 0x1e3
#define KEY_FN_B 0x1e4
#define KEY_FN_RIGHT_SHIFT 0x1e5
+#define KEY_FN_SPACE 0x1e6
#define KEY_BRL_DOT1 0x1f1
#define KEY_BRL_DOT2 0x1f2
--
2.39.5
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v2 2/2] platform/x86: asus-wmi: map more keys on ExpertBook B9
2025-07-14 15:07 [PATCH v2 0/2] platform/x86: asus-wmi: map more keys on ExpertBook B9 Anton Khirnov
2025-07-14 15:07 ` [PATCH v2 1/2] Input: allocate a keycode for Fn+space Anton Khirnov
@ 2025-07-14 15:07 ` Anton Khirnov
2025-07-15 12:27 ` Hans de Goede
1 sibling, 1 reply; 9+ messages in thread
From: Anton Khirnov @ 2025-07-14 15:07 UTC (permalink / raw)
To: Dmitry Torokhov, Corentin Chary, Luke D. Jones, Hans de Goede,
Ilpo Järvinen
Cc: linux-input, platform-driver-x86, linux-kernel
* there is a dedicated "noise cancel" key in top row, between mic mute
and PrintScreen; it sends 0xCA when pressed by itself (mapped to F13),
0xCB with Fn (mapped to F14)
* Fn+f sends 0x9D; it is not documented in the manual, but some web
search results mention "asus intelligent performance"; mapped to FN_F
* Fn+space sends 0x5B; it is not documented or mentioned anywhere I
could find; mapped to FN_SPACE
Signed-off-by: Anton Khirnov <anton@khirnov.net>
---
drivers/platform/x86/asus-nb-wmi.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c
index f84c3d03c1de..9d2fd7bc3ce1 100644
--- a/drivers/platform/x86/asus-nb-wmi.c
+++ b/drivers/platform/x86/asus-nb-wmi.c
@@ -582,6 +582,7 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
{ KE_KEY, 0x55, { KEY_CALC } },
{ KE_IGNORE, 0x57, }, /* Battery mode */
{ KE_IGNORE, 0x58, }, /* AC mode */
+ { KE_KEY, 0x5B, { KEY_FN_SPACE } },
{ KE_KEY, 0x5C, { KEY_F15 } }, /* Power Gear key */
{ KE_KEY, 0x5D, { KEY_WLAN } }, /* Wireless console Toggle */
{ KE_KEY, 0x5E, { KEY_WLAN } }, /* Wireless console Enable */
@@ -618,6 +619,7 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
{ KE_KEY, 0x93, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + CRT + TV + DVI */
{ KE_KEY, 0x95, { KEY_MEDIA } },
{ KE_KEY, 0x99, { KEY_PHONE } }, /* Conflicts with fan mode switch */
+ { KE_KEY, 0X9D, { KEY_FN_F } },
{ KE_KEY, 0xA0, { KEY_SWITCHVIDEOMODE } }, /* SDSP HDMI only */
{ KE_KEY, 0xA1, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + HDMI */
{ KE_KEY, 0xA2, { KEY_SWITCHVIDEOMODE } }, /* SDSP CRT + HDMI */
@@ -632,6 +634,8 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
{ KE_IGNORE, 0xC0, }, /* External display connect/disconnect notification */
{ KE_KEY, 0xC4, { KEY_KBDILLUMUP } },
{ KE_KEY, 0xC5, { KEY_KBDILLUMDOWN } },
+ { KE_KEY, 0xCA, { KEY_F13 } }, /* Noise cancelling on Expertbook B9 */
+ { KE_KEY, 0xCB, { KEY_F14 } }, /* Fn+noise-cancel */
{ KE_IGNORE, 0xC6, }, /* Ambient Light Sensor notification */
{ KE_IGNORE, 0xCF, }, /* AC mode */
{ KE_KEY, 0xFA, { KEY_PROG2 } }, /* Lid flip action */
--
2.39.5
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v2 1/2] Input: allocate a keycode for Fn+space
2025-07-14 15:07 ` [PATCH v2 1/2] Input: allocate a keycode for Fn+space Anton Khirnov
@ 2025-07-15 12:26 ` Hans de Goede
2025-08-07 7:04 ` Anton Khirnov
1 sibling, 0 replies; 9+ messages in thread
From: Hans de Goede @ 2025-07-15 12:26 UTC (permalink / raw)
To: Anton Khirnov, Corentin Chary, Luke D. Jones, Ilpo Järvinen,
Dmitry Torokhov
Cc: platform-driver-x86, linux-kernel, linux-input
Hi,
On 14-Jul-25 5:07 PM, Anton Khirnov wrote:
> The Asus ExpertBook B9 laptop sends a WMI event when Fn+space is
> pressed. Since I could not find any information on what this combination
> is intended to do on this or any other Asus laptop, allocate a
> KEY_FN_SPACE keycode for it.
>
> Signed-off-by: Anton Khirnov <anton@khirnov.net>
Thanks, patch looks good to me:
Reviewed-by: Hans de Goede <hansg@kernel.org>
Regards,
Hans
> ---
> include/uapi/linux/input-event-codes.h | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/include/uapi/linux/input-event-codes.h b/include/uapi/linux/input-event-codes.h
> index 3b2524e4b667..a49b0782fd8a 100644
> --- a/include/uapi/linux/input-event-codes.h
> +++ b/include/uapi/linux/input-event-codes.h
> @@ -548,6 +548,7 @@
> #define KEY_FN_S 0x1e3
> #define KEY_FN_B 0x1e4
> #define KEY_FN_RIGHT_SHIFT 0x1e5
> +#define KEY_FN_SPACE 0x1e6
>
> #define KEY_BRL_DOT1 0x1f1
> #define KEY_BRL_DOT2 0x1f2
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v2 2/2] platform/x86: asus-wmi: map more keys on ExpertBook B9
2025-07-14 15:07 ` [PATCH v2 2/2] platform/x86: asus-wmi: map more keys on ExpertBook B9 Anton Khirnov
@ 2025-07-15 12:27 ` Hans de Goede
2025-08-27 15:29 ` [PATCH v3] " Anton Khirnov
0 siblings, 1 reply; 9+ messages in thread
From: Hans de Goede @ 2025-07-15 12:27 UTC (permalink / raw)
To: Anton Khirnov, Dmitry Torokhov, Corentin Chary, Luke D. Jones,
Ilpo Järvinen
Cc: linux-input, platform-driver-x86, linux-kernel
Hi,
On 14-Jul-25 5:07 PM, Anton Khirnov wrote:
> * there is a dedicated "noise cancel" key in top row, between mic mute
> and PrintScreen; it sends 0xCA when pressed by itself (mapped to F13),
> 0xCB with Fn (mapped to F14)
> * Fn+f sends 0x9D; it is not documented in the manual, but some web
> search results mention "asus intelligent performance"; mapped to FN_F
> * Fn+space sends 0x5B; it is not documented or mentioned anywhere I
> could find; mapped to FN_SPACE
>
> Signed-off-by: Anton Khirnov <anton@khirnov.net>
Thanks, patch looks good to me:
Reviewed-by: Hans de Goede <hansg@kernel.org>
Regards,
Hans
> ---
> drivers/platform/x86/asus-nb-wmi.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c
> index f84c3d03c1de..9d2fd7bc3ce1 100644
> --- a/drivers/platform/x86/asus-nb-wmi.c
> +++ b/drivers/platform/x86/asus-nb-wmi.c
> @@ -582,6 +582,7 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
> { KE_KEY, 0x55, { KEY_CALC } },
> { KE_IGNORE, 0x57, }, /* Battery mode */
> { KE_IGNORE, 0x58, }, /* AC mode */
> + { KE_KEY, 0x5B, { KEY_FN_SPACE } },
> { KE_KEY, 0x5C, { KEY_F15 } }, /* Power Gear key */
> { KE_KEY, 0x5D, { KEY_WLAN } }, /* Wireless console Toggle */
> { KE_KEY, 0x5E, { KEY_WLAN } }, /* Wireless console Enable */
> @@ -618,6 +619,7 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
> { KE_KEY, 0x93, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + CRT + TV + DVI */
> { KE_KEY, 0x95, { KEY_MEDIA } },
> { KE_KEY, 0x99, { KEY_PHONE } }, /* Conflicts with fan mode switch */
> + { KE_KEY, 0X9D, { KEY_FN_F } },
> { KE_KEY, 0xA0, { KEY_SWITCHVIDEOMODE } }, /* SDSP HDMI only */
> { KE_KEY, 0xA1, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + HDMI */
> { KE_KEY, 0xA2, { KEY_SWITCHVIDEOMODE } }, /* SDSP CRT + HDMI */
> @@ -632,6 +634,8 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
> { KE_IGNORE, 0xC0, }, /* External display connect/disconnect notification */
> { KE_KEY, 0xC4, { KEY_KBDILLUMUP } },
> { KE_KEY, 0xC5, { KEY_KBDILLUMDOWN } },
> + { KE_KEY, 0xCA, { KEY_F13 } }, /* Noise cancelling on Expertbook B9 */
> + { KE_KEY, 0xCB, { KEY_F14 } }, /* Fn+noise-cancel */
> { KE_IGNORE, 0xC6, }, /* Ambient Light Sensor notification */
> { KE_IGNORE, 0xCF, }, /* AC mode */
> { KE_KEY, 0xFA, { KEY_PROG2 } }, /* Lid flip action */
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v2 1/2] Input: allocate a keycode for Fn+space
2025-07-14 15:07 ` [PATCH v2 1/2] Input: allocate a keycode for Fn+space Anton Khirnov
2025-07-15 12:26 ` Hans de Goede
@ 2025-08-07 7:04 ` Anton Khirnov
1 sibling, 0 replies; 9+ messages in thread
From: Anton Khirnov @ 2025-08-07 7:04 UTC (permalink / raw)
To: Dmitry Torokhov
Cc: platform-driver-x86, linux-kernel, linux-input, Corentin Chary,
Luke D. Jones, Hans de Goede, Ilpo Järvinen
Hi Dmitry,
could you please look at this?
Thanks,
--
Anton Khirnov
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v3] platform/x86: asus-wmi: map more keys on ExpertBook B9
2025-07-15 12:27 ` Hans de Goede
@ 2025-08-27 15:29 ` Anton Khirnov
2025-08-28 16:18 ` Ilpo Järvinen
0 siblings, 1 reply; 9+ messages in thread
From: Anton Khirnov @ 2025-08-27 15:29 UTC (permalink / raw)
To: Hans de Goede, Corentin Chary, Luke D. Jones, Ilpo Järvinen
Cc: Anton Khirnov, Dmitry Torokhov, linux-input, platform-driver-x86,
linux-kernel
* there is a dedicated "noise cancel" key in top row, between mic mute
and PrintScreen; it sends 0xCA when pressed by itself (mapped to F13),
0xCB with Fn (mapped to F14)
* Fn+f sends 0x9D; it is not documented in the manual, but some web
search results mention "asus intelligent performance"; mapped to FN_F
Signed-off-by: Anton Khirnov <anton@khirnov.net>
---
Hi Hans,
would you mind applying this version of the patch, with the Fn+space
mapping left out for now?
Thanks
---
drivers/platform/x86/asus-nb-wmi.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c
index f84c3d03c1de..dba3c1488db2 100644
--- a/drivers/platform/x86/asus-nb-wmi.c
+++ b/drivers/platform/x86/asus-nb-wmi.c
@@ -618,6 +618,7 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
{ KE_KEY, 0x93, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + CRT + TV + DVI */
{ KE_KEY, 0x95, { KEY_MEDIA } },
{ KE_KEY, 0x99, { KEY_PHONE } }, /* Conflicts with fan mode switch */
+ { KE_KEY, 0X9D, { KEY_FN_F } },
{ KE_KEY, 0xA0, { KEY_SWITCHVIDEOMODE } }, /* SDSP HDMI only */
{ KE_KEY, 0xA1, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + HDMI */
{ KE_KEY, 0xA2, { KEY_SWITCHVIDEOMODE } }, /* SDSP CRT + HDMI */
@@ -632,6 +633,8 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
{ KE_IGNORE, 0xC0, }, /* External display connect/disconnect notification */
{ KE_KEY, 0xC4, { KEY_KBDILLUMUP } },
{ KE_KEY, 0xC5, { KEY_KBDILLUMDOWN } },
+ { KE_KEY, 0xCA, { KEY_F13 } }, /* Noise cancelling on Expertbook B9 */
+ { KE_KEY, 0xCB, { KEY_F14 } }, /* Fn+noise-cancel */
{ KE_IGNORE, 0xC6, }, /* Ambient Light Sensor notification */
{ KE_IGNORE, 0xCF, }, /* AC mode */
{ KE_KEY, 0xFA, { KEY_PROG2 } }, /* Lid flip action */
--
2.39.5
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v3] platform/x86: asus-wmi: map more keys on ExpertBook B9
2025-08-27 15:29 ` [PATCH v3] " Anton Khirnov
@ 2025-08-28 16:18 ` Ilpo Järvinen
2025-08-31 9:21 ` Anton Khirnov
0 siblings, 1 reply; 9+ messages in thread
From: Ilpo Järvinen @ 2025-08-28 16:18 UTC (permalink / raw)
To: Anton Khirnov
Cc: Hans de Goede, Corentin Chary, Luke D. Jones, Dmitry Torokhov,
linux-input, platform-driver-x86, LKML
On Wed, 27 Aug 2025, Anton Khirnov wrote:
> * there is a dedicated "noise cancel" key in top row, between mic mute
> and PrintScreen; it sends 0xCA when pressed by itself (mapped to F13),
> 0xCB with Fn (mapped to F14)
> * Fn+f sends 0x9D; it is not documented in the manual, but some web
> search results mention "asus intelligent performance"; mapped to FN_F
>
> Signed-off-by: Anton Khirnov <anton@khirnov.net>
> ---
> Hi Hans,
> would you mind applying this version of the patch, with the Fn+space
> mapping left out for now?
Hi Anton,
These days I'm the one handling pdx86 patches. I took this into the
review-ilpo-fixes branch and reinstated Hans' ack.
My experience is that long delays are nothing unusual when interacting
with Dimitry so don't get discouraged by that when it comes to the
rest of v2 content. Once Dimitry has okay'ed the input side change, please
resubmit the rest.
--
i.
> Thanks
> ---
>
> drivers/platform/x86/asus-nb-wmi.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c
> index f84c3d03c1de..dba3c1488db2 100644
> --- a/drivers/platform/x86/asus-nb-wmi.c
> +++ b/drivers/platform/x86/asus-nb-wmi.c
> @@ -618,6 +618,7 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
> { KE_KEY, 0x93, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + CRT + TV + DVI */
> { KE_KEY, 0x95, { KEY_MEDIA } },
> { KE_KEY, 0x99, { KEY_PHONE } }, /* Conflicts with fan mode switch */
> + { KE_KEY, 0X9D, { KEY_FN_F } },
> { KE_KEY, 0xA0, { KEY_SWITCHVIDEOMODE } }, /* SDSP HDMI only */
> { KE_KEY, 0xA1, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + HDMI */
> { KE_KEY, 0xA2, { KEY_SWITCHVIDEOMODE } }, /* SDSP CRT + HDMI */
> @@ -632,6 +633,8 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
> { KE_IGNORE, 0xC0, }, /* External display connect/disconnect notification */
> { KE_KEY, 0xC4, { KEY_KBDILLUMUP } },
> { KE_KEY, 0xC5, { KEY_KBDILLUMDOWN } },
> + { KE_KEY, 0xCA, { KEY_F13 } }, /* Noise cancelling on Expertbook B9 */
> + { KE_KEY, 0xCB, { KEY_F14 } }, /* Fn+noise-cancel */
> { KE_IGNORE, 0xC6, }, /* Ambient Light Sensor notification */
> { KE_IGNORE, 0xCF, }, /* AC mode */
> { KE_KEY, 0xFA, { KEY_PROG2 } }, /* Lid flip action */
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3] platform/x86: asus-wmi: map more keys on ExpertBook B9
2025-08-28 16:18 ` Ilpo Järvinen
@ 2025-08-31 9:21 ` Anton Khirnov
0 siblings, 0 replies; 9+ messages in thread
From: Anton Khirnov @ 2025-08-31 9:21 UTC (permalink / raw)
To: Ilpo Järvinen
Cc: Hans de Goede, Corentin Chary, Luke D. Jones, Dmitry Torokhov,
linux-input, platform-driver-x86, LKML
Hi Ilpo,
Quoting Ilpo Järvinen (2025-08-28 18:18:51)
> Hi Anton,
>
> These days I'm the one handling pdx86 patches. I took this into the
> review-ilpo-fixes branch and reinstated Hans' ack.
Thank you, much appreciated.
> My experience is that long delays are nothing unusual when interacting
> with Dimitry so don't get discouraged by that when it comes to the
> rest of v2 content. Once Dimitry has okay'ed the input side change, please
> resubmit the rest.
Sure, I will.
Cheers,
--
Anton Khirnov
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-08-31 9:31 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-14 15:07 [PATCH v2 0/2] platform/x86: asus-wmi: map more keys on ExpertBook B9 Anton Khirnov
2025-07-14 15:07 ` [PATCH v2 1/2] Input: allocate a keycode for Fn+space Anton Khirnov
2025-07-15 12:26 ` Hans de Goede
2025-08-07 7:04 ` Anton Khirnov
2025-07-14 15:07 ` [PATCH v2 2/2] platform/x86: asus-wmi: map more keys on ExpertBook B9 Anton Khirnov
2025-07-15 12:27 ` Hans de Goede
2025-08-27 15:29 ` [PATCH v3] " Anton Khirnov
2025-08-28 16:18 ` Ilpo Järvinen
2025-08-31 9:21 ` Anton Khirnov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).