[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <175249787152.21445.16925102541286211351@lain.khirnov.net>
Date: Mon, 14 Jul 2025 14:57:51 +0200
From: Anton Khirnov <anton@...rnov.net>
To: Corentin Chary <corentin.chary@...il.com>,
"Luke D. Jones" <luke@...nes.dev>,
Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
Hans de Goede <hansg@...nel.org>
Cc: platform-driver-x86@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] platform/x86: asus-wmi: map more keys on ExpertBook B9
Hi Hans,
Quoting Hans de Goede (2025-07-14 14:34:04)
> Hi,
>
> On 2-Jul-25 09:02, 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 F14),
> > 0xCB with Fn (mapped to F15)
> > * Fn+f sends 0x9D; it is not documented in the manual, but some web
> > search results mention "asus intelligent performance"; mapped to PROG2
> > * Fn+space sends 0x5B; it is not documented or mentioned anywhere I
> > could find; mapped to PROG3
> >
> > Signed-off-by: Anton Khirnov <anton@...rnov.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 3f8b2a324efd..42d7b435ba63 100644
> > --- a/drivers/platform/x86/asus-nb-wmi.c
> > +++ b/drivers/platform/x86/asus-nb-wmi.c
> > @@ -573,6 +573,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_PROG3 } }, /* Fn+space */
>
> What is this key-combo supposed to do, is there any icon for this on
> the spacebar? What does it do under Windows?
I don't have Windows installed, so I cannot test what any of these keys
do there.
I searched the web for any mentions of this key combination and found
nothing whatsoever, the manual is also silent. But it does generate an
event, so it seemed reasonable to make use of it.
> Based on other laptops I would expect this to maybe need to be
> KEY_KBDILLUMTOGGLE, which toggles the kbd backlight on/off ?
Keyboard backlight is Fn+F7 on this laptop. That said, I'm fine with any
key that is acceptable to you and/or other maintainers.
>
> > { KE_KEY, 0x5C, { KEY_F15 } }, /* Power Gear key */
>
> Why KEY_F15, Why not some other KEY_ ? Generally speaking
> the key-code send should match the intended purpose of
> they key / key-combo. E.g. If the button opens
> the control-panel under Windows use KEY_CONTROLPANEL
Err I'm not doing anything to this one.
> > @@ -609,6 +610,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_PROG2 } }, /* Fn+f */
>
> Same remark as on the other keys. what does this do under Windows ?
As per above, cannot test. But in this case a web search suggests that
(on some other Asus laptop) it switches between performance profiles.
> > @@ -623,6 +625,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_F14 } }, /* Noise cancelling on Expertbook B9 */
>
> KEY_SOUND ?
Can do, but then what about the fn+ version? Ideally they should be
related.
> > + { KE_KEY, 0xCB, { KEY_F15 } }, /* Fn+noise-cancel */
>
> What does Fn + noise-cancel do under Windows ?
As per the manual:
Built-in microphone: Toggles between single presenter conference call
mode or multi presenter conference call mode.
External microphone: Toggles ASUS AI Noise-Canceling.
Thanks for the review,
--
Anton Khirnov
Powered by blists - more mailing lists