From: Mikhail Novosyolov <m.novosyolov@rosa.ru>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: linux-input@vger.kernel.org, mpearson-lenovo@squebb.ca
Subject: Re: [PATCH] Input: atkbd: add keymap fixup for notebooks using 0x6e as Fn modifier
Date: Tue, 3 Mar 2026 15:42:53 +0300 [thread overview]
Message-ID: <24d0e259-3da5-48a4-aaa3-1d407e72d64d@rosa.ru> (raw)
In-Reply-To: <aZVZokRqcqWMfLbM@google.com>
Hello,
18.02.2026 09:26, Dmitry Torokhov пишет:
> On Wed, Feb 18, 2026 at 07:13:52AM +0300, Mikhail Novosyolov wrote:
>> Commit dc8c9c171ef3 ("Input: atkbd - map F23 key to support default
>> copilot shortcut") mapped scancode 0x6e to KEY_F23 to support the
>> Microsoft Copilot key on Lenovo, HP, and Dell notebooks.
>>
>> However, some notebook platforms (including Positron Proxima 15 and
>> possibly others based on the same OEM design) use scancode 0x6e for the
>> Fn modifier key instead of a dedicated Copilot key. When 0x6e generates
>> KEY_F23 events, the Fn key breaks Fn combinations such as Fn+F5
>> (touchpad toggle).
>>
>> On these platforms, the hardware relies on 0x6e being unmapped to
>> properly handle Fn combinations at the firmware level. When the kernel
>> maps it to KEY_F23, desktop environments intercept this as a global
>> hotkey and toggle the touchpad, but cannot re-enable it because the
>> firmware no longer recognizes Fn as a valid modifier.
>>
>> Userspace solutions (systemd hwdb) cannot fix this because the keycode
>> mapping happens in the atkbd driver before events reach userspace.
>> A kernel-level quirk is required.
> ? That is exactly what udev hwdb is for. Use it. Check 60-keyboard.hwdb
> for examples.
>
> Thanks.
Thanks. Probably I tried hwdb incorrectly.
Now I've tried like
https://github.com/systemd/systemd/commit/d2502f55a2d9dc13f82cc1551a0639843fefb69e
user@rosa-jr4mnj ~ $ cat /etc/udev/hwdb.d/61-positron-fn-fix.hwdb
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn*Positron*:pnG1569*:*
KEYBOARD_KEY_6e=fn
user@rosa-jr4mnj ~ $ sudo systemd-hwdb update
and reboot.
It seems to work correctly.
>
prev parent reply other threads:[~2026-03-03 12:49 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-18 4:13 [PATCH] Input: atkbd: add keymap fixup for notebooks using 0x6e as Fn modifier Mikhail Novosyolov
2026-02-18 6:26 ` Dmitry Torokhov
2026-03-03 12:42 ` Mikhail Novosyolov [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=24d0e259-3da5-48a4-aaa3-1d407e72d64d@rosa.ru \
--to=m.novosyolov@rosa.ru \
--cc=dmitry.torokhov@gmail.com \
--cc=linux-input@vger.kernel.org \
--cc=mpearson-lenovo@squebb.ca \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox