public inbox for linux-input@vger.kernel.org
 help / color / mirror / Atom feed
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.

>

      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