GNU Linux-libre 4.14.251-gnu1
[releases.git] / drivers / staging / nvec / nvec-keytable.h
1 /*
2  * drivers/input/keyboard/tegra-nvec.c
3  *
4  * Keyboard class input driver for keyboards connected to an NvEc compliant
5  * embedded controller
6  *
7  * Copyright (c) 2009, NVIDIA Corporation.
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2 of the License, or
12  * (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful, but WITHOUT
15  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
16  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
17  * more details.
18  *
19  * You should have received a copy of the GNU General Public License along
20  * with this program; if not, see http://www.gnu.org/licenses
21  */
22
23 static unsigned short code_tab_102us[] = {
24         /* 0x00 */
25         KEY_GRAVE,
26         KEY_ESC,
27         KEY_1,
28         KEY_2,
29         KEY_3,
30         KEY_4,
31         KEY_5,
32         KEY_6,
33         KEY_7,
34         KEY_8,
35         KEY_9,
36         KEY_0,
37         KEY_MINUS,
38         KEY_EQUAL,
39         KEY_BACKSPACE,
40         KEY_TAB,
41         /* 0x10 */
42         KEY_Q,
43         KEY_W,
44         KEY_E,
45         KEY_R,
46         KEY_T,
47         KEY_Y,
48         KEY_U,
49         KEY_I,
50         KEY_O,
51         KEY_P,
52         KEY_LEFTBRACE,
53         KEY_RIGHTBRACE,
54         KEY_ENTER,
55         KEY_LEFTCTRL,
56         KEY_A,
57         KEY_S,
58         /* 0x20 */
59         KEY_D,
60         KEY_F,
61         KEY_G,
62         KEY_H,
63         KEY_J,
64         KEY_K,
65         KEY_L,
66         KEY_SEMICOLON,
67         KEY_APOSTROPHE,
68         KEY_GRAVE,
69         KEY_LEFTSHIFT,
70         KEY_BACKSLASH,
71         KEY_Z,
72         KEY_X,
73         KEY_C,
74         KEY_V,
75         /* 0x30 */
76         KEY_B,
77         KEY_N,
78         KEY_M,
79         KEY_COMMA,
80         KEY_DOT,
81         KEY_SLASH,
82         KEY_RIGHTSHIFT,
83         KEY_KPASTERISK,
84         KEY_LEFTALT,
85         KEY_SPACE,
86         KEY_CAPSLOCK,
87         KEY_F1,
88         KEY_F2,
89         KEY_F3,
90         KEY_F4,
91         KEY_F5,
92         /* 0x40 */
93         KEY_F6,
94         KEY_F7,
95         KEY_F8,
96         KEY_F9,
97         KEY_F10,
98         KEY_FN,
99         /* VK_SCROLL */
100         0,
101         KEY_KP7,
102         KEY_KP8,
103         KEY_KP9,
104         KEY_KPMINUS,
105         KEY_KP4,
106         KEY_KP5,
107         KEY_KP6,
108         KEY_KPPLUS,
109         KEY_KP1,
110         /* 0x50 */
111         KEY_KP2,
112         KEY_KP3,
113         KEY_KP0,
114         KEY_KPDOT,
115         /* VK_SNAPSHOT */
116         KEY_MENU,
117         KEY_POWER,
118         /* VK_OEM_102 */
119         KEY_102ND,
120         KEY_F11,
121         KEY_F12,
122         0,
123         0,
124         0,
125         0,
126         0,
127         0,
128         0,
129         /* 0x60 */
130         0,
131         0,
132         0,
133         KEY_SEARCH,
134         0,
135         0,
136         0,
137         0,
138         0,
139         0,
140         0,
141         0,
142         0,
143         0,
144         0,
145         0,
146         /* 0x70 */
147         0,
148         0,
149         0,
150         KEY_KP5,
151         0,
152         0,
153         0,
154         0,
155         0,
156         0,
157         0,
158         0,
159         0,
160         KEY_KP9,
161 };
162
163 static unsigned short extcode_tab_us102[] = {
164         0,
165         0,
166         0,
167         0,
168         0,
169         0,
170         0,
171         0,
172         0,
173         0,
174         0,
175         0,
176         0,
177         0,
178         0,
179         0,
180         /* 0x10 */
181         0,
182         0,
183         0,
184         0,
185         0,
186         0,
187         0,
188         0,
189         0,
190         /* VK_MEDIA_NEXT_TRACK */
191         0,
192         0,
193         0,
194         /* VK_RETURN */
195         0,
196         KEY_RIGHTCTRL,
197         0,
198         0,
199         /* 0x20 */
200         KEY_MUTE,
201         /* VK_LAUNCH_APP1 */
202         0,
203         /* VK_MEDIA_PLAY_PAUSE */
204         0,
205         0,
206         /* VK_MEDIA_STOP */
207         0,
208         0,
209         0,
210         0,
211         0,
212         0,
213         0,
214         0,
215         0,
216         0,
217         0,
218         0,
219         /* 0x30 */
220         KEY_VOLUMEUP,
221         0,
222         /* VK_BROWSER_HOME */
223         0,
224         0,
225         0,
226         /* VK_DIVIDE */
227         KEY_KPSLASH,
228         0,
229         /* VK_SNAPSHOT */
230         KEY_SYSRQ,
231         /* VK_RMENU */
232         KEY_RIGHTALT,
233         /* VK_OEM_NV_BACKLIGHT_UP */
234         0,
235         /* VK_OEM_NV_BACKLIGHT_DN */
236         0,
237         /* VK_OEM_NV_BACKLIGHT_AUTOTOGGLE */
238         0,
239         /* VK_OEM_NV_POWER_INFO */
240         0,
241         /* VK_OEM_NV_WIFI_TOGGLE */
242         0,
243         /* VK_OEM_NV_DISPLAY_SELECT */
244         0,
245         /* VK_OEM_NV_AIRPLANE_TOGGLE */
246         0,
247         /* 0x40 */
248         0,
249         KEY_LEFT,
250         0,
251         0,
252         0,
253         0,
254         KEY_CANCEL,
255         KEY_HOME,
256         KEY_UP,
257         KEY_PAGEUP,
258         0,
259         KEY_LEFT,
260         0,
261         KEY_RIGHT,
262         0,
263         KEY_END,
264         /* 0x50 */
265         KEY_DOWN,
266         KEY_PAGEDOWN,
267         KEY_INSERT,
268         KEY_DELETE,
269         0,
270         0,
271         0,
272         0,
273         0,
274         0,
275         0,
276         KEY_LEFTMETA,
277         0,
278         KEY_ESC,
279         KEY_KPMINUS,
280         0,
281         0,
282         0,
283         0,
284         0,
285         0,
286         /* VK_BROWSER_SEARCH */
287         0,
288         /* VK_BROWSER_FAVORITES */
289         0,
290         /* VK_BROWSER_REFRESH */
291         0,
292         /* VK_BROWSER_STOP */
293         0,
294         /* VK_BROWSER_FORWARD */
295         0,
296         /* VK_BROWSER_BACK */
297         0,
298         /* VK_LAUNCH_APP2 */
299         0,
300         /* VK_LAUNCH_MAIL */
301         0,
302         /* VK_LAUNCH_MEDIA_SELECT */
303         0,
304 };
305
306 static unsigned short *code_tabs[] = { code_tab_102us, extcode_tab_us102 };