[prev in list] [next in list] [prev in thread] [next in thread]
List: freedesktop-xorg-devel
Subject: Re: [PATCH xkeyboard-config] Add evdev mappings for KEY_SOUND, KEY_UWB, KEY_WWAN and KEY_RFKILL
From: Hans de Goede <hdegoede () redhat ! com>
Date: 2017-05-15 7:07:39
Message-ID: 0edee8b8-ea59-352e-2f35-fa3c2f5bee27 () redhat ! com
[Download RAW message or body]
Hi,
On 15-05-17 08:50, Bastien Nocera wrote:
> Hey,
>
> Comments inline.
>
> On Mon, 2017-05-15 at 08:36 +0200, Hans de Goede wrote:
>> KEY_SOUND, KEY_WWAN and KEY_RFKILL are used on actual devices and
>> current xproto master defines keysyms for these. Add mappings for
>> these keys.
>>
>> The XF86UWB keysm exists for quite a while now, as does the KEY_SOUND
>
> "keysym has existed"
>
>> evdev code for it, so lets adds a mapping for that too.
>
> "let's add"
Thank you both fixed.
>
>> Note that this replaces the I255 to XF86Hibernate mapping in
>> xkb_symbols "evdev", I don't know where that came from, but it is
>> wrong, I255 was until now not defined in keycodes/evdev and
>> KEY_HIBERNATE is not defined in linux/input-event-codes.h .
>>
>> BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=100970
>> Cc: Bastien Nocera <hadess@hadess.net>
>> Cc: Benjamin Berg <bberg@redhat.com>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
>> ---
>> keycodes/evdev | 2 ++
>> symbols/inet | 7 ++++---
>> 2 files changed, 6 insertions(+), 3 deletions(-)
>>
>> diff --git a/keycodes/evdev b/keycodes/evdev
>> index 624ac68..51a6e26 100644
>> --- a/keycodes/evdev
>> +++ b/keycodes/evdev
>> @@ -281,6 +281,8 @@ default xkb_keycodes "evdev" {
>> <I251> = 251; // #define KEY_BRIGHTNESS_CYCLE 243
>> <I252> = 252; // #define KEY_BRIGHTNESS_ZERO 244
>> <I253> = 253; // #define KEY_DISPLAY_OFF 245
>> + <I254> = 254; // #define KEY_WWAN 246
>> + <I255> = 255; // #define KEY_RFKILL 247
>>
>> // Fake keycodes for virtual keys
>> <LVL3> = 92;
>> diff --git a/symbols/inet b/symbols/inet
>> index 5403e77..1e06aa9 100644
>> --- a/symbols/inet
>> +++ b/symbols/inet
>> @@ -184,7 +184,7 @@ xkb_symbols "evdev" {
>> key <I218> { [ Print ] };
>> // key <I219> { [ ] }; // KEY_HP
>> key <I220> { [ XF86WebCam ] };
>> -// key <I221> { [ ] }; // KEY_SOUND
>> + key <I221> { [ XF86AudioPreset ] };
>
> This is an existing keysym, but what does it correspond to?
From XF86keysym.h :
#define XF86XK_AudioPreset 0x1008FFB6 /* Select equalizer preset, e.g. theatre-mode */
I221 corresponds to KEY_SOUND which gets used in the kernel in
the following ways:
drivers/platform/x86/peaq-wmi.c:
Used for the Dolby button which under windows toggles through theater/game/speach/music mode.
drivers/media/rc/keymaps/rc-kworld-pc150u.c
73: { 0x48, KEY_SOUND}, /* switch theater mode */
drivers/media/rc/keymaps/rc-cec.c
67: { 0x33, KEY_SOUND }, /* CEC Spec: Sound Select */
drivers/media/rc/keymaps/rc-encore-enltv.c
74: { 0x4d, KEY_SOUND }, /* DVD sound */
>
>> // key <I222> { [ ] }; // KEY_QUESTION
>> key <I223> { [ XF86Mail ] };
>> key <I224> { [ XF86Messenger ] }; //
>> KEY_CHAT
>> @@ -210,13 +210,14 @@ xkb_symbols "evdev" {
>> key <I244> { [ XF86Battery ] };
>> key <I245> { [ XF86Bluetooth ] };
>> key <I246> { [ XF86WLAN ] };
>> + key <I247> { [ XF86UWB ] };
>
> Feels weird using up a slot for a key that toggles an obsolete wireless
> protocol...
The keycodes such as I247 are hardcoded to EV_FOO keycodes (with an
offset of 8) and the kernel has had:
#define KEY_UWB 239
For ages, so this is not taking a slot, it is merely adding a
mapping since both the keycode and the keysym have existed for
quite a while now.
>
>> // key <I249> { [ ] }; // KEY_VIDEO_NEXT -- drive
>> next video source
>> // key <I250> { [ ] }; // KEY_VIDEO_PREV -- drive
>> previous video source
>> // key <I251> { [ ] }; // KEY_BRIGHTNESS_CYCLE
>> -- bright up, max++ == min
>> // key <I252> { [ ] }; // KEY_BRIGHTNESS_ZERO
>> -- brightness off
>> // key <I253> { [ ] }; // KEY_DISPLAY_OFF -- turn
>> off display
>> -// key <I254> { [ ] }; // KEY_WIMAX
>> - key <I255> { [ XF86Hibernate ] }; //
>> KEY_HIBERNATE
>> + key <I254> { [ XF86WWAN ] }; //
>> KEY_WWAN
>> + key <I255> { [ XF86RFKill ] }; //
>> KEY_RFKILL
>>
>> key <FK13> { [ XF86Tools ] };
>> key <FK14> { [ XF86Launch5 ] };
>
> Cheers
>
Regards,
Hans
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic