drivers/platform/x86/asus-nb-wmi.c | 1 + 1 file changed, 1 insertion(+)
The dedicated "ProArt" key on the ASUS ProArt PX13 (HN7306) emits ASUS
WMI event code 0x8b. This code is absent from the asus-nb-wmi sparse
keymap, so pressing the key only produces a "Unknown key code 0x8b"
message and does nothing in userspace.
On this model the key is exposed solely through the WMI interface and has
no HID scancode, so it can only be handled inside asus-nb-wmi. Map 0x8b
to KEY_PROG3 so the key emits a bindable event, consistent with the
existing KEY_PROG3 mapping used for the ASUS programmable/Armoury key.
Signed-off-by: Nizar Al-Kabbani <nizar.m.kabbani@gmail.com>
---
drivers/platform/x86/asus-nb-wmi.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c
index 8005c08..aeb461b 100644
--- a/drivers/platform/x86/asus-nb-wmi.c
+++ b/drivers/platform/x86/asus-nb-wmi.c
@@ -632,6 +632,7 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
{ KE_KEY, 0x86, { KEY_PROG1 } }, /* MyASUS Key */
{ KE_KEY, 0x88, { KEY_RFKILL } }, /* Radio Toggle Key */
{ KE_KEY, 0x8A, { KEY_PROG1 } }, /* Color enhancement mode */
+ { KE_KEY, 0x8B, { KEY_PROG3 } }, /* ProArt key (PX13/HN7306) */
{ KE_KEY, 0x8C, { KEY_SWITCHVIDEOMODE } }, /* SDSP DVI only */
{ KE_KEY, 0x8D, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + DVI */
{ KE_KEY, 0x8E, { KEY_SWITCHVIDEOMODE } }, /* SDSP CRT + DVI */
--
2.55.0
On Sun, 19 Jul 2026 12:08:43 +0300, Nizar Al-Kabbani wrote:
> The dedicated "ProArt" key on the ASUS ProArt PX13 (HN7306) emits ASUS
> WMI event code 0x8b. This code is absent from the asus-nb-wmi sparse
> keymap, so pressing the key only produces a "Unknown key code 0x8b"
> message and does nothing in userspace.
>
> On this model the key is exposed solely through the WMI interface and has
> no HID scancode, so it can only be handled inside asus-nb-wmi. Map 0x8b
> to KEY_PROG3 so the key emits a bindable event, consistent with the
> existing KEY_PROG3 mapping used for the ASUS programmable/Armoury key.
>
> [...]
Thank you for your contribution, it has been applied to my local
review-ilpo-next branch. Note it will show up in the public
platform-drivers-x86/review-ilpo-next branch only once I've pushed my
local branch there, which might take a while.
FYI [if applicable to your patch], as per Linus' policy change, also
fixes are mostly routed through for-next unless the fix is for a
commit introduced in the most recent cycle or is clearly a regression
fix.
The list of commits applied:
[1/1] platform/x86: asus-nb-wmi: map ProArt key (0x8b) to KEY_PROG3
commit: 6303451189a6d8f304221065c44ccd597e0acbe5
--
i.
On 7/19/26 11:08, Nizar Al-Kabbani wrote:
> The dedicated "ProArt" key on the ASUS ProArt PX13 (HN7306) emits ASUS
> WMI event code 0x8b. This code is absent from the asus-nb-wmi sparse
> keymap, so pressing the key only produces a "Unknown key code 0x8b"
> message and does nothing in userspace.
>
> On this model the key is exposed solely through the WMI interface and has
> no HID scancode, so it can only be handled inside asus-nb-wmi. Map 0x8b
> to KEY_PROG3 so the key emits a bindable event, consistent with the
> existing KEY_PROG3 mapping used for the ASUS programmable/Armoury key.
Reviewed-by: Denis Benato <denis.benato@linux.dev>
> Signed-off-by: Nizar Al-Kabbani <nizar.m.kabbani@gmail.com>
> ---
> drivers/platform/x86/asus-nb-wmi.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c
> index 8005c08..aeb461b 100644
> --- a/drivers/platform/x86/asus-nb-wmi.c
> +++ b/drivers/platform/x86/asus-nb-wmi.c
> @@ -632,6 +632,7 @@ static const struct key_entry asus_nb_wmi_keymap[] = {
> { KE_KEY, 0x86, { KEY_PROG1 } }, /* MyASUS Key */
> { KE_KEY, 0x88, { KEY_RFKILL } }, /* Radio Toggle Key */
> { KE_KEY, 0x8A, { KEY_PROG1 } }, /* Color enhancement mode */
> + { KE_KEY, 0x8B, { KEY_PROG3 } }, /* ProArt key (PX13/HN7306) */
> { KE_KEY, 0x8C, { KEY_SWITCHVIDEOMODE } }, /* SDSP DVI only */
> { KE_KEY, 0x8D, { KEY_SWITCHVIDEOMODE } }, /* SDSP LCD + DVI */
> { KE_KEY, 0x8E, { KEY_SWITCHVIDEOMODE } }, /* SDSP CRT + DVI */
© 2016 - 2026 Red Hat, Inc.