Skip to content

Instantly share code, notes, and snippets.

@herrgahr
Last active January 14, 2018 10:53
Show Gist options
  • Save herrgahr/cee5cbdcbbc7e8b9a6d20386365bf231 to your computer and use it in GitHub Desktop.
Save herrgahr/cee5cbdcbbc7e8b9a6d20386365bf231 to your computer and use it in GitHub Desktop.
Generate x-macro header from linux/input-event-codes.h
#define KEY(a,b) KEY.a = b
#define BTN(a,b) BTN.a = b
#define LED(a,b) LED.a = b
#define REP(a,b) REP.a = b
#define SND(a,b) SND.a = b
#define MSC(a,b) MSC.a = b
#define SW(a,b) SW.a = b
#define ABS(a,b) ABS.a = b
#define EV(a,b) EV.a = b
#define SYN(a,b) SYN.a = b
#define INPUT_PROP(a,b) INPUT_PROP.a = b
INPUT_PROP.POINTER = 0x00
INPUT_PROP.DIRECT = 0x01
INPUT_PROP.BUTTONPAD = 0x02
INPUT_PROP.SEMI_MT = 0x03
INPUT_PROP.TOPBUTTONPAD = 0x04
INPUT_PROP.POINTING_STICK = 0x05
INPUT_PROP.ACCELEROMETER = 0x06
INPUT_PROP.MAX = 0x1f
INPUT_PROP.CNT = (INPUT_PROP_MAX) + 1
EV.SYN = 0x00
EV.KEY = 0x01
EV.REL = 0x02
EV.ABS = 0x03
EV.MSC = 0x04
EV.SW = 0x05
EV.LED = 0x11
EV.SND = 0x12
EV.REP = 0x14
EV.FF = 0x15
EV.PWR = 0x16
EV.FF_STATUS = 0x17
EV.MAX = 0x1f
EV.CNT = (EV_MAX+1)
SYN.REPORT = 0
SYN.CONFIG = 1
SYN.MT_REPORT = 2
SYN.DROPPED = 3
SYN.MAX = 0xf
SYN.CNT = (SYN_MAX+1)
KEY.RESERVED = 0
KEY.ESC = 1
KEY. 1 = 2
KEY. 2 = 3
KEY. 3 = 4
KEY. 4 = 5
KEY. 5 = 6
KEY. 6 = 7
KEY. 7 = 8
KEY. 8 = 9
KEY. 9 = 10
KEY. 0 = 11
KEY.MINUS = 12
KEY.EQUAL = 13
KEY.BACKSPACE = 14
KEY.TAB = 15
KEY.Q = 16
KEY.W = 17
KEY.E = 18
KEY.R = 19
KEY.T = 20
KEY.Y = 21
KEY.U = 22
KEY.I = 23
KEY.O = 24
KEY.P = 25
KEY.LEFTBRACE = 26
KEY.RIGHTBRACE = 27
KEY.ENTER = 28
KEY.LEFTCTRL = 29
KEY.A = 30
KEY.S = 31
KEY.D = 32
KEY.F = 33
KEY.G = 34
KEY.H = 35
KEY.J = 36
KEY.K = 37
KEY.L = 38
KEY.SEMICOLON = 39
KEY.APOSTROPHE = 40
KEY.GRAVE = 41
KEY.LEFTSHIFT = 42
KEY.BACKSLASH = 43
KEY.Z = 44
KEY.X = 45
KEY.C = 46
KEY.V = 47
KEY.B = 48
KEY.N = 49
KEY.M = 50
KEY.COMMA = 51
KEY.DOT = 52
KEY.SLASH = 53
KEY.RIGHTSHIFT = 54
KEY.KPASTERISK = 55
KEY.LEFTALT = 56
KEY.SPACE = 57
KEY.CAPSLOCK = 58
KEY.F1 = 59
KEY.F2 = 60
KEY.F3 = 61
KEY.F4 = 62
KEY.F5 = 63
KEY.F6 = 64
KEY.F7 = 65
KEY.F8 = 66
KEY.F9 = 67
KEY.F10 = 68
KEY.NUMLOCK = 69
KEY.SCROLLLOCK = 70
KEY.KP7 = 71
KEY.KP8 = 72
KEY.KP9 = 73
KEY.KPMINUS = 74
KEY.KP4 = 75
KEY.KP5 = 76
KEY.KP6 = 77
KEY.KPPLUS = 78
KEY.KP1 = 79
KEY.KP2 = 80
KEY.KP3 = 81
KEY.KP0 = 82
KEY.KPDOT = 83
KEY.ZENKAKUHANKAKU = 85
KEY. 102ND = 86
KEY.F11 = 87
KEY.F12 = 88
KEY.RO = 89
KEY.KATAKANA = 90
KEY.HIRAGANA = 91
KEY.HENKAN = 92
KEY.KATAKANAHIRAGANA = 93
KEY.MUHENKAN = 94
KEY.KPJPCOMMA = 95
KEY.KPENTER = 96
KEY.RIGHTCTRL = 97
KEY.KPSLASH = 98
KEY.SYSRQ = 99
KEY.RIGHTALT = 100
KEY.LINEFEED = 101
KEY.HOME = 102
KEY.UP = 103
KEY.PAGEUP = 104
KEY.LEFT = 105
KEY.RIGHT = 106
KEY.END = 107
KEY.DOWN = 108
KEY.PAGEDOWN = 109
KEY.INSERT = 110
KEY.DELETE = 111
KEY.MACRO = 112
KEY.MUTE = 113
KEY.VOLUMEDOWN = 114
KEY.VOLUMEUP = 115
KEY.POWER = 116
KEY.KPEQUAL = 117
KEY.KPPLUSMINUS = 118
KEY.PAUSE = 119
KEY.SCALE = 120
KEY.KPCOMMA = 121
KEY.HANGEUL = 122
KEY.HANGUEL = KEY_HANGEUL
KEY.HANJA = 123
KEY.YEN = 124
KEY.LEFTMETA = 125
KEY.RIGHTMETA = 126
KEY.COMPOSE = 127
KEY.STOP = 128
KEY.AGAIN = 129
KEY.PROPS = 130
KEY.UNDO = 131
KEY.FRONT = 132
KEY.COPY = 133
KEY.OPEN = 134
KEY.PASTE = 135
KEY.FIND = 136
KEY.CUT = 137
KEY.HELP = 138
KEY.MENU = 139
KEY.CALC = 140
KEY.SETUP = 141
KEY.SLEEP = 142
KEY.WAKEUP = 143
KEY.FILE = 144
KEY.SENDFILE = 145
KEY.DELETEFILE = 146
KEY.XFER = 147
KEY.PROG1 = 148
KEY.PROG2 = 149
KEY.WWW = 150
KEY.MSDOS = 151
KEY.COFFEE = 152
KEY.SCREENLOCK = KEY_COFFEE
KEY.ROTATE_DISPLAY = 153
KEY.DIRECTION = KEY_ROTATE_DISPLAY
KEY.CYCLEWINDOWS = 154
KEY.MAIL = 155
KEY.BOOKMARKS = 156
KEY.COMPUTER = 157
KEY.BACK = 158
KEY.FORWARD = 159
KEY.CLOSECD = 160
KEY.EJECTCD = 161
KEY.EJECTCLOSECD = 162
KEY.NEXTSONG = 163
KEY.PLAYPAUSE = 164
KEY.PREVIOUSSONG = 165
KEY.STOPCD = 166
KEY.RECORD = 167
KEY.REWIND = 168
KEY.PHONE = 169
KEY.ISO = 170
KEY.CONFIG = 171
KEY.HOMEPAGE = 172
KEY.REFRESH = 173
KEY.EXIT = 174
KEY.MOVE = 175
KEY.EDIT = 176
KEY.SCROLLUP = 177
KEY.SCROLLDOWN = 178
KEY.KPLEFTPAREN = 179
KEY.KPRIGHTPAREN = 180
KEY.NEW = 181
KEY.REDO = 182
KEY.F13 = 183
KEY.F14 = 184
KEY.F15 = 185
KEY.F16 = 186
KEY.F17 = 187
KEY.F18 = 188
KEY.F19 = 189
KEY.F20 = 190
KEY.F21 = 191
KEY.F22 = 192
KEY.F23 = 193
KEY.F24 = 194
KEY.PLAYCD = 200
KEY.PAUSECD = 201
KEY.PROG3 = 202
KEY.PROG4 = 203
KEY.DASHBOARD = 204
KEY.SUSPEND = 205
KEY.CLOSE = 206
KEY.PLAY = 207
KEY.FASTFORWARD = 208
KEY.BASSBOOST = 209
KEY.PRINT = 210
KEY.HP = 211
KEY.CAMERA = 212
KEY.SOUND = 213
KEY.QUESTION = 214
KEY.EMAIL = 215
KEY.CHAT = 216
KEY.SEARCH = 217
KEY.CONNECT = 218
KEY.FINANCE = 219
KEY.SPORT = 220
KEY.SHOP = 221
KEY.ALTERASE = 222
KEY.CANCEL = 223
KEY.BRIGHTNESSDOWN = 224
KEY.BRIGHTNESSUP = 225
KEY.MEDIA = 226
KEY.SWITCHVIDEOMODE = 227
KEY.KBDILLUMTOGGLE = 228
KEY.KBDILLUMDOWN = 229
KEY.KBDILLUMUP = 230
KEY.SEND = 231
KEY.REPLY = 232
KEY.FORWARDMAIL = 233
KEY.SAVE = 234
KEY.DOCUMENTS = 235
KEY.BATTERY = 236
KEY.BLUETOOTH = 237
KEY.WLAN = 238
KEY.UWB = 239
KEY.UNKNOWN = 240
KEY.VIDEO_NEXT = 241
KEY.VIDEO_PREV = 242
KEY.BRIGHTNESS_CYCLE = 243
KEY.BRIGHTNESS_AUTO = 244
KEY.BRIGHTNESS_ZERO = KEY_BRIGHTNESS_AUTO
KEY.DISPLAY_OFF = 245
KEY.WWAN = 246
KEY.WIMAX = KEY_WWAN
KEY.RFKILL = 247
KEY.MICMUTE = 248
BTN.MISC = 0x100
BTN. 0 = 0x100
BTN. 1 = 0x101
BTN. 2 = 0x102
BTN. 3 = 0x103
BTN. 4 = 0x104
BTN. 5 = 0x105
BTN. 6 = 0x106
BTN. 7 = 0x107
BTN. 8 = 0x108
BTN. 9 = 0x109
BTN.MOUSE = 0x110
BTN.LEFT = 0x110
BTN.RIGHT = 0x111
BTN.MIDDLE = 0x112
BTN.SIDE = 0x113
BTN.EXTRA = 0x114
BTN.FORWARD = 0x115
BTN.BACK = 0x116
BTN.TASK = 0x117
BTN.JOYSTICK = 0x120
BTN.TRIGGER = 0x120
BTN.THUMB = 0x121
BTN.THUMB2 = 0x122
BTN.TOP = 0x123
BTN.TOP2 = 0x124
BTN.PINKIE = 0x125
BTN.BASE = 0x126
BTN.BASE2 = 0x127
BTN.BASE3 = 0x128
BTN.BASE4 = 0x129
BTN.BASE5 = 0x12a
BTN.BASE6 = 0x12b
BTN.DEAD = 0x12f
BTN.GAMEPAD = 0x130
BTN.SOUTH = 0x130
BTN.A = BTN_SOUTH
BTN.EAST = 0x131
BTN.B = BTN_EAST
BTN.C = 0x132
BTN.NORTH = 0x133
BTN.X = BTN_NORTH
BTN.WEST = 0x134
BTN.Y = BTN_WEST
BTN.Z = 0x135
BTN.TL = 0x136
BTN.TR = 0x137
BTN.TL2 = 0x138
BTN.TR2 = 0x139
BTN.SELECT = 0x13a
BTN.START = 0x13b
BTN.MODE = 0x13c
BTN.THUMBL = 0x13d
BTN.THUMBR = 0x13e
BTN.DIGI = 0x140
BTN.TOOL_PEN = 0x140
BTN.TOOL_RUBBER = 0x141
BTN.TOOL_BRUSH = 0x142
BTN.TOOL_PENCIL = 0x143
BTN.TOOL_AIRBRUSH = 0x144
BTN.TOOL_FINGER = 0x145
BTN.TOOL_MOUSE = 0x146
BTN.TOOL_LENS = 0x147
BTN.TOOL_QUINTTAP = 0x148
BTN.TOUCH = 0x14a
BTN.STYLUS = 0x14b
BTN.STYLUS2 = 0x14c
BTN.TOOL_DOUBLETAP = 0x14d
BTN.TOOL_TRIPLETAP = 0x14e
BTN.TOOL_QUADTAP = 0x14f
BTN.WHEEL = 0x150
BTN.GEAR_DOWN = 0x150
BTN.GEAR_UP = 0x151
KEY.OK = 0x160
KEY.SELECT = 0x161
KEY.GOTO = 0x162
KEY.CLEAR = 0x163
KEY.POWER2 = 0x164
KEY.OPTION = 0x165
KEY.INFO = 0x166
KEY.TIME = 0x167
KEY.VENDOR = 0x168
KEY.ARCHIVE = 0x169
KEY.PROGRAM = 0x16a
KEY.CHANNEL = 0x16b
KEY.FAVORITES = 0x16c
KEY.EPG = 0x16d
KEY.PVR = 0x16e
KEY.MHP = 0x16f
KEY.LANGUAGE = 0x170
KEY.TITLE = 0x171
KEY.SUBTITLE = 0x172
KEY.ANGLE = 0x173
KEY.ZOOM = 0x174
KEY.MODE = 0x175
KEY.KEYBOARD = 0x176
KEY.SCREEN = 0x177
KEY.PC = 0x178
KEY.TV = 0x179
KEY.TV2 = 0x17a
KEY.VCR = 0x17b
KEY.VCR2 = 0x17c
KEY.SAT = 0x17d
KEY.SAT2 = 0x17e
KEY.CD = 0x17f
KEY.TAPE = 0x180
KEY.RADIO = 0x181
KEY.TUNER = 0x182
KEY.PLAYER = 0x183
KEY.TEXT = 0x184
KEY.DVD = 0x185
KEY.AUX = 0x186
KEY.MP3 = 0x187
KEY.AUDIO = 0x188
KEY.VIDEO = 0x189
KEY.DIRECTORY = 0x18a
KEY.LIST = 0x18b
KEY.MEMO = 0x18c
KEY.CALENDAR = 0x18d
KEY.RED = 0x18e
KEY.GREEN = 0x18f
KEY.YELLOW = 0x190
KEY.BLUE = 0x191
KEY.CHANNELUP = 0x192
KEY.CHANNELDOWN = 0x193
KEY.FIRST = 0x194
KEY.LAST = 0x195
KEY.AB = 0x196
KEY.NEXT = 0x197
KEY.RESTART = 0x198
KEY.SLOW = 0x199
KEY.SHUFFLE = 0x19a
KEY.BREAK = 0x19b
KEY.PREVIOUS = 0x19c
KEY.DIGITS = 0x19d
KEY.TEEN = 0x19e
KEY.TWEN = 0x19f
KEY.VIDEOPHONE = 0x1a0
KEY.GAMES = 0x1a1
KEY.ZOOMIN = 0x1a2
KEY.ZOOMOUT = 0x1a3
KEY.ZOOMRESET = 0x1a4
KEY.WORDPROCESSOR = 0x1a5
KEY.EDITOR = 0x1a6
KEY.SPREADSHEET = 0x1a7
KEY.GRAPHICSEDITOR = 0x1a8
KEY.PRESENTATION = 0x1a9
KEY.DATABASE = 0x1aa
KEY.NEWS = 0x1ab
KEY.VOICEMAIL = 0x1ac
KEY.ADDRESSBOOK = 0x1ad
KEY.MESSENGER = 0x1ae
KEY.DISPLAYTOGGLE = 0x1af
KEY.BRIGHTNESS_TOGGLE = KEY_DISPLAYTOGGLE
KEY.SPELLCHECK = 0x1b0
KEY.LOGOFF = 0x1b1
KEY.DOLLAR = 0x1b2
KEY.EURO = 0x1b3
KEY.FRAMEBACK = 0x1b4
KEY.FRAMEFORWARD = 0x1b5
KEY.CONTEXT_MENU = 0x1b6
KEY.MEDIA_REPEAT = 0x1b7
KEY. 10CHANNELSUP = 0x1b8
KEY. 10CHANNELSDOWN = 0x1b9
KEY.IMAGES = 0x1ba
KEY.DEL_EOL = 0x1c0
KEY.DEL_EOS = 0x1c1
KEY.INS_LINE = 0x1c2
KEY.DEL_LINE = 0x1c3
KEY.FN = 0x1d0
KEY.FN_ESC = 0x1d1
KEY.FN_F1 = 0x1d2
KEY.FN_F2 = 0x1d3
KEY.FN_F3 = 0x1d4
KEY.FN_F4 = 0x1d5
KEY.FN_F5 = 0x1d6
KEY.FN_F6 = 0x1d7
KEY.FN_F7 = 0x1d8
KEY.FN_F8 = 0x1d9
KEY.FN_F9 = 0x1da
KEY.FN_F10 = 0x1db
KEY.FN_F11 = 0x1dc
KEY.FN_F12 = 0x1dd
KEY.FN_1 = 0x1de
KEY.FN_2 = 0x1df
KEY.FN_D = 0x1e0
KEY.FN_E = 0x1e1
KEY.FN_F = 0x1e2
KEY.FN_S = 0x1e3
KEY.FN_B = 0x1e4
KEY.BRL_DOT1 = 0x1f1
KEY.BRL_DOT2 = 0x1f2
KEY.BRL_DOT3 = 0x1f3
KEY.BRL_DOT4 = 0x1f4
KEY.BRL_DOT5 = 0x1f5
KEY.BRL_DOT6 = 0x1f6
KEY.BRL_DOT7 = 0x1f7
KEY.BRL_DOT8 = 0x1f8
KEY.BRL_DOT9 = 0x1f9
KEY.BRL_DOT10 = 0x1fa
KEY.NUMERIC_0 = 0x200
KEY.NUMERIC_1 = 0x201
KEY.NUMERIC_2 = 0x202
KEY.NUMERIC_3 = 0x203
KEY.NUMERIC_4 = 0x204
KEY.NUMERIC_5 = 0x205
KEY.NUMERIC_6 = 0x206
KEY.NUMERIC_7 = 0x207
KEY.NUMERIC_8 = 0x208
KEY.NUMERIC_9 = 0x209
KEY.NUMERIC_STAR = 0x20a
KEY.NUMERIC_POUND = 0x20b
KEY.NUMERIC_A = 0x20c
KEY.NUMERIC_B = 0x20d
KEY.NUMERIC_C = 0x20e
KEY.NUMERIC_D = 0x20f
KEY.CAMERA_FOCUS = 0x210
KEY.WPS_BUTTON = 0x211
KEY.TOUCHPAD_TOGGLE = 0x212
KEY.TOUCHPAD_ON = 0x213
KEY.TOUCHPAD_OFF = 0x214
KEY.CAMERA_ZOOMIN = 0x215
KEY.CAMERA_ZOOMOUT = 0x216
KEY.CAMERA_UP = 0x217
KEY.CAMERA_DOWN = 0x218
KEY.CAMERA_LEFT = 0x219
KEY.CAMERA_RIGHT = 0x21a
KEY.ATTENDANT_ON = 0x21b
KEY.ATTENDANT_OFF = 0x21c
KEY.ATTENDANT_TOGGLE = 0x21d
KEY.LIGHTS_TOGGLE = 0x21e
BTN.DPAD_UP = 0x220
BTN.DPAD_DOWN = 0x221
BTN.DPAD_LEFT = 0x222
BTN.DPAD_RIGHT = 0x223
KEY.ALS_TOGGLE = 0x230
KEY.BUTTONCONFIG = 0x240
KEY.TASKMANAGER = 0x241
KEY.JOURNAL = 0x242
KEY.CONTROLPANEL = 0x243
KEY.APPSELECT = 0x244
KEY.SCREENSAVER = 0x245
KEY.VOICECOMMAND = 0x246
KEY.ASSISTANT = 0x247
KEY.BRIGHTNESS_MIN = 0x250
KEY.BRIGHTNESS_MAX = 0x251
KEY.KBDINPUTASSIST_PREV = 0x260
KEY.KBDINPUTASSIST_NEXT = 0x261
KEY.KBDINPUTASSIST_PREVGROUP = 0x262
KEY.KBDINPUTASSIST_NEXTGROUP = 0x263
KEY.KBDINPUTASSIST_ACCEPT = 0x264
KEY.KBDINPUTASSIST_CANCEL = 0x265
KEY.RIGHT_UP = 0x266
KEY.RIGHT_DOWN = 0x267
KEY.LEFT_UP = 0x268
KEY.LEFT_DOWN = 0x269
KEY.ROOT_MENU = 0x26a
KEY.MEDIA_TOP_MENU = 0x26b
KEY.NUMERIC_11 = 0x26c
KEY.NUMERIC_12 = 0x26d
KEY.AUDIO_DESC = 0x26e
KEY. 3D_MODE = 0x26f
KEY.NEXT_FAVORITE = 0x270
KEY.STOP_RECORD = 0x271
KEY.PAUSE_RECORD = 0x272
KEY.VOD = 0x273
KEY.UNMUTE = 0x274
KEY.FASTREVERSE = 0x275
KEY.SLOWREVERSE = 0x276
KEY.DATA = 0x277
KEY.ONSCREEN_KEYBOARD = 0x278
BTN.TRIGGER_HAPPY = 0x2c0
BTN.TRIGGER_HAPPY1 = 0x2c0
BTN.TRIGGER_HAPPY2 = 0x2c1
BTN.TRIGGER_HAPPY3 = 0x2c2
BTN.TRIGGER_HAPPY4 = 0x2c3
BTN.TRIGGER_HAPPY5 = 0x2c4
BTN.TRIGGER_HAPPY6 = 0x2c5
BTN.TRIGGER_HAPPY7 = 0x2c6
BTN.TRIGGER_HAPPY8 = 0x2c7
BTN.TRIGGER_HAPPY9 = 0x2c8
BTN.TRIGGER_HAPPY10 = 0x2c9
BTN.TRIGGER_HAPPY11 = 0x2ca
BTN.TRIGGER_HAPPY12 = 0x2cb
BTN.TRIGGER_HAPPY13 = 0x2cc
BTN.TRIGGER_HAPPY14 = 0x2cd
BTN.TRIGGER_HAPPY15 = 0x2ce
BTN.TRIGGER_HAPPY16 = 0x2cf
BTN.TRIGGER_HAPPY17 = 0x2d0
BTN.TRIGGER_HAPPY18 = 0x2d1
BTN.TRIGGER_HAPPY19 = 0x2d2
BTN.TRIGGER_HAPPY20 = 0x2d3
BTN.TRIGGER_HAPPY21 = 0x2d4
BTN.TRIGGER_HAPPY22 = 0x2d5
BTN.TRIGGER_HAPPY23 = 0x2d6
BTN.TRIGGER_HAPPY24 = 0x2d7
BTN.TRIGGER_HAPPY25 = 0x2d8
BTN.TRIGGER_HAPPY26 = 0x2d9
BTN.TRIGGER_HAPPY27 = 0x2da
BTN.TRIGGER_HAPPY28 = 0x2db
BTN.TRIGGER_HAPPY29 = 0x2dc
BTN.TRIGGER_HAPPY30 = 0x2dd
BTN.TRIGGER_HAPPY31 = 0x2de
BTN.TRIGGER_HAPPY32 = 0x2df
BTN.TRIGGER_HAPPY33 = 0x2e0
BTN.TRIGGER_HAPPY34 = 0x2e1
BTN.TRIGGER_HAPPY35 = 0x2e2
BTN.TRIGGER_HAPPY36 = 0x2e3
BTN.TRIGGER_HAPPY37 = 0x2e4
BTN.TRIGGER_HAPPY38 = 0x2e5
BTN.TRIGGER_HAPPY39 = 0x2e6
BTN.TRIGGER_HAPPY40 = 0x2e7
KEY.MIN_INTERESTING = KEY_MUTE
KEY.MAX = 0x2ff
KEY.CNT = (KEY_MAX+1)
ABS.X = 0x00
ABS.Y = 0x01
ABS.Z = 0x02
ABS.RX = 0x03
ABS.RY = 0x04
ABS.RZ = 0x05
ABS.THROTTLE = 0x06
ABS.RUDDER = 0x07
ABS.WHEEL = 0x08
ABS.GAS = 0x09
ABS.BRAKE = 0x0a
ABS.HAT0X = 0x10
ABS.HAT0Y = 0x11
ABS.HAT1X = 0x12
ABS.HAT1Y = 0x13
ABS.HAT2X = 0x14
ABS.HAT2Y = 0x15
ABS.HAT3X = 0x16
ABS.HAT3Y = 0x17
ABS.PRESSURE = 0x18
ABS.DISTANCE = 0x19
ABS.TILT_X = 0x1a
ABS.TILT_Y = 0x1b
ABS.TOOL_WIDTH = 0x1c
ABS.VOLUME = 0x20
ABS.MISC = 0x28
ABS.MT_SLOT = 0x2f
ABS.MT_TOUCH_MAJOR = 0x30
ABS.MT_TOUCH_MINOR = 0x31
ABS.MT_WIDTH_MAJOR = 0x32
ABS.MT_WIDTH_MINOR = 0x33
ABS.MT_ORIENTATION = 0x34
ABS.MT_POSITION_X = 0x35
ABS.MT_POSITION_Y = 0x36
ABS.MT_TOOL_TYPE = 0x37
ABS.MT_BLOB_ID = 0x38
ABS.MT_TRACKING_ID = 0x39
ABS.MT_PRESSURE = 0x3a
ABS.MT_DISTANCE = 0x3b
ABS.MT_TOOL_X = 0x3c
ABS.MT_TOOL_Y = 0x3d
ABS.MAX = 0x3f
ABS.CNT = (ABS_MAX+1)
SW.LID = 0x00
SW.TABLET_MODE = 0x01
SW.HEADPHONE_INSERT = 0x02
SW.RFKILL_ALL = 0x03
SW.RADIO = SW_RFKILL_ALL
SW.MICROPHONE_INSERT = 0x04
SW.DOCK = 0x05
SW.LINEOUT_INSERT = 0x06
SW.JACK_PHYSICAL_INSERT = 0x07
SW.VIDEOOUT_INSERT = 0x08
SW.CAMERA_LENS_COVER = 0x09
SW.KEYPAD_SLIDE = 0x0a
SW.FRONT_PROXIMITY = 0x0b
SW.ROTATE_LOCK = 0x0c
SW.LINEIN_INSERT = 0x0d
SW.MUTE_DEVICE = 0x0e
SW.PEN_INSERTED = 0x0f
SW.MAX = 0x0f
SW.CNT = (SW_MAX+1)
MSC.SERIAL = 0x00
MSC.PULSELED = 0x01
MSC.GESTURE = 0x02
MSC.RAW = 0x03
MSC.SCAN = 0x04
MSC.TIMESTAMP = 0x05
MSC.MAX = 0x07
MSC.CNT = (MSC_MAX+1)
LED.NUML = 0x00
LED.CAPSL = 0x01
LED.SCROLLL = 0x02
LED.COMPOSE = 0x03
LED.KANA = 0x04
LED.SLEEP = 0x05
LED.SUSPEND = 0x06
LED.MUTE = 0x07
LED.MISC = 0x08
LED.MAIL = 0x09
LED.CHARGING = 0x0a
LED.MAX = 0x0f
LED.CNT = (LED_MAX+1)
REP.DELAY = 0x00
REP.PERIOD = 0x01
REP.MAX = 0x01
REP.CNT = (REP_MAX+1)
SND.CLICK = 0x00
SND.BELL = 0x01
SND.TONE = 0x02
SND.MAX = 0x07
SND.CNT = (SND_MAX+1)
#!/bin/sh
cp /usr/include/linux/input-event-codes.h inp.h
echo > defs.h
for thing in KEY BTN LED REP SND MSC SW ABS EV SYN INPUT_PROP ; do
sed -e "s/#define[[:space:]]\{1,\}${thing}_\([^[:space:]]*\)[[:space:]]\{1,\}\([^[:space:]/]*\)/${thing}\(\1,\2\)/g" -i inp.h
echo "#define ${thing}(a,b) ${thing}.a = b">>defs.h
done
#example gcc invocation. -P suppresses line markers
# gcc -include defs.h -P -E inp.h
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
/*
* Input event codes
*
* *** IMPORTANT ***
* This file is not only included from C-code but also from devicetree source
* files. As such this file MUST only contain comments and defines.
*
* Copyright (c) 1999-2002 Vojtech Pavlik
* Copyright (c) 2015 Hans de Goede <hdegoede@redhat.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published by
* the Free Software Foundation.
*/
#ifndef _INPUT_EVENT_CODES_H
#define _INPUT_EVENT_CODES_H
/*
* Device properties and quirks
*/
INPUT_PROP(POINTER,0x00) /* needs a pointer */
INPUT_PROP(DIRECT,0x01) /* direct input devices */
INPUT_PROP(BUTTONPAD,0x02) /* has button(s) under pad */
INPUT_PROP(SEMI_MT,0x03) /* touch rectangle only */
INPUT_PROP(TOPBUTTONPAD,0x04) /* softbuttons at top of pad */
INPUT_PROP(POINTING_STICK,0x05) /* is a pointing stick */
INPUT_PROP(ACCELEROMETER,0x06) /* has accelerometer */
INPUT_PROP(MAX,0x1f)
INPUT_PROP(CNT,(INPUT_PROP_MAX) + 1)
/*
* Event types
*/
EV(SYN,0x00)
EV(KEY,0x01)
EV(REL,0x02)
EV(ABS,0x03)
EV(MSC,0x04)
EV(SW,0x05)
EV(LED,0x11)
EV(SND,0x12)
EV(REP,0x14)
EV(FF,0x15)
EV(PWR,0x16)
EV(FF_STATUS,0x17)
EV(MAX,0x1f)
EV(CNT,(EV_MAX+1))
/*
* Synchronization events.
*/
SYN(REPORT,0)
SYN(CONFIG,1)
SYN(MT_REPORT,2)
SYN(DROPPED,3)
SYN(MAX,0xf)
SYN(CNT,(SYN_MAX+1))
/*
* Keys and buttons
*
* Most of the keys/buttons are modeled after USB HUT 1.12
* (see http://www.usb.org/developers/hidpage).
* Abbreviations in the comments:
* AC - Application Control
* AL - Application Launch Button
* SC - System Control
*/
KEY(RESERVED,0)
KEY(ESC,1)
KEY(1,2)
KEY(2,3)
KEY(3,4)
KEY(4,5)
KEY(5,6)
KEY(6,7)
KEY(7,8)
KEY(8,9)
KEY(9,10)
KEY(0,11)
KEY(MINUS,12)
KEY(EQUAL,13)
KEY(BACKSPACE,14)
KEY(TAB,15)
KEY(Q,16)
KEY(W,17)
KEY(E,18)
KEY(R,19)
KEY(T,20)
KEY(Y,21)
KEY(U,22)
KEY(I,23)
KEY(O,24)
KEY(P,25)
KEY(LEFTBRACE,26)
KEY(RIGHTBRACE,27)
KEY(ENTER,28)
KEY(LEFTCTRL,29)
KEY(A,30)
KEY(S,31)
KEY(D,32)
KEY(F,33)
KEY(G,34)
KEY(H,35)
KEY(J,36)
KEY(K,37)
KEY(L,38)
KEY(SEMICOLON,39)
KEY(APOSTROPHE,40)
KEY(GRAVE,41)
KEY(LEFTSHIFT,42)
KEY(BACKSLASH,43)
KEY(Z,44)
KEY(X,45)
KEY(C,46)
KEY(V,47)
KEY(B,48)
KEY(N,49)
KEY(M,50)
KEY(COMMA,51)
KEY(DOT,52)
KEY(SLASH,53)
KEY(RIGHTSHIFT,54)
KEY(KPASTERISK,55)
KEY(LEFTALT,56)
KEY(SPACE,57)
KEY(CAPSLOCK,58)
KEY(F1,59)
KEY(F2,60)
KEY(F3,61)
KEY(F4,62)
KEY(F5,63)
KEY(F6,64)
KEY(F7,65)
KEY(F8,66)
KEY(F9,67)
KEY(F10,68)
KEY(NUMLOCK,69)
KEY(SCROLLLOCK,70)
KEY(KP7,71)
KEY(KP8,72)
KEY(KP9,73)
KEY(KPMINUS,74)
KEY(KP4,75)
KEY(KP5,76)
KEY(KP6,77)
KEY(KPPLUS,78)
KEY(KP1,79)
KEY(KP2,80)
KEY(KP3,81)
KEY(KP0,82)
KEY(KPDOT,83)
KEY(ZENKAKUHANKAKU,85)
KEY(102ND,86)
KEY(F11,87)
KEY(F12,88)
KEY(RO,89)
KEY(KATAKANA,90)
KEY(HIRAGANA,91)
KEY(HENKAN,92)
KEY(KATAKANAHIRAGANA,93)
KEY(MUHENKAN,94)
KEY(KPJPCOMMA,95)
KEY(KPENTER,96)
KEY(RIGHTCTRL,97)
KEY(KPSLASH,98)
KEY(SYSRQ,99)
KEY(RIGHTALT,100)
KEY(LINEFEED,101)
KEY(HOME,102)
KEY(UP,103)
KEY(PAGEUP,104)
KEY(LEFT,105)
KEY(RIGHT,106)
KEY(END,107)
KEY(DOWN,108)
KEY(PAGEDOWN,109)
KEY(INSERT,110)
KEY(DELETE,111)
KEY(MACRO,112)
KEY(MUTE,113)
KEY(VOLUMEDOWN,114)
KEY(VOLUMEUP,115)
KEY(POWER,116) /* SC System Power Down */
KEY(KPEQUAL,117)
KEY(KPPLUSMINUS,118)
KEY(PAUSE,119)
KEY(SCALE,120) /* AL Compiz Scale (Expose) */
KEY(KPCOMMA,121)
KEY(HANGEUL,122)
KEY(HANGUEL,KEY_HANGEUL)
KEY(HANJA,123)
KEY(YEN,124)
KEY(LEFTMETA,125)
KEY(RIGHTMETA,126)
KEY(COMPOSE,127)
KEY(STOP,128) /* AC Stop */
KEY(AGAIN,129)
KEY(PROPS,130) /* AC Properties */
KEY(UNDO,131) /* AC Undo */
KEY(FRONT,132)
KEY(COPY,133) /* AC Copy */
KEY(OPEN,134) /* AC Open */
KEY(PASTE,135) /* AC Paste */
KEY(FIND,136) /* AC Search */
KEY(CUT,137) /* AC Cut */
KEY(HELP,138) /* AL Integrated Help Center */
KEY(MENU,139) /* Menu (show menu) */
KEY(CALC,140) /* AL Calculator */
KEY(SETUP,141)
KEY(SLEEP,142) /* SC System Sleep */
KEY(WAKEUP,143) /* System Wake Up */
KEY(FILE,144) /* AL Local Machine Browser */
KEY(SENDFILE,145)
KEY(DELETEFILE,146)
KEY(XFER,147)
KEY(PROG1,148)
KEY(PROG2,149)
KEY(WWW,150) /* AL Internet Browser */
KEY(MSDOS,151)
KEY(COFFEE,152) /* AL Terminal Lock/Screensaver */
KEY(SCREENLOCK,KEY_COFFEE)
KEY(ROTATE_DISPLAY,153) /* Display orientation for e.g. tablets */
KEY(DIRECTION,KEY_ROTATE_DISPLAY)
KEY(CYCLEWINDOWS,154)
KEY(MAIL,155)
KEY(BOOKMARKS,156) /* AC Bookmarks */
KEY(COMPUTER,157)
KEY(BACK,158) /* AC Back */
KEY(FORWARD,159) /* AC Forward */
KEY(CLOSECD,160)
KEY(EJECTCD,161)
KEY(EJECTCLOSECD,162)
KEY(NEXTSONG,163)
KEY(PLAYPAUSE,164)
KEY(PREVIOUSSONG,165)
KEY(STOPCD,166)
KEY(RECORD,167)
KEY(REWIND,168)
KEY(PHONE,169) /* Media Select Telephone */
KEY(ISO,170)
KEY(CONFIG,171) /* AL Consumer Control Configuration */
KEY(HOMEPAGE,172) /* AC Home */
KEY(REFRESH,173) /* AC Refresh */
KEY(EXIT,174) /* AC Exit */
KEY(MOVE,175)
KEY(EDIT,176)
KEY(SCROLLUP,177)
KEY(SCROLLDOWN,178)
KEY(KPLEFTPAREN,179)
KEY(KPRIGHTPAREN,180)
KEY(NEW,181) /* AC New */
KEY(REDO,182) /* AC Redo/Repeat */
KEY(F13,183)
KEY(F14,184)
KEY(F15,185)
KEY(F16,186)
KEY(F17,187)
KEY(F18,188)
KEY(F19,189)
KEY(F20,190)
KEY(F21,191)
KEY(F22,192)
KEY(F23,193)
KEY(F24,194)
KEY(PLAYCD,200)
KEY(PAUSECD,201)
KEY(PROG3,202)
KEY(PROG4,203)
KEY(DASHBOARD,204) /* AL Dashboard */
KEY(SUSPEND,205)
KEY(CLOSE,206) /* AC Close */
KEY(PLAY,207)
KEY(FASTFORWARD,208)
KEY(BASSBOOST,209)
KEY(PRINT,210) /* AC Print */
KEY(HP,211)
KEY(CAMERA,212)
KEY(SOUND,213)
KEY(QUESTION,214)
KEY(EMAIL,215)
KEY(CHAT,216)
KEY(SEARCH,217)
KEY(CONNECT,218)
KEY(FINANCE,219) /* AL Checkbook/Finance */
KEY(SPORT,220)
KEY(SHOP,221)
KEY(ALTERASE,222)
KEY(CANCEL,223) /* AC Cancel */
KEY(BRIGHTNESSDOWN,224)
KEY(BRIGHTNESSUP,225)
KEY(MEDIA,226)
KEY(SWITCHVIDEOMODE,227) /* Cycle between available video
outputs (Monitor/LCD/TV-out/etc) */
KEY(KBDILLUMTOGGLE,228)
KEY(KBDILLUMDOWN,229)
KEY(KBDILLUMUP,230)
KEY(SEND,231) /* AC Send */
KEY(REPLY,232) /* AC Reply */
KEY(FORWARDMAIL,233) /* AC Forward Msg */
KEY(SAVE,234) /* AC Save */
KEY(DOCUMENTS,235)
KEY(BATTERY,236)
KEY(BLUETOOTH,237)
KEY(WLAN,238)
KEY(UWB,239)
KEY(UNKNOWN,240)
KEY(VIDEO_NEXT,241) /* drive next video source */
KEY(VIDEO_PREV,242) /* drive previous video source */
KEY(BRIGHTNESS_CYCLE,243) /* brightness up, after max is min */
KEY(BRIGHTNESS_AUTO,244) /* Set Auto Brightness: manual
brightness control is off,
rely on ambient */
KEY(BRIGHTNESS_ZERO,KEY_BRIGHTNESS_AUTO)
KEY(DISPLAY_OFF,245) /* display device to off state */
KEY(WWAN,246) /* Wireless WAN (LTE, UMTS, GSM, etc.) */
KEY(WIMAX,KEY_WWAN)
KEY(RFKILL,247) /* Key that controls all radios */
KEY(MICMUTE,248) /* Mute / unmute the microphone */
/* Code 255 is reserved for special needs of AT keyboard driver */
BTN(MISC,0x100)
BTN(0,0x100)
BTN(1,0x101)
BTN(2,0x102)
BTN(3,0x103)
BTN(4,0x104)
BTN(5,0x105)
BTN(6,0x106)
BTN(7,0x107)
BTN(8,0x108)
BTN(9,0x109)
BTN(MOUSE,0x110)
BTN(LEFT,0x110)
BTN(RIGHT,0x111)
BTN(MIDDLE,0x112)
BTN(SIDE,0x113)
BTN(EXTRA,0x114)
BTN(FORWARD,0x115)
BTN(BACK,0x116)
BTN(TASK,0x117)
BTN(JOYSTICK,0x120)
BTN(TRIGGER,0x120)
BTN(THUMB,0x121)
BTN(THUMB2,0x122)
BTN(TOP,0x123)
BTN(TOP2,0x124)
BTN(PINKIE,0x125)
BTN(BASE,0x126)
BTN(BASE2,0x127)
BTN(BASE3,0x128)
BTN(BASE4,0x129)
BTN(BASE5,0x12a)
BTN(BASE6,0x12b)
BTN(DEAD,0x12f)
BTN(GAMEPAD,0x130)
BTN(SOUTH,0x130)
BTN(A,BTN_SOUTH)
BTN(EAST,0x131)
BTN(B,BTN_EAST)
BTN(C,0x132)
BTN(NORTH,0x133)
BTN(X,BTN_NORTH)
BTN(WEST,0x134)
BTN(Y,BTN_WEST)
BTN(Z,0x135)
BTN(TL,0x136)
BTN(TR,0x137)
BTN(TL2,0x138)
BTN(TR2,0x139)
BTN(SELECT,0x13a)
BTN(START,0x13b)
BTN(MODE,0x13c)
BTN(THUMBL,0x13d)
BTN(THUMBR,0x13e)
BTN(DIGI,0x140)
BTN(TOOL_PEN,0x140)
BTN(TOOL_RUBBER,0x141)
BTN(TOOL_BRUSH,0x142)
BTN(TOOL_PENCIL,0x143)
BTN(TOOL_AIRBRUSH,0x144)
BTN(TOOL_FINGER,0x145)
BTN(TOOL_MOUSE,0x146)
BTN(TOOL_LENS,0x147)
BTN(TOOL_QUINTTAP,0x148) /* Five fingers on trackpad */
BTN(TOUCH,0x14a)
BTN(STYLUS,0x14b)
BTN(STYLUS2,0x14c)
BTN(TOOL_DOUBLETAP,0x14d)
BTN(TOOL_TRIPLETAP,0x14e)
BTN(TOOL_QUADTAP,0x14f) /* Four fingers on trackpad */
BTN(WHEEL,0x150)
BTN(GEAR_DOWN,0x150)
BTN(GEAR_UP,0x151)
KEY(OK,0x160)
KEY(SELECT,0x161)
KEY(GOTO,0x162)
KEY(CLEAR,0x163)
KEY(POWER2,0x164)
KEY(OPTION,0x165)
KEY(INFO,0x166) /* AL OEM Features/Tips/Tutorial */
KEY(TIME,0x167)
KEY(VENDOR,0x168)
KEY(ARCHIVE,0x169)
KEY(PROGRAM,0x16a) /* Media Select Program Guide */
KEY(CHANNEL,0x16b)
KEY(FAVORITES,0x16c)
KEY(EPG,0x16d)
KEY(PVR,0x16e) /* Media Select Home */
KEY(MHP,0x16f)
KEY(LANGUAGE,0x170)
KEY(TITLE,0x171)
KEY(SUBTITLE,0x172)
KEY(ANGLE,0x173)
KEY(ZOOM,0x174)
KEY(MODE,0x175)
KEY(KEYBOARD,0x176)
KEY(SCREEN,0x177)
KEY(PC,0x178) /* Media Select Computer */
KEY(TV,0x179) /* Media Select TV */
KEY(TV2,0x17a) /* Media Select Cable */
KEY(VCR,0x17b) /* Media Select VCR */
KEY(VCR2,0x17c) /* VCR Plus */
KEY(SAT,0x17d) /* Media Select Satellite */
KEY(SAT2,0x17e)
KEY(CD,0x17f) /* Media Select CD */
KEY(TAPE,0x180) /* Media Select Tape */
KEY(RADIO,0x181)
KEY(TUNER,0x182) /* Media Select Tuner */
KEY(PLAYER,0x183)
KEY(TEXT,0x184)
KEY(DVD,0x185) /* Media Select DVD */
KEY(AUX,0x186)
KEY(MP3,0x187)
KEY(AUDIO,0x188) /* AL Audio Browser */
KEY(VIDEO,0x189) /* AL Movie Browser */
KEY(DIRECTORY,0x18a)
KEY(LIST,0x18b)
KEY(MEMO,0x18c) /* Media Select Messages */
KEY(CALENDAR,0x18d)
KEY(RED,0x18e)
KEY(GREEN,0x18f)
KEY(YELLOW,0x190)
KEY(BLUE,0x191)
KEY(CHANNELUP,0x192) /* Channel Increment */
KEY(CHANNELDOWN,0x193) /* Channel Decrement */
KEY(FIRST,0x194)
KEY(LAST,0x195) /* Recall Last */
KEY(AB,0x196)
KEY(NEXT,0x197)
KEY(RESTART,0x198)
KEY(SLOW,0x199)
KEY(SHUFFLE,0x19a)
KEY(BREAK,0x19b)
KEY(PREVIOUS,0x19c)
KEY(DIGITS,0x19d)
KEY(TEEN,0x19e)
KEY(TWEN,0x19f)
KEY(VIDEOPHONE,0x1a0) /* Media Select Video Phone */
KEY(GAMES,0x1a1) /* Media Select Games */
KEY(ZOOMIN,0x1a2) /* AC Zoom In */
KEY(ZOOMOUT,0x1a3) /* AC Zoom Out */
KEY(ZOOMRESET,0x1a4) /* AC Zoom */
KEY(WORDPROCESSOR,0x1a5) /* AL Word Processor */
KEY(EDITOR,0x1a6) /* AL Text Editor */
KEY(SPREADSHEET,0x1a7) /* AL Spreadsheet */
KEY(GRAPHICSEDITOR,0x1a8) /* AL Graphics Editor */
KEY(PRESENTATION,0x1a9) /* AL Presentation App */
KEY(DATABASE,0x1aa) /* AL Database App */
KEY(NEWS,0x1ab) /* AL Newsreader */
KEY(VOICEMAIL,0x1ac) /* AL Voicemail */
KEY(ADDRESSBOOK,0x1ad) /* AL Contacts/Address Book */
KEY(MESSENGER,0x1ae) /* AL Instant Messaging */
KEY(DISPLAYTOGGLE,0x1af) /* Turn display (LCD) on and off */
KEY(BRIGHTNESS_TOGGLE,KEY_DISPLAYTOGGLE)
KEY(SPELLCHECK,0x1b0) /* AL Spell Check */
KEY(LOGOFF,0x1b1) /* AL Logoff */
KEY(DOLLAR,0x1b2)
KEY(EURO,0x1b3)
KEY(FRAMEBACK,0x1b4) /* Consumer - transport controls */
KEY(FRAMEFORWARD,0x1b5)
KEY(CONTEXT_MENU,0x1b6) /* GenDesc - system context menu */
KEY(MEDIA_REPEAT,0x1b7) /* Consumer - transport control */
KEY(10CHANNELSUP,0x1b8) /* 10 channels up (10+) */
KEY(10CHANNELSDOWN,0x1b9) /* 10 channels down (10-) */
KEY(IMAGES,0x1ba) /* AL Image Browser */
KEY(DEL_EOL,0x1c0)
KEY(DEL_EOS,0x1c1)
KEY(INS_LINE,0x1c2)
KEY(DEL_LINE,0x1c3)
KEY(FN,0x1d0)
KEY(FN_ESC,0x1d1)
KEY(FN_F1,0x1d2)
KEY(FN_F2,0x1d3)
KEY(FN_F3,0x1d4)
KEY(FN_F4,0x1d5)
KEY(FN_F5,0x1d6)
KEY(FN_F6,0x1d7)
KEY(FN_F7,0x1d8)
KEY(FN_F8,0x1d9)
KEY(FN_F9,0x1da)
KEY(FN_F10,0x1db)
KEY(FN_F11,0x1dc)
KEY(FN_F12,0x1dd)
KEY(FN_1,0x1de)
KEY(FN_2,0x1df)
KEY(FN_D,0x1e0)
KEY(FN_E,0x1e1)
KEY(FN_F,0x1e2)
KEY(FN_S,0x1e3)
KEY(FN_B,0x1e4)
KEY(BRL_DOT1,0x1f1)
KEY(BRL_DOT2,0x1f2)
KEY(BRL_DOT3,0x1f3)
KEY(BRL_DOT4,0x1f4)
KEY(BRL_DOT5,0x1f5)
KEY(BRL_DOT6,0x1f6)
KEY(BRL_DOT7,0x1f7)
KEY(BRL_DOT8,0x1f8)
KEY(BRL_DOT9,0x1f9)
KEY(BRL_DOT10,0x1fa)
KEY(NUMERIC_0,0x200) /* used by phones, remote controls, */
KEY(NUMERIC_1,0x201) /* and other keypads */
KEY(NUMERIC_2,0x202)
KEY(NUMERIC_3,0x203)
KEY(NUMERIC_4,0x204)
KEY(NUMERIC_5,0x205)
KEY(NUMERIC_6,0x206)
KEY(NUMERIC_7,0x207)
KEY(NUMERIC_8,0x208)
KEY(NUMERIC_9,0x209)
KEY(NUMERIC_STAR,0x20a)
KEY(NUMERIC_POUND,0x20b)
KEY(NUMERIC_A,0x20c) /* Phone key A - HUT Telephony 0xb9 */
KEY(NUMERIC_B,0x20d)
KEY(NUMERIC_C,0x20e)
KEY(NUMERIC_D,0x20f)
KEY(CAMERA_FOCUS,0x210)
KEY(WPS_BUTTON,0x211) /* WiFi Protected Setup key */
KEY(TOUCHPAD_TOGGLE,0x212) /* Request switch touchpad on or off */
KEY(TOUCHPAD_ON,0x213)
KEY(TOUCHPAD_OFF,0x214)
KEY(CAMERA_ZOOMIN,0x215)
KEY(CAMERA_ZOOMOUT,0x216)
KEY(CAMERA_UP,0x217)
KEY(CAMERA_DOWN,0x218)
KEY(CAMERA_LEFT,0x219)
KEY(CAMERA_RIGHT,0x21a)
KEY(ATTENDANT_ON,0x21b)
KEY(ATTENDANT_OFF,0x21c)
KEY(ATTENDANT_TOGGLE,0x21d) /* Attendant call on or off */
KEY(LIGHTS_TOGGLE,0x21e) /* Reading light on or off */
BTN(DPAD_UP,0x220)
BTN(DPAD_DOWN,0x221)
BTN(DPAD_LEFT,0x222)
BTN(DPAD_RIGHT,0x223)
KEY(ALS_TOGGLE,0x230) /* Ambient light sensor */
KEY(BUTTONCONFIG,0x240) /* AL Button Configuration */
KEY(TASKMANAGER,0x241) /* AL Task/Project Manager */
KEY(JOURNAL,0x242) /* AL Log/Journal/Timecard */
KEY(CONTROLPANEL,0x243) /* AL Control Panel */
KEY(APPSELECT,0x244) /* AL Select Task/Application */
KEY(SCREENSAVER,0x245) /* AL Screen Saver */
KEY(VOICECOMMAND,0x246) /* Listening Voice Command */
KEY(ASSISTANT,0x247) /* AL Context-aware desktop assistant */
KEY(BRIGHTNESS_MIN,0x250) /* Set Brightness to Minimum */
KEY(BRIGHTNESS_MAX,0x251) /* Set Brightness to Maximum */
KEY(KBDINPUTASSIST_PREV,0x260)
KEY(KBDINPUTASSIST_NEXT,0x261)
KEY(KBDINPUTASSIST_PREVGROUP,0x262)
KEY(KBDINPUTASSIST_NEXTGROUP,0x263)
KEY(KBDINPUTASSIST_ACCEPT,0x264)
KEY(KBDINPUTASSIST_CANCEL,0x265)
/* Diagonal movement keys */
KEY(RIGHT_UP,0x266)
KEY(RIGHT_DOWN,0x267)
KEY(LEFT_UP,0x268)
KEY(LEFT_DOWN,0x269)
KEY(ROOT_MENU,0x26a) /* Show Device's Root Menu */
/* Show Top Menu of the Media (e.g. DVD) */
KEY(MEDIA_TOP_MENU,0x26b)
KEY(NUMERIC_11,0x26c)
KEY(NUMERIC_12,0x26d)
/*
* Toggle Audio Description: refers to an audio service that helps blind and
* visually impaired consumers understand the action in a program. Note: in
* some countries this is referred to as "Video Description".
*/
KEY(AUDIO_DESC,0x26e)
KEY(3D_MODE,0x26f)
KEY(NEXT_FAVORITE,0x270)
KEY(STOP_RECORD,0x271)
KEY(PAUSE_RECORD,0x272)
KEY(VOD,0x273) /* Video on Demand */
KEY(UNMUTE,0x274)
KEY(FASTREVERSE,0x275)
KEY(SLOWREVERSE,0x276)
/*
* Control a data application associated with the currently viewed channel,
* e.g. teletext or data broadcast application (MHEG, MHP, HbbTV, etc.)
*/
KEY(DATA,0x277)
KEY(ONSCREEN_KEYBOARD,0x278)
BTN(TRIGGER_HAPPY,0x2c0)
BTN(TRIGGER_HAPPY1,0x2c0)
BTN(TRIGGER_HAPPY2,0x2c1)
BTN(TRIGGER_HAPPY3,0x2c2)
BTN(TRIGGER_HAPPY4,0x2c3)
BTN(TRIGGER_HAPPY5,0x2c4)
BTN(TRIGGER_HAPPY6,0x2c5)
BTN(TRIGGER_HAPPY7,0x2c6)
BTN(TRIGGER_HAPPY8,0x2c7)
BTN(TRIGGER_HAPPY9,0x2c8)
BTN(TRIGGER_HAPPY10,0x2c9)
BTN(TRIGGER_HAPPY11,0x2ca)
BTN(TRIGGER_HAPPY12,0x2cb)
BTN(TRIGGER_HAPPY13,0x2cc)
BTN(TRIGGER_HAPPY14,0x2cd)
BTN(TRIGGER_HAPPY15,0x2ce)
BTN(TRIGGER_HAPPY16,0x2cf)
BTN(TRIGGER_HAPPY17,0x2d0)
BTN(TRIGGER_HAPPY18,0x2d1)
BTN(TRIGGER_HAPPY19,0x2d2)
BTN(TRIGGER_HAPPY20,0x2d3)
BTN(TRIGGER_HAPPY21,0x2d4)
BTN(TRIGGER_HAPPY22,0x2d5)
BTN(TRIGGER_HAPPY23,0x2d6)
BTN(TRIGGER_HAPPY24,0x2d7)
BTN(TRIGGER_HAPPY25,0x2d8)
BTN(TRIGGER_HAPPY26,0x2d9)
BTN(TRIGGER_HAPPY27,0x2da)
BTN(TRIGGER_HAPPY28,0x2db)
BTN(TRIGGER_HAPPY29,0x2dc)
BTN(TRIGGER_HAPPY30,0x2dd)
BTN(TRIGGER_HAPPY31,0x2de)
BTN(TRIGGER_HAPPY32,0x2df)
BTN(TRIGGER_HAPPY33,0x2e0)
BTN(TRIGGER_HAPPY34,0x2e1)
BTN(TRIGGER_HAPPY35,0x2e2)
BTN(TRIGGER_HAPPY36,0x2e3)
BTN(TRIGGER_HAPPY37,0x2e4)
BTN(TRIGGER_HAPPY38,0x2e5)
BTN(TRIGGER_HAPPY39,0x2e6)
BTN(TRIGGER_HAPPY40,0x2e7)
/* We avoid low common keys in module aliases so they don't get huge. */
KEY(MIN_INTERESTING,KEY_MUTE)
KEY(MAX,0x2ff)
KEY(CNT,(KEY_MAX+1))
/*
* Relative axes
*/
#define REL_X 0x00
#define REL_Y 0x01
#define REL_Z 0x02
#define REL_RX 0x03
#define REL_RY 0x04
#define REL_RZ 0x05
#define REL_HWHEEL 0x06
#define REL_DIAL 0x07
#define REL_WHEEL 0x08
#define REL_MISC 0x09
#define REL_MAX 0x0f
#define REL_CNT (REL_MAX+1)
/*
* Absolute axes
*/
ABS(X,0x00)
ABS(Y,0x01)
ABS(Z,0x02)
ABS(RX,0x03)
ABS(RY,0x04)
ABS(RZ,0x05)
ABS(THROTTLE,0x06)
ABS(RUDDER,0x07)
ABS(WHEEL,0x08)
ABS(GAS,0x09)
ABS(BRAKE,0x0a)
ABS(HAT0X,0x10)
ABS(HAT0Y,0x11)
ABS(HAT1X,0x12)
ABS(HAT1Y,0x13)
ABS(HAT2X,0x14)
ABS(HAT2Y,0x15)
ABS(HAT3X,0x16)
ABS(HAT3Y,0x17)
ABS(PRESSURE,0x18)
ABS(DISTANCE,0x19)
ABS(TILT_X,0x1a)
ABS(TILT_Y,0x1b)
ABS(TOOL_WIDTH,0x1c)
ABS(VOLUME,0x20)
ABS(MISC,0x28)
ABS(MT_SLOT,0x2f) /* MT slot being modified */
ABS(MT_TOUCH_MAJOR,0x30) /* Major axis of touching ellipse */
ABS(MT_TOUCH_MINOR,0x31) /* Minor axis (omit if circular) */
ABS(MT_WIDTH_MAJOR,0x32) /* Major axis of approaching ellipse */
ABS(MT_WIDTH_MINOR,0x33) /* Minor axis (omit if circular) */
ABS(MT_ORIENTATION,0x34) /* Ellipse orientation */
ABS(MT_POSITION_X,0x35) /* Center X touch position */
ABS(MT_POSITION_Y,0x36) /* Center Y touch position */
ABS(MT_TOOL_TYPE,0x37) /* Type of touching device */
ABS(MT_BLOB_ID,0x38) /* Group a set of packets as a blob */
ABS(MT_TRACKING_ID,0x39) /* Unique ID of initiated contact */
ABS(MT_PRESSURE,0x3a) /* Pressure on contact area */
ABS(MT_DISTANCE,0x3b) /* Contact hover distance */
ABS(MT_TOOL_X,0x3c) /* Center X tool position */
ABS(MT_TOOL_Y,0x3d) /* Center Y tool position */
ABS(MAX,0x3f)
ABS(CNT,(ABS_MAX+1))
/*
* Switch events
*/
SW(LID,0x00) /* set = lid shut */
SW(TABLET_MODE,0x01) /* set = tablet mode */
SW(HEADPHONE_INSERT,0x02) /* set = inserted */
SW(RFKILL_ALL,0x03) /* rfkill master switch, type "any"
set = radio enabled */
SW(RADIO,SW_RFKILL_ALL) /* deprecated */
SW(MICROPHONE_INSERT,0x04) /* set = inserted */
SW(DOCK,0x05) /* set = plugged into dock */
SW(LINEOUT_INSERT,0x06) /* set = inserted */
SW(JACK_PHYSICAL_INSERT,0x07) /* set = mechanical switch set */
SW(VIDEOOUT_INSERT,0x08) /* set = inserted */
SW(CAMERA_LENS_COVER,0x09) /* set = lens covered */
SW(KEYPAD_SLIDE,0x0a) /* set = keypad slide out */
SW(FRONT_PROXIMITY,0x0b) /* set = front proximity sensor active */
SW(ROTATE_LOCK,0x0c) /* set = rotate locked/disabled */
SW(LINEIN_INSERT,0x0d) /* set = inserted */
SW(MUTE_DEVICE,0x0e) /* set = device disabled */
SW(PEN_INSERTED,0x0f) /* set = pen inserted */
SW(MAX,0x0f)
SW(CNT,(SW_MAX+1))
/*
* Misc events
*/
MSC(SERIAL,0x00)
MSC(PULSELED,0x01)
MSC(GESTURE,0x02)
MSC(RAW,0x03)
MSC(SCAN,0x04)
MSC(TIMESTAMP,0x05)
MSC(MAX,0x07)
MSC(CNT,(MSC_MAX+1))
/*
* LEDs
*/
LED(NUML,0x00)
LED(CAPSL,0x01)
LED(SCROLLL,0x02)
LED(COMPOSE,0x03)
LED(KANA,0x04)
LED(SLEEP,0x05)
LED(SUSPEND,0x06)
LED(MUTE,0x07)
LED(MISC,0x08)
LED(MAIL,0x09)
LED(CHARGING,0x0a)
LED(MAX,0x0f)
LED(CNT,(LED_MAX+1))
/*
* Autorepeat values
*/
REP(DELAY,0x00)
REP(PERIOD,0x01)
REP(MAX,0x01)
REP(CNT,(REP_MAX+1))
/*
* Sounds
*/
SND(CLICK,0x00)
SND(BELL,0x01)
SND(TONE,0x02)
SND(MAX,0x07)
SND(CNT,(SND_MAX+1))
#endif
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment