All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hans de Goede <hansg@kernel.org>
To: "Anton Khirnov" <anton@khirnov.net>,
	"Corentin Chary" <corentin.chary@gmail.com>,
	"Luke D. Jones" <luke@ljones.dev>,
	"Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] platform/x86: asus-wmi: map more keys on ExpertBook B9
Date: Mon, 14 Jul 2025 16:10:12 +0200	[thread overview]
Message-ID: <5b333571-7fa8-4581-9f9c-e5546590cbd9@kernel.org> (raw)
In-Reply-To: <175250123216.21445.8438057789120013393@lain.khirnov.net>

Hi,

On 14-Jul-25 15:53, Anton Khirnov wrote:
> Quoting Hans de Goede (2025-07-14 15:27:58)
>>>> 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.
>>
>> Ok, so no KEY_KBDILLUMTOGGLE then if that already is at Fn+F7
>>
>> So lets stick with a KEY_PROG# option here,
>> note asus-nb-wmi already used PROG# for:
>>
>>         { KE_KEY, 0x38, { KEY_PROG3 } }, /* Armoury Crate */
>>         { KE_KEY, 0x86, { KEY_PROG1 } }, /* MyASUS Key */
>>         { KE_KEY, 0xB3, { KEY_PROG4 } }, /* AURA */
>>         { KE_KEY, 0xFA, { KEY_PROG2 } }, /* Lid flip action */
>>         { KE_KEY, 0xBD, { KEY_PROG2 } }, /* Lid flip action on ROG xflow */
>>  
>> I guess you checked that this laptop does not send the 0x83 / "Armoury Crate"
>> events? What about 0x86 / "MyAsus"? If there is no MyAsus key I would prefer
>> to use KEY_PROG1 here.
> 
> That is sent by this laptop as Fn+F12, which is why I started at PROG2.
> 
>> Or you can add a KEY_FN_SPACE to input-event-codes.h grouping it together
>> with the existing Fn + X combos there.
> 
> I wasn't sure how big of a deal adding new KEY_ values is. If that isn't
> too much of a hassle, I can do that and that takes care of Fn+space/f
> consistently.

It shouldn't be too much of a hassle and it indeed would be consistent,
so that sounds good.

> 
>>>>> +	{ 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.
>>
>> Hmm, can use KEY_PROG3 + KEY_PROG4, assuming that the Fn+ spacebar becomes
>> KEY_PROG1 and that KEY_PROG3 / PROG4 are otherwise free ?
>>
>> If not then why start at KEY_F14 and not at KEY_F13, does this laptop's
>> keyboard has a key which sends:
>>
>>
>>         { KE_KEY, 0x71, { KEY_F13 } }, /* General-purpose button */
>>
>> Also are there no conflicts with some of the other entries which send
>> F14 / F15 ?
>>
>> As in no other keys which generate the existing codes mapped
>> to F13 / F14 / F15 ?
> 
> The reason I picked F14 is that the key is physically located two keys
> to the right of F12.

> do either F13/F14, or PROG2/3.

Lets do F13/F14 then.



> 
> For posterity, here's a list of all codes sent by this laptop:
> * {up,down,left,right}: ACPI button/{up,down,left,right} (in addition to normal ATK event)
> * fn-{up,down,left,right}: ATK {PgUp,PgDown,Home,End}
> * copilot key (right of AltGr): ATK shift+win+F17
>   press+release (immediately, releasing the physical key does nothing)
> * fn-lctrl: ATK compose (menu)
> * fn-space: WMI unknown key 0x5b
> * fn-b: ATK pause (scancode 0xc5)
> * fn-p: ATK pause (scancode 0xc6)
> * fn-k: ATK scrolllock
> * fn-f: WMI unknown key 0x9d (supposed to be "asus intelligent performance")
> * fn-a: no event visible anywhere
> * fn-esc: toggles between fn/f keys being primary, sends no visible keys except ACPI event
> * fn-(1-4): WMI scancode 0x61-0x64 (switch video mode);
>   also ACPI video/switchmode event identical for all 4 keys
> * fn-(f1/f2/f3): ATK mute/voldown/volup + ACPI button/{mute,volumedown,volumeup}
> * fn-f4/f5: ACPI brightness down/up
> * fn-f6: WMI scancode 0x6b - F21
> * fn-f7: keyboard backlight, sends no visible keys anywhere except ACPI event
> * fn-f8: ATK win+p
> * fn-f9: ATK win+l
> * fn-f10: no event visible anywhere
> * fn-f11: ATK win+shift+s
> * fn-f12: WMI prog1 (scancode 0x86) + ACPI button/prog1
> * mic-mute: WMI F20 (scancode 0xbe) + ACPI button/f20
> * mic noise key (right of mic-mute): WMI scancode 0xca; fn- sends 0xcb
> * fn-del: insert

Thank you.

Regards,

Hans



      reply	other threads:[~2025-07-14 14:10 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-02  7:02 [PATCH] platform/x86: asus-wmi: map more keys on ExpertBook B9 Anton Khirnov
2025-07-14 12:23 ` Anton Khirnov
2025-07-14 12:34 ` Hans de Goede
2025-07-14 12:57   ` Anton Khirnov
2025-07-14 13:27     ` Hans de Goede
2025-07-14 13:53       ` Anton Khirnov
2025-07-14 14:10         ` Hans de Goede [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5b333571-7fa8-4581-9f9c-e5546590cbd9@kernel.org \
    --to=hansg@kernel.org \
    --cc=anton@khirnov.net \
    --cc=corentin.chary@gmail.com \
    --cc=ilpo.jarvinen@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luke@ljones.dev \
    --cc=platform-driver-x86@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.