Message ID | ZldxNQGXy4zWVPu1@google.com |
---|---|
State | Superseded |
Headers | show |
Series | [v3,1/2] input: Add event code for accessibility key | expand |
On Wed, May 29, 2024 at 01:28:00PM -0500, Aseda Aboagye wrote: > HUTRR94 added support for a new usage titled "System Do Not Disturb" > which toggles a system-wide Do Not Disturb setting. This commit simply > adds a new event code for the usage. > > Signed-off-by: Aseda Aboagye <aaboagye@chromium.org> > --- > Changes from v2: > - Added underscores to make `KEY_DO_NOT_DISTURB`. > > Changes from v1: > - Modified formatting to match existing code, ignoring checkpatch.pl. > > drivers/hid/hid-debug.c | 1 + > drivers/hid/hid-input.c | 8 ++++++++ > include/uapi/linux/input-event-codes.h | 1 + > 3 files changed, 10 insertions(+) > > diff --git a/drivers/hid/hid-debug.c b/drivers/hid/hid-debug.c > index 7749c81b6227..4ccfbd860bbe 100644 > --- a/drivers/hid/hid-debug.c > +++ b/drivers/hid/hid-debug.c > @@ -975,6 +975,7 @@ static const char *keys[KEY_MAX + 1] = { > [KEY_CAMERA_ACCESS_DISABLE] = "CameraAccessDisable", > [KEY_CAMERA_ACCESS_TOGGLE] = "CameraAccessToggle", > [KEY_ACCESSIBILITY] = "Accessibility", > + [KEY_DO_NOT_DISTURB] = "DoNotDisturb", > [KEY_DICTATE] = "Dictate", > [KEY_MICMUTE] = "MicrophoneMute", > [KEY_BRIGHTNESS_MIN] = "BrightnessMin", > diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c > index 1ecc5ad57b56..31feb5e0714f 100644 > --- a/drivers/hid/hid-input.c > +++ b/drivers/hid/hid-input.c > @@ -826,6 +826,14 @@ static void hidinput_configure_usage(struct hid_input *hidinput, struct hid_fiel > break; > } > > + if ((usage->hid & 0xf0) == 0x90) { /* SystemControl*/ > + switch (usage->hid & 0xf) { > + case 0xb: map_key_clear(KEY_DO_NOT_DISTURB); break; > + default: goto ignore; > + } > + break; > + } > + > if ((usage->hid & 0xf0) == 0xa0) { /* SystemControl */ > switch (usage->hid & 0xf) { > case 0x9: map_key_clear(KEY_MICMUTE); break; > diff --git a/include/uapi/linux/input-event-codes.h b/include/uapi/linux/input-event-codes.h > index 7ff6eeef1af0..07038fd9682d 100644 > --- a/include/uapi/linux/input-event-codes.h > +++ b/include/uapi/linux/input-event-codes.h > @@ -618,6 +618,7 @@ > #define KEY_CAMERA_ACCESS_DISABLE 0x24c /* Disables programmatic access to camera devices. (HUTRR72) */ > #define KEY_CAMERA_ACCESS_TOGGLE 0x24d /* Toggles the current state of the camera access control. (HUTRR72) */ > #define KEY_ACCESSIBILITY 0x24e /* Toggles the system bound accessibility UI/command (HUTRR116) */ > +#define KEY_DO_NOT_DISTURB 0x24f /* Toggles the system-wide "Do Not Disturb" control (HUTRR94)*/ Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Feel free to merge through HID tree. Thanks.
> > #define KEY_ACCESSIBILITY 0x24e /* Toggles the system bound accessibility UI/command (HUTRR116) */ > > +#define KEY_DO_NOT_DISTURB 0x24f /* Toggles the system-wide "Do Not Disturb" control (HUTRR94)*/ > > Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> > > Feel free to merge through HID tree. Thank you for the review!
diff --git a/drivers/hid/hid-debug.c b/drivers/hid/hid-debug.c index e7ef1ea107c9..7749c81b6227 100644 --- a/drivers/hid/hid-debug.c +++ b/drivers/hid/hid-debug.c @@ -974,6 +974,7 @@ static const char *keys[KEY_MAX + 1] = { [KEY_CAMERA_ACCESS_ENABLE] = "CameraAccessEnable", [KEY_CAMERA_ACCESS_DISABLE] = "CameraAccessDisable", [KEY_CAMERA_ACCESS_TOGGLE] = "CameraAccessToggle", + [KEY_ACCESSIBILITY] = "Accessibility", [KEY_DICTATE] = "Dictate", [KEY_MICMUTE] = "MicrophoneMute", [KEY_BRIGHTNESS_MIN] = "BrightnessMin", diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c index 851ee86eff32..1ecc5ad57b56 100644 --- a/drivers/hid/hid-input.c +++ b/drivers/hid/hid-input.c @@ -829,6 +829,7 @@ static void hidinput_configure_usage(struct hid_input *hidinput, struct hid_fiel if ((usage->hid & 0xf0) == 0xa0) { /* SystemControl */ switch (usage->hid & 0xf) { case 0x9: map_key_clear(KEY_MICMUTE); break; + case 0xa: map_key_clear(KEY_ACCESSIBILITY); break; default: goto ignore; } break; diff --git a/include/uapi/linux/input-event-codes.h b/include/uapi/linux/input-event-codes.h index 022a520e31fc..7ff6eeef1af0 100644 --- a/include/uapi/linux/input-event-codes.h +++ b/include/uapi/linux/input-event-codes.h @@ -617,6 +617,7 @@ #define KEY_CAMERA_ACCESS_ENABLE 0x24b /* Enables programmatic access to camera devices. (HUTRR72) */ #define KEY_CAMERA_ACCESS_DISABLE 0x24c /* Disables programmatic access to camera devices. (HUTRR72) */ #define KEY_CAMERA_ACCESS_TOGGLE 0x24d /* Toggles the current state of the camera access control. (HUTRR72) */ +#define KEY_ACCESSIBILITY 0x24e /* Toggles the system bound accessibility UI/command (HUTRR116) */ #define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */ #define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */