Message ID | 20241219151910.14235-1-mpearson-lenovo@squebb.ca |
---|---|
State | New |
Headers | show |
Series | Input: atkbd: Fix so copilot key generates F23 keycode | expand |
Hi Dmitry, On Thu, Dec 19, 2024, at 2:17 PM, Dmitry Torokhov wrote: > On Thu, Dec 19, 2024 at 01:40:24PM -0500, Mark Pearson wrote: >> On Thu, Dec 19, 2024, at 1:31 PM, Dmitry Torokhov wrote: >> > On Thu, Dec 19, 2024 at 07:26:19PM +0100, Hans de Goede wrote: >> >> Hi, >> >> >> >> On 19-Dec-24 7:15 PM, Dmitry Torokhov wrote: >> > And mapping to F23 as I said should be done through udev. I doubt they >> > will get all OEMs settle on the same scancode. >> > >> >> I'll see if we can find a way to check on other vendor platforms what scancode is used. >> If it is a common scancode, across multiple vendors, would the patch be acceptable? > > It is currently unmapped by default, so maybe. > > FWIW: > > dtor@dtor-ws:~/kernel/work $ grep KEY_6e /lib/udev/hwdb.d/60-keyboard.hwdb > KEYBOARD_KEY_6e=wlan > KEYBOARD_KEY_6e=left # left on d-pad > KEYBOARD_KEY_6e=search > > That 2nd entry is actually from one of Thinkpad models ;) > I got confirmation from the keyboard team that 0x6e is the scancode from F23, and is common for all PC vendors for Windows. They pointed me at this page as confirmation: https://learn.microsoft.com/en-us/windows/win32/inputdev/about-keyboard-input#scan-codes (F23 is in the table of scan codes) Does that make this patch valid again for consideration, in your opinion? Thanks Mark
On Sun, Dec 22, 2024, at 3:16 PM, Mark Pearson wrote: > Hi Dmitry, > > On Thu, Dec 19, 2024, at 2:17 PM, Dmitry Torokhov wrote: >> On Thu, Dec 19, 2024 at 01:40:24PM -0500, Mark Pearson wrote: >>> On Thu, Dec 19, 2024, at 1:31 PM, Dmitry Torokhov wrote: >>> > On Thu, Dec 19, 2024 at 07:26:19PM +0100, Hans de Goede wrote: >>> >> Hi, >>> >> >>> >> On 19-Dec-24 7:15 PM, Dmitry Torokhov wrote: >>> > And mapping to F23 as I said should be done through udev. I doubt they >>> > will get all OEMs settle on the same scancode. >>> > >>> >>> I'll see if we can find a way to check on other vendor platforms what scancode is used. >>> If it is a common scancode, across multiple vendors, would the patch be acceptable? >> >> It is currently unmapped by default, so maybe. >> >> FWIW: >> >> dtor@dtor-ws:~/kernel/work $ grep KEY_6e /lib/udev/hwdb.d/60-keyboard.hwdb >> KEYBOARD_KEY_6e=wlan >> KEYBOARD_KEY_6e=left # left on d-pad >> KEYBOARD_KEY_6e=search >> >> That 2nd entry is actually from one of Thinkpad models ;) >> > I got confirmation from the keyboard team that 0x6e is the scancode > from F23, and is common for all PC vendors for Windows. > > They pointed me at this page as confirmation: > https://learn.microsoft.com/en-us/windows/win32/inputdev/about-keyboard-input#scan-codes > (F23 is in the table of scan codes) > > Does that make this patch valid again for consideration, in your opinion? > Apologies for the multiple emails, but just wanted to add a note that Canonical kindly tested for me on a Dell and HP platform, and confirmed they are using the same scan code (as expected at this point). This change should benefit all vendors. Thanks Mark
diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c index 5855d4fc6e6a..f7b08b359c9c 100644 --- a/drivers/input/keyboard/atkbd.c +++ b/drivers/input/keyboard/atkbd.c @@ -89,7 +89,7 @@ static const unsigned short atkbd_set2_keycode[ATKBD_KEYMAP_SIZE] = { 0, 46, 45, 32, 18, 5, 4, 95, 0, 57, 47, 33, 20, 19, 6,183, 0, 49, 48, 35, 34, 21, 7,184, 0, 0, 50, 36, 22, 8, 9,185, 0, 51, 37, 23, 24, 11, 10, 0, 0, 52, 53, 38, 39, 25, 12, 0, - 0, 89, 40, 0, 26, 13, 0, 0, 58, 54, 28, 27, 0, 43, 0, 85, + 0, 89, 40, 0, 26, 13, 0,193, 58, 54, 28, 27, 0, 43, 0, 85, 0, 86, 91, 90, 92, 0, 14, 94, 0, 79,124, 75, 71,121, 0, 0, 82, 83, 80, 76, 77, 72, 1, 69, 87, 78, 81, 74, 55, 73, 70, 99,
The copilot key on Lenovo laptops doesn't work as scancode 0x6e, which it generates is not mapped. This change lets scancode 0x6e generate keycode 193 (F23 key) which is the expected value for copilot. Tested on T14s G6 AMD. I've had reports from other users that their ThinkBooks are using the same scancode. Signed-off-by: Mark Pearson <mpearson-lenovo@squebb.ca> --- drivers/input/keyboard/atkbd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)