hc
2024-05-11 297b60346df8beafee954a0fd7c2d64f33f3b9bc
kernel/include/uapi/linux/input-event-codes.h
....@@ -1,4 +1,4 @@
1
-/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
1
+/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
22 /*
33 * Input event codes
44 *
....@@ -278,7 +278,8 @@
278278 #define KEY_PAUSECD 201
279279 #define KEY_PROG3 202
280280 #define KEY_PROG4 203
281
-#define KEY_DASHBOARD 204 /* AL Dashboard */
281
+#define KEY_ALL_APPLICATIONS 204 /* AC Desktop Show All Applications */
282
+#define KEY_DASHBOARD KEY_ALL_APPLICATIONS
282283 #define KEY_SUSPEND 205
283284 #define KEY_CLOSE 206 /* AC Close */
284285 #define KEY_PLAY 207
....@@ -439,10 +440,12 @@
439440 #define KEY_TITLE 0x171
440441 #define KEY_SUBTITLE 0x172
441442 #define KEY_ANGLE 0x173
442
-#define KEY_ZOOM 0x174
443
+#define KEY_FULL_SCREEN 0x174 /* AC View Toggle */
444
+#define KEY_ZOOM KEY_FULL_SCREEN
443445 #define KEY_MODE 0x175
444446 #define KEY_KEYBOARD 0x176
445
-#define KEY_SCREEN 0x177
447
+#define KEY_ASPECT_RATIO 0x177 /* HUTRR37: Aspect */
448
+#define KEY_SCREEN KEY_ASPECT_RATIO
446449 #define KEY_PC 0x178 /* Media Select Computer */
447450 #define KEY_TV 0x179 /* Media Select TV */
448451 #define KEY_TV2 0x17a /* Media Select Cable */
....@@ -513,6 +516,9 @@
513516 #define KEY_10CHANNELSUP 0x1b8 /* 10 channels up (10+) */
514517 #define KEY_10CHANNELSDOWN 0x1b9 /* 10 channels down (10-) */
515518 #define KEY_IMAGES 0x1ba /* AL Image Browser */
519
+#define KEY_NOTIFICATION_CENTER 0x1bc /* Show/hide the notification center */
520
+#define KEY_PICKUP_PHONE 0x1bd /* Answer incoming call */
521
+#define KEY_HANGUP_PHONE 0x1be /* Decline incoming call */
516522
517523 #define KEY_DEL_EOL 0x1c0
518524 #define KEY_DEL_EOS 0x1c1
....@@ -540,6 +546,7 @@
540546 #define KEY_FN_F 0x1e2
541547 #define KEY_FN_S 0x1e3
542548 #define KEY_FN_B 0x1e4
549
+#define KEY_FN_RIGHT_SHIFT 0x1e5
543550
544551 #define KEY_BRL_DOT1 0x1f1
545552 #define KEY_BRL_DOT2 0x1f2
....@@ -604,6 +611,9 @@
604611 #define KEY_SCREENSAVER 0x245 /* AL Screen Saver */
605612 #define KEY_VOICECOMMAND 0x246 /* Listening Voice Command */
606613 #define KEY_ASSISTANT 0x247 /* AL Context-aware desktop assistant */
614
+#define KEY_KBD_LAYOUT_NEXT 0x248 /* AC Next Keyboard Layout Select */
615
+#define KEY_EMOJI_PICKER 0x249 /* Show/hide emoji picker (HUTRR101) */
616
+#define KEY_DICTATE 0x24a /* Start or Stop Voice Dictation Session (HUTRR99) */
607617
608618 #define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */
609619 #define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */
....@@ -646,6 +656,86 @@
646656 */
647657 #define KEY_DATA 0x277
648658 #define KEY_ONSCREEN_KEYBOARD 0x278
659
+/* Electronic privacy screen control */
660
+#define KEY_PRIVACY_SCREEN_TOGGLE 0x279
661
+
662
+/* Select an area of screen to be copied */
663
+#define KEY_SELECTIVE_SCREENSHOT 0x27a
664
+
665
+/*
666
+ * Some keyboards have keys which do not have a defined meaning, these keys
667
+ * are intended to be programmed / bound to macros by the user. For most
668
+ * keyboards with these macro-keys the key-sequence to inject, or action to
669
+ * take, is all handled by software on the host side. So from the kernel's
670
+ * point of view these are just normal keys.
671
+ *
672
+ * The KEY_MACRO# codes below are intended for such keys, which may be labeled
673
+ * e.g. G1-G18, or S1 - S30. The KEY_MACRO# codes MUST NOT be used for keys
674
+ * where the marking on the key does indicate a defined meaning / purpose.
675
+ *
676
+ * The KEY_MACRO# codes MUST also NOT be used as fallback for when no existing
677
+ * KEY_FOO define matches the marking / purpose. In this case a new KEY_FOO
678
+ * define MUST be added.
679
+ */
680
+#define KEY_MACRO1 0x290
681
+#define KEY_MACRO2 0x291
682
+#define KEY_MACRO3 0x292
683
+#define KEY_MACRO4 0x293
684
+#define KEY_MACRO5 0x294
685
+#define KEY_MACRO6 0x295
686
+#define KEY_MACRO7 0x296
687
+#define KEY_MACRO8 0x297
688
+#define KEY_MACRO9 0x298
689
+#define KEY_MACRO10 0x299
690
+#define KEY_MACRO11 0x29a
691
+#define KEY_MACRO12 0x29b
692
+#define KEY_MACRO13 0x29c
693
+#define KEY_MACRO14 0x29d
694
+#define KEY_MACRO15 0x29e
695
+#define KEY_MACRO16 0x29f
696
+#define KEY_MACRO17 0x2a0
697
+#define KEY_MACRO18 0x2a1
698
+#define KEY_MACRO19 0x2a2
699
+#define KEY_MACRO20 0x2a3
700
+#define KEY_MACRO21 0x2a4
701
+#define KEY_MACRO22 0x2a5
702
+#define KEY_MACRO23 0x2a6
703
+#define KEY_MACRO24 0x2a7
704
+#define KEY_MACRO25 0x2a8
705
+#define KEY_MACRO26 0x2a9
706
+#define KEY_MACRO27 0x2aa
707
+#define KEY_MACRO28 0x2ab
708
+#define KEY_MACRO29 0x2ac
709
+#define KEY_MACRO30 0x2ad
710
+
711
+/*
712
+ * Some keyboards with the macro-keys described above have some extra keys
713
+ * for controlling the host-side software responsible for the macro handling:
714
+ * -A macro recording start/stop key. Note that not all keyboards which emit
715
+ * KEY_MACRO_RECORD_START will also emit KEY_MACRO_RECORD_STOP if
716
+ * KEY_MACRO_RECORD_STOP is not advertised, then KEY_MACRO_RECORD_START
717
+ * should be interpreted as a recording start/stop toggle;
718
+ * -Keys for switching between different macro (pre)sets, either a key for
719
+ * cycling through the configured presets or keys to directly select a preset.
720
+ */
721
+#define KEY_MACRO_RECORD_START 0x2b0
722
+#define KEY_MACRO_RECORD_STOP 0x2b1
723
+#define KEY_MACRO_PRESET_CYCLE 0x2b2
724
+#define KEY_MACRO_PRESET1 0x2b3
725
+#define KEY_MACRO_PRESET2 0x2b4
726
+#define KEY_MACRO_PRESET3 0x2b5
727
+
728
+/*
729
+ * Some keyboards have a buildin LCD panel where the contents are controlled
730
+ * by the host. Often these have a number of keys directly below the LCD
731
+ * intended for controlling a menu shown on the LCD. These keys often don't
732
+ * have any labeling so we just name them KEY_KBD_LCD_MENU#
733
+ */
734
+#define KEY_KBD_LCD_MENU1 0x2b8
735
+#define KEY_KBD_LCD_MENU2 0x2b9
736
+#define KEY_KBD_LCD_MENU3 0x2ba
737
+#define KEY_KBD_LCD_MENU4 0x2bb
738
+#define KEY_KBD_LCD_MENU5 0x2bc
649739
650740 #define BTN_TRIGGER_HAPPY 0x2c0
651741 #define BTN_TRIGGER_HAPPY1 0x2c0
....@@ -708,6 +798,16 @@
708798 #define REL_DIAL 0x07
709799 #define REL_WHEEL 0x08
710800 #define REL_MISC 0x09
801
+/*
802
+ * 0x0a is reserved and should not be used in input drivers.
803
+ * It was used by HID as REL_MISC+1 and userspace needs to detect if
804
+ * the next REL_* event is correct or is just REL_MISC + n.
805
+ * We define here REL_RESERVED so userspace can rely on it and detect
806
+ * the situation described above.
807
+ */
808
+#define REL_RESERVED 0x0a
809
+#define REL_WHEEL_HI_RES 0x0b
810
+#define REL_HWHEEL_HI_RES 0x0c
711811 #define REL_MAX 0x0f
712812 #define REL_CNT (REL_MAX+1)
713813
....@@ -796,11 +896,7 @@
796896 #define SW_MUTE_DEVICE 0x0e /* set = device disabled */
797897 #define SW_PEN_INSERTED 0x0f /* set = pen inserted */
798898 #define SW_MACHINE_COVER 0x10 /* set = cover closed */
799
-#define SW_HPHL_OVERCURRENT 0x11 /* set = over current on left hph */
800
-#define SW_HPHR_OVERCURRENT 0x12 /* set = over current on right hph */
801
-#define SW_MICROPHONE2_INSERT 0x13 /* set = inserted */
802
-#define SW_UNSUPPORT_INSERT 0x14 /* set = unsupported device inserted */
803
-#define SW_MAX 0x20
899
+#define SW_MAX 0x10
804900 #define SW_CNT (SW_MAX+1)
805901
806902 /*