1c0abf9e6Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ 2c0abf9e6Sopenharmony_ci/* 3c0abf9e6Sopenharmony_ci * Input event codes 4c0abf9e6Sopenharmony_ci * 5c0abf9e6Sopenharmony_ci * *** IMPORTANT *** 6c0abf9e6Sopenharmony_ci * This file is not only included from C-code but also from devicetree source 7c0abf9e6Sopenharmony_ci * files. As such this file MUST only contain comments and defines. 8c0abf9e6Sopenharmony_ci * 9c0abf9e6Sopenharmony_ci * Copyright (c) 1999-2002 Vojtech Pavlik 10c0abf9e6Sopenharmony_ci * Copyright (c) 2015 Hans de Goede <hdegoede@redhat.com> 11c0abf9e6Sopenharmony_ci * 12c0abf9e6Sopenharmony_ci * This program is free software; you can redistribute it and/or modify it 13c0abf9e6Sopenharmony_ci * under the terms of the GNU General Public License version 2 as published by 14c0abf9e6Sopenharmony_ci * the Free Software Foundation. 15c0abf9e6Sopenharmony_ci */ 16c0abf9e6Sopenharmony_ci#ifndef _UAPI_INPUT_EVENT_CODES_H 17c0abf9e6Sopenharmony_ci#define _UAPI_INPUT_EVENT_CODES_H 18c0abf9e6Sopenharmony_ci 19c0abf9e6Sopenharmony_ci/* 20c0abf9e6Sopenharmony_ci * Device properties and quirks 21c0abf9e6Sopenharmony_ci */ 22c0abf9e6Sopenharmony_ci 23c0abf9e6Sopenharmony_ci#define INPUT_PROP_POINTER 0x00 /* needs a pointer */ 24c0abf9e6Sopenharmony_ci#define INPUT_PROP_DIRECT 0x01 /* direct input devices */ 25c0abf9e6Sopenharmony_ci#define INPUT_PROP_BUTTONPAD 0x02 /* has button(s) under pad */ 26c0abf9e6Sopenharmony_ci#define INPUT_PROP_SEMI_MT 0x03 /* touch rectangle only */ 27c0abf9e6Sopenharmony_ci#define INPUT_PROP_TOPBUTTONPAD 0x04 /* softbuttons at top of pad */ 28c0abf9e6Sopenharmony_ci#define INPUT_PROP_POINTING_STICK 0x05 /* is a pointing stick */ 29c0abf9e6Sopenharmony_ci#define INPUT_PROP_ACCELEROMETER 0x06 /* has accelerometer */ 30c0abf9e6Sopenharmony_ci 31c0abf9e6Sopenharmony_ci#define INPUT_PROP_MAX 0x1f 32c0abf9e6Sopenharmony_ci#define INPUT_PROP_CNT (INPUT_PROP_MAX + 1) 33c0abf9e6Sopenharmony_ci 34c0abf9e6Sopenharmony_ci/* 35c0abf9e6Sopenharmony_ci * Event types 36c0abf9e6Sopenharmony_ci */ 37c0abf9e6Sopenharmony_ci 38c0abf9e6Sopenharmony_ci#define EV_SYN 0x00 39c0abf9e6Sopenharmony_ci#define EV_KEY 0x01 40c0abf9e6Sopenharmony_ci#define EV_REL 0x02 41c0abf9e6Sopenharmony_ci#define EV_ABS 0x03 42c0abf9e6Sopenharmony_ci#define EV_MSC 0x04 43c0abf9e6Sopenharmony_ci#define EV_SW 0x05 44c0abf9e6Sopenharmony_ci#define EV_LED 0x11 45c0abf9e6Sopenharmony_ci#define EV_SND 0x12 46c0abf9e6Sopenharmony_ci#define EV_REP 0x14 47c0abf9e6Sopenharmony_ci#define EV_FF 0x15 48c0abf9e6Sopenharmony_ci#define EV_PWR 0x16 49c0abf9e6Sopenharmony_ci#define EV_FF_STATUS 0x17 50c0abf9e6Sopenharmony_ci#define EV_MAX 0x1f 51c0abf9e6Sopenharmony_ci#define EV_CNT (EV_MAX+1) 52c0abf9e6Sopenharmony_ci 53c0abf9e6Sopenharmony_ci/* 54c0abf9e6Sopenharmony_ci * Synchronization events. 55c0abf9e6Sopenharmony_ci */ 56c0abf9e6Sopenharmony_ci 57c0abf9e6Sopenharmony_ci#define SYN_REPORT 0 58c0abf9e6Sopenharmony_ci#define SYN_CONFIG 1 59c0abf9e6Sopenharmony_ci#define SYN_MT_REPORT 2 60c0abf9e6Sopenharmony_ci#define SYN_DROPPED 3 61c0abf9e6Sopenharmony_ci#define SYN_MAX 0xf 62c0abf9e6Sopenharmony_ci#define SYN_CNT (SYN_MAX+1) 63c0abf9e6Sopenharmony_ci 64c0abf9e6Sopenharmony_ci/* 65c0abf9e6Sopenharmony_ci * Keys and buttons 66c0abf9e6Sopenharmony_ci * 67c0abf9e6Sopenharmony_ci * Most of the keys/buttons are modeled after USB HUT 1.12 68c0abf9e6Sopenharmony_ci * (see http://www.usb.org/developers/hidpage). 69c0abf9e6Sopenharmony_ci * Abbreviations in the comments: 70c0abf9e6Sopenharmony_ci * AC - Application Control 71c0abf9e6Sopenharmony_ci * AL - Application Launch Button 72c0abf9e6Sopenharmony_ci * SC - System Control 73c0abf9e6Sopenharmony_ci */ 74c0abf9e6Sopenharmony_ci 75c0abf9e6Sopenharmony_ci#define KEY_RESERVED 0 76c0abf9e6Sopenharmony_ci#define KEY_ESC 1 77c0abf9e6Sopenharmony_ci#define KEY_1 2 78c0abf9e6Sopenharmony_ci#define KEY_2 3 79c0abf9e6Sopenharmony_ci#define KEY_3 4 80c0abf9e6Sopenharmony_ci#define KEY_4 5 81c0abf9e6Sopenharmony_ci#define KEY_5 6 82c0abf9e6Sopenharmony_ci#define KEY_6 7 83c0abf9e6Sopenharmony_ci#define KEY_7 8 84c0abf9e6Sopenharmony_ci#define KEY_8 9 85c0abf9e6Sopenharmony_ci#define KEY_9 10 86c0abf9e6Sopenharmony_ci#define KEY_0 11 87c0abf9e6Sopenharmony_ci#define KEY_MINUS 12 88c0abf9e6Sopenharmony_ci#define KEY_EQUAL 13 89c0abf9e6Sopenharmony_ci#define KEY_BACKSPACE 14 90c0abf9e6Sopenharmony_ci#define KEY_TAB 15 91c0abf9e6Sopenharmony_ci#define KEY_Q 16 92c0abf9e6Sopenharmony_ci#define KEY_W 17 93c0abf9e6Sopenharmony_ci#define KEY_E 18 94c0abf9e6Sopenharmony_ci#define KEY_R 19 95c0abf9e6Sopenharmony_ci#define KEY_T 20 96c0abf9e6Sopenharmony_ci#define KEY_Y 21 97c0abf9e6Sopenharmony_ci#define KEY_U 22 98c0abf9e6Sopenharmony_ci#define KEY_I 23 99c0abf9e6Sopenharmony_ci#define KEY_O 24 100c0abf9e6Sopenharmony_ci#define KEY_P 25 101c0abf9e6Sopenharmony_ci#define KEY_LEFTBRACE 26 102c0abf9e6Sopenharmony_ci#define KEY_RIGHTBRACE 27 103c0abf9e6Sopenharmony_ci#define KEY_ENTER 28 104c0abf9e6Sopenharmony_ci#define KEY_LEFTCTRL 29 105c0abf9e6Sopenharmony_ci#define KEY_A 30 106c0abf9e6Sopenharmony_ci#define KEY_S 31 107c0abf9e6Sopenharmony_ci#define KEY_D 32 108c0abf9e6Sopenharmony_ci#define KEY_F 33 109c0abf9e6Sopenharmony_ci#define KEY_G 34 110c0abf9e6Sopenharmony_ci#define KEY_H 35 111c0abf9e6Sopenharmony_ci#define KEY_J 36 112c0abf9e6Sopenharmony_ci#define KEY_K 37 113c0abf9e6Sopenharmony_ci#define KEY_L 38 114c0abf9e6Sopenharmony_ci#define KEY_SEMICOLON 39 115c0abf9e6Sopenharmony_ci#define KEY_APOSTROPHE 40 116c0abf9e6Sopenharmony_ci#define KEY_GRAVE 41 117c0abf9e6Sopenharmony_ci#define KEY_LEFTSHIFT 42 118c0abf9e6Sopenharmony_ci#define KEY_BACKSLASH 43 119c0abf9e6Sopenharmony_ci#define KEY_Z 44 120c0abf9e6Sopenharmony_ci#define KEY_X 45 121c0abf9e6Sopenharmony_ci#define KEY_C 46 122c0abf9e6Sopenharmony_ci#define KEY_V 47 123c0abf9e6Sopenharmony_ci#define KEY_B 48 124c0abf9e6Sopenharmony_ci#define KEY_N 49 125c0abf9e6Sopenharmony_ci#define KEY_M 50 126c0abf9e6Sopenharmony_ci#define KEY_COMMA 51 127c0abf9e6Sopenharmony_ci#define KEY_DOT 52 128c0abf9e6Sopenharmony_ci#define KEY_SLASH 53 129c0abf9e6Sopenharmony_ci#define KEY_RIGHTSHIFT 54 130c0abf9e6Sopenharmony_ci#define KEY_KPASTERISK 55 131c0abf9e6Sopenharmony_ci#define KEY_LEFTALT 56 132c0abf9e6Sopenharmony_ci#define KEY_SPACE 57 133c0abf9e6Sopenharmony_ci#define KEY_CAPSLOCK 58 134c0abf9e6Sopenharmony_ci#define KEY_F1 59 135c0abf9e6Sopenharmony_ci#define KEY_F2 60 136c0abf9e6Sopenharmony_ci#define KEY_F3 61 137c0abf9e6Sopenharmony_ci#define KEY_F4 62 138c0abf9e6Sopenharmony_ci#define KEY_F5 63 139c0abf9e6Sopenharmony_ci#define KEY_F6 64 140c0abf9e6Sopenharmony_ci#define KEY_F7 65 141c0abf9e6Sopenharmony_ci#define KEY_F8 66 142c0abf9e6Sopenharmony_ci#define KEY_F9 67 143c0abf9e6Sopenharmony_ci#define KEY_F10 68 144c0abf9e6Sopenharmony_ci#define KEY_NUMLOCK 69 145c0abf9e6Sopenharmony_ci#define KEY_SCROLLLOCK 70 146c0abf9e6Sopenharmony_ci#define KEY_KP7 71 147c0abf9e6Sopenharmony_ci#define KEY_KP8 72 148c0abf9e6Sopenharmony_ci#define KEY_KP9 73 149c0abf9e6Sopenharmony_ci#define KEY_KPMINUS 74 150c0abf9e6Sopenharmony_ci#define KEY_KP4 75 151c0abf9e6Sopenharmony_ci#define KEY_KP5 76 152c0abf9e6Sopenharmony_ci#define KEY_KP6 77 153c0abf9e6Sopenharmony_ci#define KEY_KPPLUS 78 154c0abf9e6Sopenharmony_ci#define KEY_KP1 79 155c0abf9e6Sopenharmony_ci#define KEY_KP2 80 156c0abf9e6Sopenharmony_ci#define KEY_KP3 81 157c0abf9e6Sopenharmony_ci#define KEY_KP0 82 158c0abf9e6Sopenharmony_ci#define KEY_KPDOT 83 159c0abf9e6Sopenharmony_ci 160c0abf9e6Sopenharmony_ci#define KEY_ZENKAKUHANKAKU 85 161c0abf9e6Sopenharmony_ci#define KEY_102ND 86 162c0abf9e6Sopenharmony_ci#define KEY_F11 87 163c0abf9e6Sopenharmony_ci#define KEY_F12 88 164c0abf9e6Sopenharmony_ci#define KEY_RO 89 165c0abf9e6Sopenharmony_ci#define KEY_KATAKANA 90 166c0abf9e6Sopenharmony_ci#define KEY_HIRAGANA 91 167c0abf9e6Sopenharmony_ci#define KEY_HENKAN 92 168c0abf9e6Sopenharmony_ci#define KEY_KATAKANAHIRAGANA 93 169c0abf9e6Sopenharmony_ci#define KEY_MUHENKAN 94 170c0abf9e6Sopenharmony_ci#define KEY_KPJPCOMMA 95 171c0abf9e6Sopenharmony_ci#define KEY_KPENTER 96 172c0abf9e6Sopenharmony_ci#define KEY_RIGHTCTRL 97 173c0abf9e6Sopenharmony_ci#define KEY_KPSLASH 98 174c0abf9e6Sopenharmony_ci#define KEY_SYSRQ 99 175c0abf9e6Sopenharmony_ci#define KEY_RIGHTALT 100 176c0abf9e6Sopenharmony_ci#define KEY_LINEFEED 101 177c0abf9e6Sopenharmony_ci#define KEY_HOME 102 178c0abf9e6Sopenharmony_ci#define KEY_UP 103 179c0abf9e6Sopenharmony_ci#define KEY_PAGEUP 104 180c0abf9e6Sopenharmony_ci#define KEY_LEFT 105 181c0abf9e6Sopenharmony_ci#define KEY_RIGHT 106 182c0abf9e6Sopenharmony_ci#define KEY_END 107 183c0abf9e6Sopenharmony_ci#define KEY_DOWN 108 184c0abf9e6Sopenharmony_ci#define KEY_PAGEDOWN 109 185c0abf9e6Sopenharmony_ci#define KEY_INSERT 110 186c0abf9e6Sopenharmony_ci#define KEY_DELETE 111 187c0abf9e6Sopenharmony_ci#define KEY_MACRO 112 188c0abf9e6Sopenharmony_ci#define KEY_MUTE 113 189c0abf9e6Sopenharmony_ci#define KEY_VOLUMEDOWN 114 190c0abf9e6Sopenharmony_ci#define KEY_VOLUMEUP 115 191c0abf9e6Sopenharmony_ci#define KEY_POWER 116 /* SC System Power Down */ 192c0abf9e6Sopenharmony_ci#define KEY_KPEQUAL 117 193c0abf9e6Sopenharmony_ci#define KEY_KPPLUSMINUS 118 194c0abf9e6Sopenharmony_ci#define KEY_PAUSE 119 195c0abf9e6Sopenharmony_ci#define KEY_SCALE 120 /* AL Compiz Scale (Expose) */ 196c0abf9e6Sopenharmony_ci 197c0abf9e6Sopenharmony_ci#define KEY_KPCOMMA 121 198c0abf9e6Sopenharmony_ci#define KEY_HANGEUL 122 199c0abf9e6Sopenharmony_ci#define KEY_HANGUEL KEY_HANGEUL 200c0abf9e6Sopenharmony_ci#define KEY_HANJA 123 201c0abf9e6Sopenharmony_ci#define KEY_YEN 124 202c0abf9e6Sopenharmony_ci#define KEY_LEFTMETA 125 203c0abf9e6Sopenharmony_ci#define KEY_RIGHTMETA 126 204c0abf9e6Sopenharmony_ci#define KEY_COMPOSE 127 205c0abf9e6Sopenharmony_ci 206c0abf9e6Sopenharmony_ci#define KEY_STOP 128 /* AC Stop */ 207c0abf9e6Sopenharmony_ci#define KEY_AGAIN 129 208c0abf9e6Sopenharmony_ci#define KEY_PROPS 130 /* AC Properties */ 209c0abf9e6Sopenharmony_ci#define KEY_UNDO 131 /* AC Undo */ 210c0abf9e6Sopenharmony_ci#define KEY_FRONT 132 211c0abf9e6Sopenharmony_ci#define KEY_COPY 133 /* AC Copy */ 212c0abf9e6Sopenharmony_ci#define KEY_OPEN 134 /* AC Open */ 213c0abf9e6Sopenharmony_ci#define KEY_PASTE 135 /* AC Paste */ 214c0abf9e6Sopenharmony_ci#define KEY_FIND 136 /* AC Search */ 215c0abf9e6Sopenharmony_ci#define KEY_CUT 137 /* AC Cut */ 216c0abf9e6Sopenharmony_ci#define KEY_HELP 138 /* AL Integrated Help Center */ 217c0abf9e6Sopenharmony_ci#define KEY_MENU 139 /* Menu (show menu) */ 218c0abf9e6Sopenharmony_ci#define KEY_CALC 140 /* AL Calculator */ 219c0abf9e6Sopenharmony_ci#define KEY_SETUP 141 220c0abf9e6Sopenharmony_ci#define KEY_SLEEP 142 /* SC System Sleep */ 221c0abf9e6Sopenharmony_ci#define KEY_WAKEUP 143 /* System Wake Up */ 222c0abf9e6Sopenharmony_ci#define KEY_FILE 144 /* AL Local Machine Browser */ 223c0abf9e6Sopenharmony_ci#define KEY_SENDFILE 145 224c0abf9e6Sopenharmony_ci#define KEY_DELETEFILE 146 225c0abf9e6Sopenharmony_ci#define KEY_XFER 147 226c0abf9e6Sopenharmony_ci#define KEY_PROG1 148 227c0abf9e6Sopenharmony_ci#define KEY_PROG2 149 228c0abf9e6Sopenharmony_ci#define KEY_WWW 150 /* AL Internet Browser */ 229c0abf9e6Sopenharmony_ci#define KEY_MSDOS 151 230c0abf9e6Sopenharmony_ci#define KEY_COFFEE 152 /* AL Terminal Lock/Screensaver */ 231c0abf9e6Sopenharmony_ci#define KEY_SCREENLOCK KEY_COFFEE 232c0abf9e6Sopenharmony_ci#define KEY_ROTATE_DISPLAY 153 /* Display orientation for e.g. tablets */ 233c0abf9e6Sopenharmony_ci#define KEY_DIRECTION KEY_ROTATE_DISPLAY 234c0abf9e6Sopenharmony_ci#define KEY_CYCLEWINDOWS 154 235c0abf9e6Sopenharmony_ci#define KEY_MAIL 155 236c0abf9e6Sopenharmony_ci#define KEY_BOOKMARKS 156 /* AC Bookmarks */ 237c0abf9e6Sopenharmony_ci#define KEY_COMPUTER 157 238c0abf9e6Sopenharmony_ci#define KEY_BACK 158 /* AC Back */ 239c0abf9e6Sopenharmony_ci#define KEY_FORWARD 159 /* AC Forward */ 240c0abf9e6Sopenharmony_ci#define KEY_CLOSECD 160 241c0abf9e6Sopenharmony_ci#define KEY_EJECTCD 161 242c0abf9e6Sopenharmony_ci#define KEY_EJECTCLOSECD 162 243c0abf9e6Sopenharmony_ci#define KEY_NEXTSONG 163 244c0abf9e6Sopenharmony_ci#define KEY_PLAYPAUSE 164 245c0abf9e6Sopenharmony_ci#define KEY_PREVIOUSSONG 165 246c0abf9e6Sopenharmony_ci#define KEY_STOPCD 166 247c0abf9e6Sopenharmony_ci#define KEY_RECORD 167 248c0abf9e6Sopenharmony_ci#define KEY_REWIND 168 249c0abf9e6Sopenharmony_ci#define KEY_PHONE 169 /* Media Select Telephone */ 250c0abf9e6Sopenharmony_ci#define KEY_ISO 170 251c0abf9e6Sopenharmony_ci#define KEY_CONFIG 171 /* AL Consumer Control Configuration */ 252c0abf9e6Sopenharmony_ci#define KEY_HOMEPAGE 172 /* AC Home */ 253c0abf9e6Sopenharmony_ci#define KEY_REFRESH 173 /* AC Refresh */ 254c0abf9e6Sopenharmony_ci#define KEY_EXIT 174 /* AC Exit */ 255c0abf9e6Sopenharmony_ci#define KEY_MOVE 175 256c0abf9e6Sopenharmony_ci#define KEY_EDIT 176 257c0abf9e6Sopenharmony_ci#define KEY_SCROLLUP 177 258c0abf9e6Sopenharmony_ci#define KEY_SCROLLDOWN 178 259c0abf9e6Sopenharmony_ci#define KEY_KPLEFTPAREN 179 260c0abf9e6Sopenharmony_ci#define KEY_KPRIGHTPAREN 180 261c0abf9e6Sopenharmony_ci#define KEY_NEW 181 /* AC New */ 262c0abf9e6Sopenharmony_ci#define KEY_REDO 182 /* AC Redo/Repeat */ 263c0abf9e6Sopenharmony_ci 264c0abf9e6Sopenharmony_ci#define KEY_F13 183 265c0abf9e6Sopenharmony_ci#define KEY_F14 184 266c0abf9e6Sopenharmony_ci#define KEY_F15 185 267c0abf9e6Sopenharmony_ci#define KEY_F16 186 268c0abf9e6Sopenharmony_ci#define KEY_F17 187 269c0abf9e6Sopenharmony_ci#define KEY_F18 188 270c0abf9e6Sopenharmony_ci#define KEY_F19 189 271c0abf9e6Sopenharmony_ci#define KEY_F20 190 272c0abf9e6Sopenharmony_ci#define KEY_F21 191 273c0abf9e6Sopenharmony_ci#define KEY_F22 192 274c0abf9e6Sopenharmony_ci#define KEY_F23 193 275c0abf9e6Sopenharmony_ci#define KEY_F24 194 276c0abf9e6Sopenharmony_ci 277c0abf9e6Sopenharmony_ci#define KEY_PLAYCD 200 278c0abf9e6Sopenharmony_ci#define KEY_PAUSECD 201 279c0abf9e6Sopenharmony_ci#define KEY_PROG3 202 280c0abf9e6Sopenharmony_ci#define KEY_PROG4 203 281c0abf9e6Sopenharmony_ci#define KEY_ALL_APPLICATIONS 204 /* AC Desktop Show All Applications */ 282c0abf9e6Sopenharmony_ci#define KEY_DASHBOARD KEY_ALL_APPLICATIONS 283c0abf9e6Sopenharmony_ci#define KEY_SUSPEND 205 284c0abf9e6Sopenharmony_ci#define KEY_CLOSE 206 /* AC Close */ 285c0abf9e6Sopenharmony_ci#define KEY_PLAY 207 286c0abf9e6Sopenharmony_ci#define KEY_FASTFORWARD 208 287c0abf9e6Sopenharmony_ci#define KEY_BASSBOOST 209 288c0abf9e6Sopenharmony_ci#define KEY_PRINT 210 /* AC Print */ 289c0abf9e6Sopenharmony_ci#define KEY_HP 211 290c0abf9e6Sopenharmony_ci#define KEY_CAMERA 212 291c0abf9e6Sopenharmony_ci#define KEY_SOUND 213 292c0abf9e6Sopenharmony_ci#define KEY_QUESTION 214 293c0abf9e6Sopenharmony_ci#define KEY_EMAIL 215 294c0abf9e6Sopenharmony_ci#define KEY_CHAT 216 295c0abf9e6Sopenharmony_ci#define KEY_SEARCH 217 296c0abf9e6Sopenharmony_ci#define KEY_CONNECT 218 297c0abf9e6Sopenharmony_ci#define KEY_FINANCE 219 /* AL Checkbook/Finance */ 298c0abf9e6Sopenharmony_ci#define KEY_SPORT 220 299c0abf9e6Sopenharmony_ci#define KEY_SHOP 221 300c0abf9e6Sopenharmony_ci#define KEY_ALTERASE 222 301c0abf9e6Sopenharmony_ci#define KEY_CANCEL 223 /* AC Cancel */ 302c0abf9e6Sopenharmony_ci#define KEY_BRIGHTNESSDOWN 224 303c0abf9e6Sopenharmony_ci#define KEY_BRIGHTNESSUP 225 304c0abf9e6Sopenharmony_ci#define KEY_MEDIA 226 305c0abf9e6Sopenharmony_ci 306c0abf9e6Sopenharmony_ci#define KEY_SWITCHVIDEOMODE 227 /* Cycle between available video 307c0abf9e6Sopenharmony_ci outputs (Monitor/LCD/TV-out/etc) */ 308c0abf9e6Sopenharmony_ci#define KEY_KBDILLUMTOGGLE 228 309c0abf9e6Sopenharmony_ci#define KEY_KBDILLUMDOWN 229 310c0abf9e6Sopenharmony_ci#define KEY_KBDILLUMUP 230 311c0abf9e6Sopenharmony_ci 312c0abf9e6Sopenharmony_ci#define KEY_SEND 231 /* AC Send */ 313c0abf9e6Sopenharmony_ci#define KEY_REPLY 232 /* AC Reply */ 314c0abf9e6Sopenharmony_ci#define KEY_FORWARDMAIL 233 /* AC Forward Msg */ 315c0abf9e6Sopenharmony_ci#define KEY_SAVE 234 /* AC Save */ 316c0abf9e6Sopenharmony_ci#define KEY_DOCUMENTS 235 317c0abf9e6Sopenharmony_ci 318c0abf9e6Sopenharmony_ci#define KEY_BATTERY 236 319c0abf9e6Sopenharmony_ci 320c0abf9e6Sopenharmony_ci#define KEY_BLUETOOTH 237 321c0abf9e6Sopenharmony_ci#define KEY_WLAN 238 322c0abf9e6Sopenharmony_ci#define KEY_UWB 239 323c0abf9e6Sopenharmony_ci 324c0abf9e6Sopenharmony_ci#define KEY_UNKNOWN 240 325c0abf9e6Sopenharmony_ci 326c0abf9e6Sopenharmony_ci#define KEY_VIDEO_NEXT 241 /* drive next video source */ 327c0abf9e6Sopenharmony_ci#define KEY_VIDEO_PREV 242 /* drive previous video source */ 328c0abf9e6Sopenharmony_ci#define KEY_BRIGHTNESS_CYCLE 243 /* brightness up, after max is min */ 329c0abf9e6Sopenharmony_ci#define KEY_BRIGHTNESS_AUTO 244 /* Set Auto Brightness: manual 330c0abf9e6Sopenharmony_ci brightness control is off, 331c0abf9e6Sopenharmony_ci rely on ambient */ 332c0abf9e6Sopenharmony_ci#define KEY_BRIGHTNESS_ZERO KEY_BRIGHTNESS_AUTO 333c0abf9e6Sopenharmony_ci#define KEY_DISPLAY_OFF 245 /* display device to off state */ 334c0abf9e6Sopenharmony_ci 335c0abf9e6Sopenharmony_ci#define KEY_WWAN 246 /* Wireless WAN (LTE, UMTS, GSM, etc.) */ 336c0abf9e6Sopenharmony_ci#define KEY_WIMAX KEY_WWAN 337c0abf9e6Sopenharmony_ci#define KEY_RFKILL 247 /* Key that controls all radios */ 338c0abf9e6Sopenharmony_ci 339c0abf9e6Sopenharmony_ci#define KEY_MICMUTE 248 /* Mute / unmute the microphone */ 340c0abf9e6Sopenharmony_ci 341c0abf9e6Sopenharmony_ci/* Code 255 is reserved for special needs of AT keyboard driver */ 342c0abf9e6Sopenharmony_ci 343c0abf9e6Sopenharmony_ci#define BTN_MISC 0x100 344c0abf9e6Sopenharmony_ci#define BTN_0 0x100 345c0abf9e6Sopenharmony_ci#define BTN_1 0x101 346c0abf9e6Sopenharmony_ci#define BTN_2 0x102 347c0abf9e6Sopenharmony_ci#define BTN_3 0x103 348c0abf9e6Sopenharmony_ci#define BTN_4 0x104 349c0abf9e6Sopenharmony_ci#define BTN_5 0x105 350c0abf9e6Sopenharmony_ci#define BTN_6 0x106 351c0abf9e6Sopenharmony_ci#define BTN_7 0x107 352c0abf9e6Sopenharmony_ci#define BTN_8 0x108 353c0abf9e6Sopenharmony_ci#define BTN_9 0x109 354c0abf9e6Sopenharmony_ci 355c0abf9e6Sopenharmony_ci#define BTN_MOUSE 0x110 356c0abf9e6Sopenharmony_ci#define BTN_LEFT 0x110 357c0abf9e6Sopenharmony_ci#define BTN_RIGHT 0x111 358c0abf9e6Sopenharmony_ci#define BTN_MIDDLE 0x112 359c0abf9e6Sopenharmony_ci#define BTN_SIDE 0x113 360c0abf9e6Sopenharmony_ci#define BTN_EXTRA 0x114 361c0abf9e6Sopenharmony_ci#define BTN_FORWARD 0x115 362c0abf9e6Sopenharmony_ci#define BTN_BACK 0x116 363c0abf9e6Sopenharmony_ci#define BTN_TASK 0x117 364c0abf9e6Sopenharmony_ci 365c0abf9e6Sopenharmony_ci#define BTN_JOYSTICK 0x120 366c0abf9e6Sopenharmony_ci#define BTN_TRIGGER 0x120 367c0abf9e6Sopenharmony_ci#define BTN_THUMB 0x121 368c0abf9e6Sopenharmony_ci#define BTN_THUMB2 0x122 369c0abf9e6Sopenharmony_ci#define BTN_TOP 0x123 370c0abf9e6Sopenharmony_ci#define BTN_TOP2 0x124 371c0abf9e6Sopenharmony_ci#define BTN_PINKIE 0x125 372c0abf9e6Sopenharmony_ci#define BTN_BASE 0x126 373c0abf9e6Sopenharmony_ci#define BTN_BASE2 0x127 374c0abf9e6Sopenharmony_ci#define BTN_BASE3 0x128 375c0abf9e6Sopenharmony_ci#define BTN_BASE4 0x129 376c0abf9e6Sopenharmony_ci#define BTN_BASE5 0x12a 377c0abf9e6Sopenharmony_ci#define BTN_BASE6 0x12b 378c0abf9e6Sopenharmony_ci#define BTN_DEAD 0x12f 379c0abf9e6Sopenharmony_ci 380c0abf9e6Sopenharmony_ci#define BTN_GAMEPAD 0x130 381c0abf9e6Sopenharmony_ci#define BTN_SOUTH 0x130 382c0abf9e6Sopenharmony_ci#define BTN_A BTN_SOUTH 383c0abf9e6Sopenharmony_ci#define BTN_EAST 0x131 384c0abf9e6Sopenharmony_ci#define BTN_B BTN_EAST 385c0abf9e6Sopenharmony_ci#define BTN_C 0x132 386c0abf9e6Sopenharmony_ci#define BTN_NORTH 0x133 387c0abf9e6Sopenharmony_ci#define BTN_X BTN_NORTH 388c0abf9e6Sopenharmony_ci#define BTN_WEST 0x134 389c0abf9e6Sopenharmony_ci#define BTN_Y BTN_WEST 390c0abf9e6Sopenharmony_ci#define BTN_Z 0x135 391c0abf9e6Sopenharmony_ci#define BTN_TL 0x136 392c0abf9e6Sopenharmony_ci#define BTN_TR 0x137 393c0abf9e6Sopenharmony_ci#define BTN_TL2 0x138 394c0abf9e6Sopenharmony_ci#define BTN_TR2 0x139 395c0abf9e6Sopenharmony_ci#define BTN_SELECT 0x13a 396c0abf9e6Sopenharmony_ci#define BTN_START 0x13b 397c0abf9e6Sopenharmony_ci#define BTN_MODE 0x13c 398c0abf9e6Sopenharmony_ci#define BTN_THUMBL 0x13d 399c0abf9e6Sopenharmony_ci#define BTN_THUMBR 0x13e 400c0abf9e6Sopenharmony_ci 401c0abf9e6Sopenharmony_ci#define BTN_DIGI 0x140 402c0abf9e6Sopenharmony_ci#define BTN_TOOL_PEN 0x140 403c0abf9e6Sopenharmony_ci#define BTN_TOOL_RUBBER 0x141 404c0abf9e6Sopenharmony_ci#define BTN_TOOL_BRUSH 0x142 405c0abf9e6Sopenharmony_ci#define BTN_TOOL_PENCIL 0x143 406c0abf9e6Sopenharmony_ci#define BTN_TOOL_AIRBRUSH 0x144 407c0abf9e6Sopenharmony_ci#define BTN_TOOL_FINGER 0x145 408c0abf9e6Sopenharmony_ci#define BTN_TOOL_MOUSE 0x146 409c0abf9e6Sopenharmony_ci#define BTN_TOOL_LENS 0x147 410c0abf9e6Sopenharmony_ci#define BTN_TOOL_QUINTTAP 0x148 /* Five fingers on trackpad */ 411c0abf9e6Sopenharmony_ci#define BTN_STYLUS3 0x149 412c0abf9e6Sopenharmony_ci#define BTN_TOUCH 0x14a 413c0abf9e6Sopenharmony_ci#define BTN_STYLUS 0x14b 414c0abf9e6Sopenharmony_ci#define BTN_STYLUS2 0x14c 415c0abf9e6Sopenharmony_ci#define BTN_TOOL_DOUBLETAP 0x14d 416c0abf9e6Sopenharmony_ci#define BTN_TOOL_TRIPLETAP 0x14e 417c0abf9e6Sopenharmony_ci#define BTN_TOOL_QUADTAP 0x14f /* Four fingers on trackpad */ 418c0abf9e6Sopenharmony_ci 419c0abf9e6Sopenharmony_ci#define BTN_WHEEL 0x150 420c0abf9e6Sopenharmony_ci#define BTN_GEAR_DOWN 0x150 421c0abf9e6Sopenharmony_ci#define BTN_GEAR_UP 0x151 422c0abf9e6Sopenharmony_ci 423c0abf9e6Sopenharmony_ci#define KEY_OK 0x160 424c0abf9e6Sopenharmony_ci#define KEY_SELECT 0x161 425c0abf9e6Sopenharmony_ci#define KEY_GOTO 0x162 426c0abf9e6Sopenharmony_ci#define KEY_CLEAR 0x163 427c0abf9e6Sopenharmony_ci#define KEY_POWER2 0x164 428c0abf9e6Sopenharmony_ci#define KEY_OPTION 0x165 429c0abf9e6Sopenharmony_ci#define KEY_INFO 0x166 /* AL OEM Features/Tips/Tutorial */ 430c0abf9e6Sopenharmony_ci#define KEY_TIME 0x167 431c0abf9e6Sopenharmony_ci#define KEY_VENDOR 0x168 432c0abf9e6Sopenharmony_ci#define KEY_ARCHIVE 0x169 433c0abf9e6Sopenharmony_ci#define KEY_PROGRAM 0x16a /* Media Select Program Guide */ 434c0abf9e6Sopenharmony_ci#define KEY_CHANNEL 0x16b 435c0abf9e6Sopenharmony_ci#define KEY_FAVORITES 0x16c 436c0abf9e6Sopenharmony_ci#define KEY_EPG 0x16d 437c0abf9e6Sopenharmony_ci#define KEY_PVR 0x16e /* Media Select Home */ 438c0abf9e6Sopenharmony_ci#define KEY_MHP 0x16f 439c0abf9e6Sopenharmony_ci#define KEY_LANGUAGE 0x170 440c0abf9e6Sopenharmony_ci#define KEY_TITLE 0x171 441c0abf9e6Sopenharmony_ci#define KEY_SUBTITLE 0x172 442c0abf9e6Sopenharmony_ci#define KEY_ANGLE 0x173 443c0abf9e6Sopenharmony_ci#define KEY_FULL_SCREEN 0x174 /* AC View Toggle */ 444c0abf9e6Sopenharmony_ci#define KEY_ZOOM KEY_FULL_SCREEN 445c0abf9e6Sopenharmony_ci#define KEY_MODE 0x175 446c0abf9e6Sopenharmony_ci#define KEY_KEYBOARD 0x176 447c0abf9e6Sopenharmony_ci#define KEY_ASPECT_RATIO 0x177 /* HUTRR37: Aspect */ 448c0abf9e6Sopenharmony_ci#define KEY_SCREEN KEY_ASPECT_RATIO 449c0abf9e6Sopenharmony_ci#define KEY_PC 0x178 /* Media Select Computer */ 450c0abf9e6Sopenharmony_ci#define KEY_TV 0x179 /* Media Select TV */ 451c0abf9e6Sopenharmony_ci#define KEY_TV2 0x17a /* Media Select Cable */ 452c0abf9e6Sopenharmony_ci#define KEY_VCR 0x17b /* Media Select VCR */ 453c0abf9e6Sopenharmony_ci#define KEY_VCR2 0x17c /* VCR Plus */ 454c0abf9e6Sopenharmony_ci#define KEY_SAT 0x17d /* Media Select Satellite */ 455c0abf9e6Sopenharmony_ci#define KEY_SAT2 0x17e 456c0abf9e6Sopenharmony_ci#define KEY_CD 0x17f /* Media Select CD */ 457c0abf9e6Sopenharmony_ci#define KEY_TAPE 0x180 /* Media Select Tape */ 458c0abf9e6Sopenharmony_ci#define KEY_RADIO 0x181 459c0abf9e6Sopenharmony_ci#define KEY_TUNER 0x182 /* Media Select Tuner */ 460c0abf9e6Sopenharmony_ci#define KEY_PLAYER 0x183 461c0abf9e6Sopenharmony_ci#define KEY_TEXT 0x184 462c0abf9e6Sopenharmony_ci#define KEY_DVD 0x185 /* Media Select DVD */ 463c0abf9e6Sopenharmony_ci#define KEY_AUX 0x186 464c0abf9e6Sopenharmony_ci#define KEY_MP3 0x187 465c0abf9e6Sopenharmony_ci#define KEY_AUDIO 0x188 /* AL Audio Browser */ 466c0abf9e6Sopenharmony_ci#define KEY_VIDEO 0x189 /* AL Movie Browser */ 467c0abf9e6Sopenharmony_ci#define KEY_DIRECTORY 0x18a 468c0abf9e6Sopenharmony_ci#define KEY_LIST 0x18b 469c0abf9e6Sopenharmony_ci#define KEY_MEMO 0x18c /* Media Select Messages */ 470c0abf9e6Sopenharmony_ci#define KEY_CALENDAR 0x18d 471c0abf9e6Sopenharmony_ci#define KEY_RED 0x18e 472c0abf9e6Sopenharmony_ci#define KEY_GREEN 0x18f 473c0abf9e6Sopenharmony_ci#define KEY_YELLOW 0x190 474c0abf9e6Sopenharmony_ci#define KEY_BLUE 0x191 475c0abf9e6Sopenharmony_ci#define KEY_CHANNELUP 0x192 /* Channel Increment */ 476c0abf9e6Sopenharmony_ci#define KEY_CHANNELDOWN 0x193 /* Channel Decrement */ 477c0abf9e6Sopenharmony_ci#define KEY_FIRST 0x194 478c0abf9e6Sopenharmony_ci#define KEY_LAST 0x195 /* Recall Last */ 479c0abf9e6Sopenharmony_ci#define KEY_AB 0x196 480c0abf9e6Sopenharmony_ci#define KEY_NEXT 0x197 481c0abf9e6Sopenharmony_ci#define KEY_RESTART 0x198 482c0abf9e6Sopenharmony_ci#define KEY_SLOW 0x199 483c0abf9e6Sopenharmony_ci#define KEY_SHUFFLE 0x19a 484c0abf9e6Sopenharmony_ci#define KEY_BREAK 0x19b 485c0abf9e6Sopenharmony_ci#define KEY_PREVIOUS 0x19c 486c0abf9e6Sopenharmony_ci#define KEY_DIGITS 0x19d 487c0abf9e6Sopenharmony_ci#define KEY_TEEN 0x19e 488c0abf9e6Sopenharmony_ci#define KEY_TWEN 0x19f 489c0abf9e6Sopenharmony_ci#define KEY_VIDEOPHONE 0x1a0 /* Media Select Video Phone */ 490c0abf9e6Sopenharmony_ci#define KEY_GAMES 0x1a1 /* Media Select Games */ 491c0abf9e6Sopenharmony_ci#define KEY_ZOOMIN 0x1a2 /* AC Zoom In */ 492c0abf9e6Sopenharmony_ci#define KEY_ZOOMOUT 0x1a3 /* AC Zoom Out */ 493c0abf9e6Sopenharmony_ci#define KEY_ZOOMRESET 0x1a4 /* AC Zoom */ 494c0abf9e6Sopenharmony_ci#define KEY_WORDPROCESSOR 0x1a5 /* AL Word Processor */ 495c0abf9e6Sopenharmony_ci#define KEY_EDITOR 0x1a6 /* AL Text Editor */ 496c0abf9e6Sopenharmony_ci#define KEY_SPREADSHEET 0x1a7 /* AL Spreadsheet */ 497c0abf9e6Sopenharmony_ci#define KEY_GRAPHICSEDITOR 0x1a8 /* AL Graphics Editor */ 498c0abf9e6Sopenharmony_ci#define KEY_PRESENTATION 0x1a9 /* AL Presentation App */ 499c0abf9e6Sopenharmony_ci#define KEY_DATABASE 0x1aa /* AL Database App */ 500c0abf9e6Sopenharmony_ci#define KEY_NEWS 0x1ab /* AL Newsreader */ 501c0abf9e6Sopenharmony_ci#define KEY_VOICEMAIL 0x1ac /* AL Voicemail */ 502c0abf9e6Sopenharmony_ci#define KEY_ADDRESSBOOK 0x1ad /* AL Contacts/Address Book */ 503c0abf9e6Sopenharmony_ci#define KEY_MESSENGER 0x1ae /* AL Instant Messaging */ 504c0abf9e6Sopenharmony_ci#define KEY_DISPLAYTOGGLE 0x1af /* Turn display (LCD) on and off */ 505c0abf9e6Sopenharmony_ci#define KEY_BRIGHTNESS_TOGGLE KEY_DISPLAYTOGGLE 506c0abf9e6Sopenharmony_ci#define KEY_SPELLCHECK 0x1b0 /* AL Spell Check */ 507c0abf9e6Sopenharmony_ci#define KEY_LOGOFF 0x1b1 /* AL Logoff */ 508c0abf9e6Sopenharmony_ci 509c0abf9e6Sopenharmony_ci#define KEY_DOLLAR 0x1b2 510c0abf9e6Sopenharmony_ci#define KEY_EURO 0x1b3 511c0abf9e6Sopenharmony_ci 512c0abf9e6Sopenharmony_ci#define KEY_FRAMEBACK 0x1b4 /* Consumer - transport controls */ 513c0abf9e6Sopenharmony_ci#define KEY_FRAMEFORWARD 0x1b5 514c0abf9e6Sopenharmony_ci#define KEY_CONTEXT_MENU 0x1b6 /* GenDesc - system context menu */ 515c0abf9e6Sopenharmony_ci#define KEY_MEDIA_REPEAT 0x1b7 /* Consumer - transport control */ 516c0abf9e6Sopenharmony_ci#define KEY_10CHANNELSUP 0x1b8 /* 10 channels up (10+) */ 517c0abf9e6Sopenharmony_ci#define KEY_10CHANNELSDOWN 0x1b9 /* 10 channels down (10-) */ 518c0abf9e6Sopenharmony_ci#define KEY_IMAGES 0x1ba /* AL Image Browser */ 519c0abf9e6Sopenharmony_ci#define KEY_NOTIFICATION_CENTER 0x1bc /* Show/hide the notification center */ 520c0abf9e6Sopenharmony_ci#define KEY_PICKUP_PHONE 0x1bd /* Answer incoming call */ 521c0abf9e6Sopenharmony_ci#define KEY_HANGUP_PHONE 0x1be /* Decline incoming call */ 522c0abf9e6Sopenharmony_ci 523c0abf9e6Sopenharmony_ci#define KEY_DEL_EOL 0x1c0 524c0abf9e6Sopenharmony_ci#define KEY_DEL_EOS 0x1c1 525c0abf9e6Sopenharmony_ci#define KEY_INS_LINE 0x1c2 526c0abf9e6Sopenharmony_ci#define KEY_DEL_LINE 0x1c3 527c0abf9e6Sopenharmony_ci 528c0abf9e6Sopenharmony_ci#define KEY_FN 0x1d0 529c0abf9e6Sopenharmony_ci#define KEY_FN_ESC 0x1d1 530c0abf9e6Sopenharmony_ci#define KEY_FN_F1 0x1d2 531c0abf9e6Sopenharmony_ci#define KEY_FN_F2 0x1d3 532c0abf9e6Sopenharmony_ci#define KEY_FN_F3 0x1d4 533c0abf9e6Sopenharmony_ci#define KEY_FN_F4 0x1d5 534c0abf9e6Sopenharmony_ci#define KEY_FN_F5 0x1d6 535c0abf9e6Sopenharmony_ci#define KEY_FN_F6 0x1d7 536c0abf9e6Sopenharmony_ci#define KEY_FN_F7 0x1d8 537c0abf9e6Sopenharmony_ci#define KEY_FN_F8 0x1d9 538c0abf9e6Sopenharmony_ci#define KEY_FN_F9 0x1da 539c0abf9e6Sopenharmony_ci#define KEY_FN_F10 0x1db 540c0abf9e6Sopenharmony_ci#define KEY_FN_F11 0x1dc 541c0abf9e6Sopenharmony_ci#define KEY_FN_F12 0x1dd 542c0abf9e6Sopenharmony_ci#define KEY_FN_1 0x1de 543c0abf9e6Sopenharmony_ci#define KEY_FN_2 0x1df 544c0abf9e6Sopenharmony_ci#define KEY_FN_D 0x1e0 545c0abf9e6Sopenharmony_ci#define KEY_FN_E 0x1e1 546c0abf9e6Sopenharmony_ci#define KEY_FN_F 0x1e2 547c0abf9e6Sopenharmony_ci#define KEY_FN_S 0x1e3 548c0abf9e6Sopenharmony_ci#define KEY_FN_B 0x1e4 549c0abf9e6Sopenharmony_ci#define KEY_FN_RIGHT_SHIFT 0x1e5 550c0abf9e6Sopenharmony_ci 551c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT1 0x1f1 552c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT2 0x1f2 553c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT3 0x1f3 554c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT4 0x1f4 555c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT5 0x1f5 556c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT6 0x1f6 557c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT7 0x1f7 558c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT8 0x1f8 559c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT9 0x1f9 560c0abf9e6Sopenharmony_ci#define KEY_BRL_DOT10 0x1fa 561c0abf9e6Sopenharmony_ci 562c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_0 0x200 /* used by phones, remote controls, */ 563c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_1 0x201 /* and other keypads */ 564c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_2 0x202 565c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_3 0x203 566c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_4 0x204 567c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_5 0x205 568c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_6 0x206 569c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_7 0x207 570c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_8 0x208 571c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_9 0x209 572c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_STAR 0x20a 573c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_POUND 0x20b 574c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_A 0x20c /* Phone key A - HUT Telephony 0xb9 */ 575c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_B 0x20d 576c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_C 0x20e 577c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_D 0x20f 578c0abf9e6Sopenharmony_ci 579c0abf9e6Sopenharmony_ci#define KEY_CAMERA_FOCUS 0x210 580c0abf9e6Sopenharmony_ci#define KEY_WPS_BUTTON 0x211 /* WiFi Protected Setup key */ 581c0abf9e6Sopenharmony_ci 582c0abf9e6Sopenharmony_ci#define KEY_TOUCHPAD_TOGGLE 0x212 /* Request switch touchpad on or off */ 583c0abf9e6Sopenharmony_ci#define KEY_TOUCHPAD_ON 0x213 584c0abf9e6Sopenharmony_ci#define KEY_TOUCHPAD_OFF 0x214 585c0abf9e6Sopenharmony_ci 586c0abf9e6Sopenharmony_ci#define KEY_CAMERA_ZOOMIN 0x215 587c0abf9e6Sopenharmony_ci#define KEY_CAMERA_ZOOMOUT 0x216 588c0abf9e6Sopenharmony_ci#define KEY_CAMERA_UP 0x217 589c0abf9e6Sopenharmony_ci#define KEY_CAMERA_DOWN 0x218 590c0abf9e6Sopenharmony_ci#define KEY_CAMERA_LEFT 0x219 591c0abf9e6Sopenharmony_ci#define KEY_CAMERA_RIGHT 0x21a 592c0abf9e6Sopenharmony_ci 593c0abf9e6Sopenharmony_ci#define KEY_ATTENDANT_ON 0x21b 594c0abf9e6Sopenharmony_ci#define KEY_ATTENDANT_OFF 0x21c 595c0abf9e6Sopenharmony_ci#define KEY_ATTENDANT_TOGGLE 0x21d /* Attendant call on or off */ 596c0abf9e6Sopenharmony_ci#define KEY_LIGHTS_TOGGLE 0x21e /* Reading light on or off */ 597c0abf9e6Sopenharmony_ci 598c0abf9e6Sopenharmony_ci#define BTN_DPAD_UP 0x220 599c0abf9e6Sopenharmony_ci#define BTN_DPAD_DOWN 0x221 600c0abf9e6Sopenharmony_ci#define BTN_DPAD_LEFT 0x222 601c0abf9e6Sopenharmony_ci#define BTN_DPAD_RIGHT 0x223 602c0abf9e6Sopenharmony_ci 603c0abf9e6Sopenharmony_ci#define KEY_ALS_TOGGLE 0x230 /* Ambient light sensor */ 604c0abf9e6Sopenharmony_ci#define KEY_ROTATE_LOCK_TOGGLE 0x231 /* Display rotation lock */ 605c0abf9e6Sopenharmony_ci 606c0abf9e6Sopenharmony_ci#define KEY_BUTTONCONFIG 0x240 /* AL Button Configuration */ 607c0abf9e6Sopenharmony_ci#define KEY_TASKMANAGER 0x241 /* AL Task/Project Manager */ 608c0abf9e6Sopenharmony_ci#define KEY_JOURNAL 0x242 /* AL Log/Journal/Timecard */ 609c0abf9e6Sopenharmony_ci#define KEY_CONTROLPANEL 0x243 /* AL Control Panel */ 610c0abf9e6Sopenharmony_ci#define KEY_APPSELECT 0x244 /* AL Select Task/Application */ 611c0abf9e6Sopenharmony_ci#define KEY_SCREENSAVER 0x245 /* AL Screen Saver */ 612c0abf9e6Sopenharmony_ci#define KEY_VOICECOMMAND 0x246 /* Listening Voice Command */ 613c0abf9e6Sopenharmony_ci#define KEY_ASSISTANT 0x247 /* AL Context-aware desktop assistant */ 614c0abf9e6Sopenharmony_ci#define KEY_KBD_LAYOUT_NEXT 0x248 /* AC Next Keyboard Layout Select */ 615c0abf9e6Sopenharmony_ci#define KEY_EMOJI_PICKER 0x249 /* Show/hide emoji picker (HUTRR101) */ 616c0abf9e6Sopenharmony_ci#define KEY_DICTATE 0x24a /* Start or Stop Voice Dictation Session (HUTRR99) */ 617c0abf9e6Sopenharmony_ci 618c0abf9e6Sopenharmony_ci#define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */ 619c0abf9e6Sopenharmony_ci#define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */ 620c0abf9e6Sopenharmony_ci 621c0abf9e6Sopenharmony_ci#define KEY_KBDINPUTASSIST_PREV 0x260 622c0abf9e6Sopenharmony_ci#define KEY_KBDINPUTASSIST_NEXT 0x261 623c0abf9e6Sopenharmony_ci#define KEY_KBDINPUTASSIST_PREVGROUP 0x262 624c0abf9e6Sopenharmony_ci#define KEY_KBDINPUTASSIST_NEXTGROUP 0x263 625c0abf9e6Sopenharmony_ci#define KEY_KBDINPUTASSIST_ACCEPT 0x264 626c0abf9e6Sopenharmony_ci#define KEY_KBDINPUTASSIST_CANCEL 0x265 627c0abf9e6Sopenharmony_ci 628c0abf9e6Sopenharmony_ci/* Diagonal movement keys */ 629c0abf9e6Sopenharmony_ci#define KEY_RIGHT_UP 0x266 630c0abf9e6Sopenharmony_ci#define KEY_RIGHT_DOWN 0x267 631c0abf9e6Sopenharmony_ci#define KEY_LEFT_UP 0x268 632c0abf9e6Sopenharmony_ci#define KEY_LEFT_DOWN 0x269 633c0abf9e6Sopenharmony_ci 634c0abf9e6Sopenharmony_ci#define KEY_ROOT_MENU 0x26a /* Show Device's Root Menu */ 635c0abf9e6Sopenharmony_ci/* Show Top Menu of the Media (e.g. DVD) */ 636c0abf9e6Sopenharmony_ci#define KEY_MEDIA_TOP_MENU 0x26b 637c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_11 0x26c 638c0abf9e6Sopenharmony_ci#define KEY_NUMERIC_12 0x26d 639c0abf9e6Sopenharmony_ci/* 640c0abf9e6Sopenharmony_ci * Toggle Audio Description: refers to an audio service that helps blind and 641c0abf9e6Sopenharmony_ci * visually impaired consumers understand the action in a program. Note: in 642c0abf9e6Sopenharmony_ci * some countries this is referred to as "Video Description". 643c0abf9e6Sopenharmony_ci */ 644c0abf9e6Sopenharmony_ci#define KEY_AUDIO_DESC 0x26e 645c0abf9e6Sopenharmony_ci#define KEY_3D_MODE 0x26f 646c0abf9e6Sopenharmony_ci#define KEY_NEXT_FAVORITE 0x270 647c0abf9e6Sopenharmony_ci#define KEY_STOP_RECORD 0x271 648c0abf9e6Sopenharmony_ci#define KEY_PAUSE_RECORD 0x272 649c0abf9e6Sopenharmony_ci#define KEY_VOD 0x273 /* Video on Demand */ 650c0abf9e6Sopenharmony_ci#define KEY_UNMUTE 0x274 651c0abf9e6Sopenharmony_ci#define KEY_FASTREVERSE 0x275 652c0abf9e6Sopenharmony_ci#define KEY_SLOWREVERSE 0x276 653c0abf9e6Sopenharmony_ci/* 654c0abf9e6Sopenharmony_ci * Control a data application associated with the currently viewed channel, 655c0abf9e6Sopenharmony_ci * e.g. teletext or data broadcast application (MHEG, MHP, HbbTV, etc.) 656c0abf9e6Sopenharmony_ci */ 657c0abf9e6Sopenharmony_ci#define KEY_DATA 0x277 658c0abf9e6Sopenharmony_ci#define KEY_ONSCREEN_KEYBOARD 0x278 659c0abf9e6Sopenharmony_ci/* Electronic privacy screen control */ 660c0abf9e6Sopenharmony_ci#define KEY_PRIVACY_SCREEN_TOGGLE 0x279 661c0abf9e6Sopenharmony_ci 662c0abf9e6Sopenharmony_ci/* Select an area of screen to be copied */ 663c0abf9e6Sopenharmony_ci#define KEY_SELECTIVE_SCREENSHOT 0x27a 664c0abf9e6Sopenharmony_ci 665c0abf9e6Sopenharmony_ci/* Move the focus to the next or previous user controllable element within a UI container */ 666c0abf9e6Sopenharmony_ci#define KEY_NEXT_ELEMENT 0x27b 667c0abf9e6Sopenharmony_ci#define KEY_PREVIOUS_ELEMENT 0x27c 668c0abf9e6Sopenharmony_ci 669c0abf9e6Sopenharmony_ci/* Toggle Autopilot engagement */ 670c0abf9e6Sopenharmony_ci#define KEY_AUTOPILOT_ENGAGE_TOGGLE 0x27d 671c0abf9e6Sopenharmony_ci 672c0abf9e6Sopenharmony_ci/* Shortcut Keys */ 673c0abf9e6Sopenharmony_ci#define KEY_MARK_WAYPOINT 0x27e 674c0abf9e6Sopenharmony_ci#define KEY_SOS 0x27f 675c0abf9e6Sopenharmony_ci#define KEY_NAV_CHART 0x280 676c0abf9e6Sopenharmony_ci#define KEY_FISHING_CHART 0x281 677c0abf9e6Sopenharmony_ci#define KEY_SINGLE_RANGE_RADAR 0x282 678c0abf9e6Sopenharmony_ci#define KEY_DUAL_RANGE_RADAR 0x283 679c0abf9e6Sopenharmony_ci#define KEY_RADAR_OVERLAY 0x284 680c0abf9e6Sopenharmony_ci#define KEY_TRADITIONAL_SONAR 0x285 681c0abf9e6Sopenharmony_ci#define KEY_CLEARVU_SONAR 0x286 682c0abf9e6Sopenharmony_ci#define KEY_SIDEVU_SONAR 0x287 683c0abf9e6Sopenharmony_ci#define KEY_NAV_INFO 0x288 684c0abf9e6Sopenharmony_ci#define KEY_BRIGHTNESS_MENU 0x289 685c0abf9e6Sopenharmony_ci 686c0abf9e6Sopenharmony_ci/* 687c0abf9e6Sopenharmony_ci * Some keyboards have keys which do not have a defined meaning, these keys 688c0abf9e6Sopenharmony_ci * are intended to be programmed / bound to macros by the user. For most 689c0abf9e6Sopenharmony_ci * keyboards with these macro-keys the key-sequence to inject, or action to 690c0abf9e6Sopenharmony_ci * take, is all handled by software on the host side. So from the kernel's 691c0abf9e6Sopenharmony_ci * point of view these are just normal keys. 692c0abf9e6Sopenharmony_ci * 693c0abf9e6Sopenharmony_ci * The KEY_MACRO# codes below are intended for such keys, which may be labeled 694c0abf9e6Sopenharmony_ci * e.g. G1-G18, or S1 - S30. The KEY_MACRO# codes MUST NOT be used for keys 695c0abf9e6Sopenharmony_ci * where the marking on the key does indicate a defined meaning / purpose. 696c0abf9e6Sopenharmony_ci * 697c0abf9e6Sopenharmony_ci * The KEY_MACRO# codes MUST also NOT be used as fallback for when no existing 698c0abf9e6Sopenharmony_ci * KEY_FOO define matches the marking / purpose. In this case a new KEY_FOO 699c0abf9e6Sopenharmony_ci * define MUST be added. 700c0abf9e6Sopenharmony_ci */ 701c0abf9e6Sopenharmony_ci#define KEY_MACRO1 0x290 702c0abf9e6Sopenharmony_ci#define KEY_MACRO2 0x291 703c0abf9e6Sopenharmony_ci#define KEY_MACRO3 0x292 704c0abf9e6Sopenharmony_ci#define KEY_MACRO4 0x293 705c0abf9e6Sopenharmony_ci#define KEY_MACRO5 0x294 706c0abf9e6Sopenharmony_ci#define KEY_MACRO6 0x295 707c0abf9e6Sopenharmony_ci#define KEY_MACRO7 0x296 708c0abf9e6Sopenharmony_ci#define KEY_MACRO8 0x297 709c0abf9e6Sopenharmony_ci#define KEY_MACRO9 0x298 710c0abf9e6Sopenharmony_ci#define KEY_MACRO10 0x299 711c0abf9e6Sopenharmony_ci#define KEY_MACRO11 0x29a 712c0abf9e6Sopenharmony_ci#define KEY_MACRO12 0x29b 713c0abf9e6Sopenharmony_ci#define KEY_MACRO13 0x29c 714c0abf9e6Sopenharmony_ci#define KEY_MACRO14 0x29d 715c0abf9e6Sopenharmony_ci#define KEY_MACRO15 0x29e 716c0abf9e6Sopenharmony_ci#define KEY_MACRO16 0x29f 717c0abf9e6Sopenharmony_ci#define KEY_MACRO17 0x2a0 718c0abf9e6Sopenharmony_ci#define KEY_MACRO18 0x2a1 719c0abf9e6Sopenharmony_ci#define KEY_MACRO19 0x2a2 720c0abf9e6Sopenharmony_ci#define KEY_MACRO20 0x2a3 721c0abf9e6Sopenharmony_ci#define KEY_MACRO21 0x2a4 722c0abf9e6Sopenharmony_ci#define KEY_MACRO22 0x2a5 723c0abf9e6Sopenharmony_ci#define KEY_MACRO23 0x2a6 724c0abf9e6Sopenharmony_ci#define KEY_MACRO24 0x2a7 725c0abf9e6Sopenharmony_ci#define KEY_MACRO25 0x2a8 726c0abf9e6Sopenharmony_ci#define KEY_MACRO26 0x2a9 727c0abf9e6Sopenharmony_ci#define KEY_MACRO27 0x2aa 728c0abf9e6Sopenharmony_ci#define KEY_MACRO28 0x2ab 729c0abf9e6Sopenharmony_ci#define KEY_MACRO29 0x2ac 730c0abf9e6Sopenharmony_ci#define KEY_MACRO30 0x2ad 731c0abf9e6Sopenharmony_ci 732c0abf9e6Sopenharmony_ci/* 733c0abf9e6Sopenharmony_ci * Some keyboards with the macro-keys described above have some extra keys 734c0abf9e6Sopenharmony_ci * for controlling the host-side software responsible for the macro handling: 735c0abf9e6Sopenharmony_ci * -A macro recording start/stop key. Note that not all keyboards which emit 736c0abf9e6Sopenharmony_ci * KEY_MACRO_RECORD_START will also emit KEY_MACRO_RECORD_STOP if 737c0abf9e6Sopenharmony_ci * KEY_MACRO_RECORD_STOP is not advertised, then KEY_MACRO_RECORD_START 738c0abf9e6Sopenharmony_ci * should be interpreted as a recording start/stop toggle; 739c0abf9e6Sopenharmony_ci * -Keys for switching between different macro (pre)sets, either a key for 740c0abf9e6Sopenharmony_ci * cycling through the configured presets or keys to directly select a preset. 741c0abf9e6Sopenharmony_ci */ 742c0abf9e6Sopenharmony_ci#define KEY_MACRO_RECORD_START 0x2b0 743c0abf9e6Sopenharmony_ci#define KEY_MACRO_RECORD_STOP 0x2b1 744c0abf9e6Sopenharmony_ci#define KEY_MACRO_PRESET_CYCLE 0x2b2 745c0abf9e6Sopenharmony_ci#define KEY_MACRO_PRESET1 0x2b3 746c0abf9e6Sopenharmony_ci#define KEY_MACRO_PRESET2 0x2b4 747c0abf9e6Sopenharmony_ci#define KEY_MACRO_PRESET3 0x2b5 748c0abf9e6Sopenharmony_ci 749c0abf9e6Sopenharmony_ci/* 750c0abf9e6Sopenharmony_ci * Some keyboards have a buildin LCD panel where the contents are controlled 751c0abf9e6Sopenharmony_ci * by the host. Often these have a number of keys directly below the LCD 752c0abf9e6Sopenharmony_ci * intended for controlling a menu shown on the LCD. These keys often don't 753c0abf9e6Sopenharmony_ci * have any labeling so we just name them KEY_KBD_LCD_MENU# 754c0abf9e6Sopenharmony_ci */ 755c0abf9e6Sopenharmony_ci#define KEY_KBD_LCD_MENU1 0x2b8 756c0abf9e6Sopenharmony_ci#define KEY_KBD_LCD_MENU2 0x2b9 757c0abf9e6Sopenharmony_ci#define KEY_KBD_LCD_MENU3 0x2ba 758c0abf9e6Sopenharmony_ci#define KEY_KBD_LCD_MENU4 0x2bb 759c0abf9e6Sopenharmony_ci#define KEY_KBD_LCD_MENU5 0x2bc 760c0abf9e6Sopenharmony_ci 761c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY 0x2c0 762c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY1 0x2c0 763c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY2 0x2c1 764c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY3 0x2c2 765c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY4 0x2c3 766c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY5 0x2c4 767c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY6 0x2c5 768c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY7 0x2c6 769c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY8 0x2c7 770c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY9 0x2c8 771c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY10 0x2c9 772c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY11 0x2ca 773c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY12 0x2cb 774c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY13 0x2cc 775c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY14 0x2cd 776c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY15 0x2ce 777c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY16 0x2cf 778c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY17 0x2d0 779c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY18 0x2d1 780c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY19 0x2d2 781c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY20 0x2d3 782c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY21 0x2d4 783c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY22 0x2d5 784c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY23 0x2d6 785c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY24 0x2d7 786c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY25 0x2d8 787c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY26 0x2d9 788c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY27 0x2da 789c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY28 0x2db 790c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY29 0x2dc 791c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY30 0x2dd 792c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY31 0x2de 793c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY32 0x2df 794c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY33 0x2e0 795c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY34 0x2e1 796c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY35 0x2e2 797c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY36 0x2e3 798c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY37 0x2e4 799c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY38 0x2e5 800c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY39 0x2e6 801c0abf9e6Sopenharmony_ci#define BTN_TRIGGER_HAPPY40 0x2e7 802c0abf9e6Sopenharmony_ci 803c0abf9e6Sopenharmony_ci/* We avoid low common keys in module aliases so they don't get huge. */ 804c0abf9e6Sopenharmony_ci#define KEY_MIN_INTERESTING KEY_MUTE 805c0abf9e6Sopenharmony_ci#define KEY_MAX 0x2ff 806c0abf9e6Sopenharmony_ci#define KEY_CNT (KEY_MAX+1) 807c0abf9e6Sopenharmony_ci 808c0abf9e6Sopenharmony_ci/* 809c0abf9e6Sopenharmony_ci * Relative axes 810c0abf9e6Sopenharmony_ci */ 811c0abf9e6Sopenharmony_ci 812c0abf9e6Sopenharmony_ci#define REL_X 0x00 813c0abf9e6Sopenharmony_ci#define REL_Y 0x01 814c0abf9e6Sopenharmony_ci#define REL_Z 0x02 815c0abf9e6Sopenharmony_ci#define REL_RX 0x03 816c0abf9e6Sopenharmony_ci#define REL_RY 0x04 817c0abf9e6Sopenharmony_ci#define REL_RZ 0x05 818c0abf9e6Sopenharmony_ci#define REL_HWHEEL 0x06 819c0abf9e6Sopenharmony_ci#define REL_DIAL 0x07 820c0abf9e6Sopenharmony_ci#define REL_WHEEL 0x08 821c0abf9e6Sopenharmony_ci#define REL_MISC 0x09 822c0abf9e6Sopenharmony_ci/* 823c0abf9e6Sopenharmony_ci * 0x0a is reserved and should not be used in input drivers. 824c0abf9e6Sopenharmony_ci * It was used by HID as REL_MISC+1 and userspace needs to detect if 825c0abf9e6Sopenharmony_ci * the next REL_* event is correct or is just REL_MISC + n. 826c0abf9e6Sopenharmony_ci * We define here REL_RESERVED so userspace can rely on it and detect 827c0abf9e6Sopenharmony_ci * the situation described above. 828c0abf9e6Sopenharmony_ci */ 829c0abf9e6Sopenharmony_ci#define REL_RESERVED 0x0a 830c0abf9e6Sopenharmony_ci#define REL_WHEEL_HI_RES 0x0b 831c0abf9e6Sopenharmony_ci#define REL_HWHEEL_HI_RES 0x0c 832c0abf9e6Sopenharmony_ci#define REL_MAX 0x0f 833c0abf9e6Sopenharmony_ci#define REL_CNT (REL_MAX+1) 834c0abf9e6Sopenharmony_ci 835c0abf9e6Sopenharmony_ci/* 836c0abf9e6Sopenharmony_ci * Absolute axes 837c0abf9e6Sopenharmony_ci */ 838c0abf9e6Sopenharmony_ci 839c0abf9e6Sopenharmony_ci#define ABS_X 0x00 840c0abf9e6Sopenharmony_ci#define ABS_Y 0x01 841c0abf9e6Sopenharmony_ci#define ABS_Z 0x02 842c0abf9e6Sopenharmony_ci#define ABS_RX 0x03 843c0abf9e6Sopenharmony_ci#define ABS_RY 0x04 844c0abf9e6Sopenharmony_ci#define ABS_RZ 0x05 845c0abf9e6Sopenharmony_ci#define ABS_THROTTLE 0x06 846c0abf9e6Sopenharmony_ci#define ABS_RUDDER 0x07 847c0abf9e6Sopenharmony_ci#define ABS_WHEEL 0x08 848c0abf9e6Sopenharmony_ci#define ABS_GAS 0x09 849c0abf9e6Sopenharmony_ci#define ABS_BRAKE 0x0a 850c0abf9e6Sopenharmony_ci#define ABS_HAT0X 0x10 851c0abf9e6Sopenharmony_ci#define ABS_HAT0Y 0x11 852c0abf9e6Sopenharmony_ci#define ABS_HAT1X 0x12 853c0abf9e6Sopenharmony_ci#define ABS_HAT1Y 0x13 854c0abf9e6Sopenharmony_ci#define ABS_HAT2X 0x14 855c0abf9e6Sopenharmony_ci#define ABS_HAT2Y 0x15 856c0abf9e6Sopenharmony_ci#define ABS_HAT3X 0x16 857c0abf9e6Sopenharmony_ci#define ABS_HAT3Y 0x17 858c0abf9e6Sopenharmony_ci#define ABS_PRESSURE 0x18 859c0abf9e6Sopenharmony_ci#define ABS_DISTANCE 0x19 860c0abf9e6Sopenharmony_ci#define ABS_TILT_X 0x1a 861c0abf9e6Sopenharmony_ci#define ABS_TILT_Y 0x1b 862c0abf9e6Sopenharmony_ci#define ABS_TOOL_WIDTH 0x1c 863c0abf9e6Sopenharmony_ci 864c0abf9e6Sopenharmony_ci#define ABS_VOLUME 0x20 865c0abf9e6Sopenharmony_ci 866c0abf9e6Sopenharmony_ci#define ABS_MISC 0x28 867c0abf9e6Sopenharmony_ci#define ABS_MT_MOVEFLAG 0x29 868c0abf9e6Sopenharmony_ci 869c0abf9e6Sopenharmony_ci/* 870c0abf9e6Sopenharmony_ci * 0x2e is reserved and should not be used in input drivers. 871c0abf9e6Sopenharmony_ci * It was used by HID as ABS_MISC+6 and userspace needs to detect if 872c0abf9e6Sopenharmony_ci * the next ABS_* event is correct or is just ABS_MISC + n. 873c0abf9e6Sopenharmony_ci * We define here ABS_RESERVED so userspace can rely on it and detect 874c0abf9e6Sopenharmony_ci * the situation described above. 875c0abf9e6Sopenharmony_ci */ 876c0abf9e6Sopenharmony_ci#define ABS_RESERVED 0x2e 877c0abf9e6Sopenharmony_ci 878c0abf9e6Sopenharmony_ci#define ABS_MT_SLOT 0x2f /* MT slot being modified */ 879c0abf9e6Sopenharmony_ci#define ABS_MT_TOUCH_MAJOR 0x30 /* Major axis of touching ellipse */ 880c0abf9e6Sopenharmony_ci#define ABS_MT_TOUCH_MINOR 0x31 /* Minor axis (omit if circular) */ 881c0abf9e6Sopenharmony_ci#define ABS_MT_WIDTH_MAJOR 0x32 /* Major axis of approaching ellipse */ 882c0abf9e6Sopenharmony_ci#define ABS_MT_WIDTH_MINOR 0x33 /* Minor axis (omit if circular) */ 883c0abf9e6Sopenharmony_ci#define ABS_MT_ORIENTATION 0x34 /* Ellipse orientation */ 884c0abf9e6Sopenharmony_ci#define ABS_MT_POSITION_X 0x35 /* Center X touch position */ 885c0abf9e6Sopenharmony_ci#define ABS_MT_POSITION_Y 0x36 /* Center Y touch position */ 886c0abf9e6Sopenharmony_ci#define ABS_MT_TOOL_TYPE 0x37 /* Type of touching device */ 887c0abf9e6Sopenharmony_ci#define ABS_MT_BLOB_ID 0x38 /* Group a set of packets as a blob */ 888c0abf9e6Sopenharmony_ci#define ABS_MT_TRACKING_ID 0x39 /* Unique ID of initiated contact */ 889c0abf9e6Sopenharmony_ci#define ABS_MT_PRESSURE 0x3a /* Pressure on contact area */ 890c0abf9e6Sopenharmony_ci#define ABS_MT_DISTANCE 0x3b /* Contact hover distance */ 891c0abf9e6Sopenharmony_ci#define ABS_MT_TOOL_X 0x3c /* Center X tool position */ 892c0abf9e6Sopenharmony_ci#define ABS_MT_TOOL_Y 0x3d /* Center Y tool position */ 893c0abf9e6Sopenharmony_ci 894c0abf9e6Sopenharmony_ci 895c0abf9e6Sopenharmony_ci#define ABS_MAX 0x3f 896c0abf9e6Sopenharmony_ci#define ABS_CNT (ABS_MAX+1) 897c0abf9e6Sopenharmony_ci 898c0abf9e6Sopenharmony_ci/* 899c0abf9e6Sopenharmony_ci * Switch events 900c0abf9e6Sopenharmony_ci */ 901c0abf9e6Sopenharmony_ci 902c0abf9e6Sopenharmony_ci#define SW_LID 0x00 /* set = lid shut */ 903c0abf9e6Sopenharmony_ci#define SW_TABLET_MODE 0x01 /* set = tablet mode */ 904c0abf9e6Sopenharmony_ci#define SW_HEADPHONE_INSERT 0x02 /* set = inserted */ 905c0abf9e6Sopenharmony_ci#define SW_RFKILL_ALL 0x03 /* rfkill master switch, type "any" 906c0abf9e6Sopenharmony_ci set = radio enabled */ 907c0abf9e6Sopenharmony_ci#define SW_RADIO SW_RFKILL_ALL /* deprecated */ 908c0abf9e6Sopenharmony_ci#define SW_MICROPHONE_INSERT 0x04 /* set = inserted */ 909c0abf9e6Sopenharmony_ci#define SW_DOCK 0x05 /* set = plugged into dock */ 910c0abf9e6Sopenharmony_ci#define SW_LINEOUT_INSERT 0x06 /* set = inserted */ 911c0abf9e6Sopenharmony_ci#define SW_JACK_PHYSICAL_INSERT 0x07 /* set = mechanical switch set */ 912c0abf9e6Sopenharmony_ci#define SW_VIDEOOUT_INSERT 0x08 /* set = inserted */ 913c0abf9e6Sopenharmony_ci#define SW_CAMERA_LENS_COVER 0x09 /* set = lens covered */ 914c0abf9e6Sopenharmony_ci#define SW_KEYPAD_SLIDE 0x0a /* set = keypad slide out */ 915c0abf9e6Sopenharmony_ci#define SW_FRONT_PROXIMITY 0x0b /* set = front proximity sensor active */ 916c0abf9e6Sopenharmony_ci#define SW_ROTATE_LOCK 0x0c /* set = rotate locked/disabled */ 917c0abf9e6Sopenharmony_ci#define SW_LINEIN_INSERT 0x0d /* set = inserted */ 918c0abf9e6Sopenharmony_ci#define SW_MUTE_DEVICE 0x0e /* set = device disabled */ 919c0abf9e6Sopenharmony_ci#define SW_PEN_INSERTED 0x0f /* set = pen inserted */ 920c0abf9e6Sopenharmony_ci#define SW_MACHINE_COVER 0x10 /* set = cover closed */ 921c0abf9e6Sopenharmony_ci#define SW_SUPER_PRIVACY 0x11 /* set = super privacy open */ 922c0abf9e6Sopenharmony_ci#define SW_MAX 0x11 923c0abf9e6Sopenharmony_ci#define SW_CNT (SW_MAX+1) 924c0abf9e6Sopenharmony_ci 925c0abf9e6Sopenharmony_ci/* 926c0abf9e6Sopenharmony_ci * Misc events 927c0abf9e6Sopenharmony_ci */ 928c0abf9e6Sopenharmony_ci 929c0abf9e6Sopenharmony_ci#define MSC_SERIAL 0x00 930c0abf9e6Sopenharmony_ci#define MSC_PULSELED 0x01 931c0abf9e6Sopenharmony_ci#define MSC_GESTURE 0x02 932c0abf9e6Sopenharmony_ci#define MSC_RAW 0x03 933c0abf9e6Sopenharmony_ci#define MSC_SCAN 0x04 934c0abf9e6Sopenharmony_ci#define MSC_TIMESTAMP 0x05 935c0abf9e6Sopenharmony_ci#define MSC_MAX 0x07 936c0abf9e6Sopenharmony_ci#define MSC_CNT (MSC_MAX+1) 937c0abf9e6Sopenharmony_ci 938c0abf9e6Sopenharmony_ci/* 939c0abf9e6Sopenharmony_ci * LEDs 940c0abf9e6Sopenharmony_ci */ 941c0abf9e6Sopenharmony_ci 942c0abf9e6Sopenharmony_ci#define LED_NUML 0x00 943c0abf9e6Sopenharmony_ci#define LED_CAPSL 0x01 944c0abf9e6Sopenharmony_ci#define LED_SCROLLL 0x02 945c0abf9e6Sopenharmony_ci#define LED_COMPOSE 0x03 946c0abf9e6Sopenharmony_ci#define LED_KANA 0x04 947c0abf9e6Sopenharmony_ci#define LED_SLEEP 0x05 948c0abf9e6Sopenharmony_ci#define LED_SUSPEND 0x06 949c0abf9e6Sopenharmony_ci#define LED_MUTE 0x07 950c0abf9e6Sopenharmony_ci#define LED_MISC 0x08 951c0abf9e6Sopenharmony_ci#define LED_MAIL 0x09 952c0abf9e6Sopenharmony_ci#define LED_CHARGING 0x0a 953c0abf9e6Sopenharmony_ci#define LED_MAX 0x0f 954c0abf9e6Sopenharmony_ci#define LED_CNT (LED_MAX+1) 955c0abf9e6Sopenharmony_ci 956c0abf9e6Sopenharmony_ci/* 957c0abf9e6Sopenharmony_ci * Autorepeat values 958c0abf9e6Sopenharmony_ci */ 959c0abf9e6Sopenharmony_ci 960c0abf9e6Sopenharmony_ci#define REP_DELAY 0x00 961c0abf9e6Sopenharmony_ci#define REP_PERIOD 0x01 962c0abf9e6Sopenharmony_ci#define REP_MAX 0x01 963c0abf9e6Sopenharmony_ci#define REP_CNT (REP_MAX+1) 964c0abf9e6Sopenharmony_ci 965c0abf9e6Sopenharmony_ci/* 966c0abf9e6Sopenharmony_ci * Sounds 967c0abf9e6Sopenharmony_ci */ 968c0abf9e6Sopenharmony_ci 969c0abf9e6Sopenharmony_ci#define SND_CLICK 0x00 970c0abf9e6Sopenharmony_ci#define SND_BELL 0x01 971c0abf9e6Sopenharmony_ci#define SND_TONE 0x02 972c0abf9e6Sopenharmony_ci#define SND_MAX 0x07 973c0abf9e6Sopenharmony_ci#define SND_CNT (SND_MAX+1) 974c0abf9e6Sopenharmony_ci 975c0abf9e6Sopenharmony_ci#endif 976