blob: c93a5269f22385cbacc023e321d1c159e6b6e7dd [file] [log] [blame]
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001/*
Mauro Carvalho Chehab7f9d6912009-08-29 08:43:20 -03002 Keytables for supported remote controls, used on drivers/media
3 devices.
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02004
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Mauro Carvalho Chehab7f9d6912009-08-29 08:43:20 -030018*/
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020019
Mauro Carvalho Chehab7f9d6912009-08-29 08:43:20 -030020/*
21 * NOTICE FOR DEVELOPERS:
22 * The IR mappings should be as close as possible to what's
23 * specified at:
24 * http://linuxtv.org/wiki/index.php/Remote_Controllers
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020025 */
26#include <linux/module.h>
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020027
28#include <linux/input.h>
29#include <media/ir-common.h>
30
31/* empty keytable, can be used as placeholder for not-yet created keytables */
32IR_KEYTAB_TYPE ir_codes_empty[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030033 [0x2a] = KEY_COFFEE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020034};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020035EXPORT_SYMBOL_GPL(ir_codes_empty);
36
Michal Majchrowiczb04c1ba2006-09-13 16:42:42 -030037/* Michal Majchrowicz <mmajchrowicz@gmail.com> */
38IR_KEYTAB_TYPE ir_codes_proteus_2309[IR_KEYTAB_SIZE] = {
39 /* numeric */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030040 [0x00] = KEY_0,
41 [0x01] = KEY_1,
42 [0x02] = KEY_2,
43 [0x03] = KEY_3,
44 [0x04] = KEY_4,
45 [0x05] = KEY_5,
46 [0x06] = KEY_6,
47 [0x07] = KEY_7,
48 [0x08] = KEY_8,
49 [0x09] = KEY_9,
Michal Majchrowiczb04c1ba2006-09-13 16:42:42 -030050
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -030051 [0x5c] = KEY_POWER, /* power */
52 [0x20] = KEY_ZOOM, /* full screen */
53 [0x0f] = KEY_BACKSPACE, /* recall */
54 [0x1b] = KEY_ENTER, /* mute */
55 [0x41] = KEY_RECORD, /* record */
56 [0x43] = KEY_STOP, /* stop */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030057 [0x16] = KEY_S,
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -030058 [0x1a] = KEY_POWER2, /* off */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030059 [0x2e] = KEY_RED,
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -030060 [0x1f] = KEY_CHANNELDOWN, /* channel - */
61 [0x1c] = KEY_CHANNELUP, /* channel + */
62 [0x10] = KEY_VOLUMEDOWN, /* volume - */
63 [0x1e] = KEY_VOLUMEUP, /* volume + */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030064 [0x14] = KEY_F1,
Michal Majchrowiczb04c1ba2006-09-13 16:42:42 -030065};
Michal Majchrowiczb04c1ba2006-09-13 16:42:42 -030066EXPORT_SYMBOL_GPL(ir_codes_proteus_2309);
Mauro Carvalho Chehaba83520f2009-08-27 09:54:44 -030067
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020068/* Matt Jesson <dvb@jesson.eclipse.co.uk */
69IR_KEYTAB_TYPE ir_codes_avermedia_dvbt[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -030070 [0x28] = KEY_0, /* '0' / 'enter' */
71 [0x22] = KEY_1, /* '1' */
72 [0x12] = KEY_2, /* '2' / 'up arrow' */
73 [0x32] = KEY_3, /* '3' */
74 [0x24] = KEY_4, /* '4' / 'left arrow' */
75 [0x14] = KEY_5, /* '5' */
76 [0x34] = KEY_6, /* '6' / 'right arrow' */
77 [0x26] = KEY_7, /* '7' */
78 [0x16] = KEY_8, /* '8' / 'down arrow' */
79 [0x36] = KEY_9, /* '9' */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020080
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -030081 [0x20] = KEY_LIST, /* 'source' */
82 [0x10] = KEY_TEXT, /* 'teletext' */
83 [0x00] = KEY_POWER, /* 'power' */
84 [0x04] = KEY_AUDIO, /* 'audio' */
85 [0x06] = KEY_ZOOM, /* 'full screen' */
86 [0x18] = KEY_VIDEO, /* 'display' */
87 [0x38] = KEY_SEARCH, /* 'loop' */
88 [0x08] = KEY_INFO, /* 'preview' */
89 [0x2a] = KEY_REWIND, /* 'backward <<' */
90 [0x1a] = KEY_FASTFORWARD, /* 'forward >>' */
91 [0x3a] = KEY_RECORD, /* 'capture' */
92 [0x0a] = KEY_MUTE, /* 'mute' */
93 [0x2c] = KEY_RECORD, /* 'record' */
94 [0x1c] = KEY_PAUSE, /* 'pause' */
95 [0x3c] = KEY_STOP, /* 'stop' */
96 [0x0c] = KEY_PLAY, /* 'play' */
97 [0x2e] = KEY_RED, /* 'red' */
98 [0x01] = KEY_BLUE, /* 'blue' / 'cancel' */
99 [0x0e] = KEY_YELLOW, /* 'yellow' / 'ok' */
100 [0x21] = KEY_GREEN, /* 'green' */
101 [0x11] = KEY_CHANNELDOWN, /* 'channel -' */
102 [0x31] = KEY_CHANNELUP, /* 'channel +' */
103 [0x1e] = KEY_VOLUMEDOWN, /* 'volume -' */
104 [0x3e] = KEY_VOLUMEUP, /* 'volume +' */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200105};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200106EXPORT_SYMBOL_GPL(ir_codes_avermedia_dvbt);
107
Mauro Carvalho Chehab36f6bb92008-06-26 17:03:00 -0300108/* Mauro Carvalho Chehab <mchehab@infradead.org> */
109IR_KEYTAB_TYPE ir_codes_avermedia_m135a[IR_KEYTAB_SIZE] = {
110 [0x00] = KEY_POWER2,
111 [0x2e] = KEY_DOT, /* '.' */
112 [0x01] = KEY_MODE, /* TV/FM */
113
114 [0x05] = KEY_1,
115 [0x06] = KEY_2,
116 [0x07] = KEY_3,
117 [0x09] = KEY_4,
118 [0x0a] = KEY_5,
119 [0x0b] = KEY_6,
120 [0x0d] = KEY_7,
121 [0x0e] = KEY_8,
122 [0x0f] = KEY_9,
123 [0x11] = KEY_0,
124
125 [0x13] = KEY_RIGHT, /* -> */
126 [0x12] = KEY_LEFT, /* <- */
127
128 [0x17] = KEY_SLEEP, /* Capturar Imagem */
129 [0x10] = KEY_SHUFFLE, /* Amostra */
130
131 /* FIXME: The keys bellow aren't ok */
132
133 [0x43] = KEY_CHANNELUP,
134 [0x42] = KEY_CHANNELDOWN,
135 [0x1f] = KEY_VOLUMEUP,
136 [0x1e] = KEY_VOLUMEDOWN,
137 [0x0c] = KEY_ENTER,
138
139 [0x14] = KEY_MUTE,
140 [0x08] = KEY_AUDIO,
141
142 [0x03] = KEY_TEXT,
143 [0x04] = KEY_EPG,
144 [0x2b] = KEY_TV2, /* TV2 */
145
146 [0x1d] = KEY_RED,
147 [0x1c] = KEY_YELLOW,
148 [0x41] = KEY_GREEN,
149 [0x40] = KEY_BLUE,
150
151 [0x1a] = KEY_PLAYPAUSE,
152 [0x19] = KEY_RECORD,
153 [0x18] = KEY_PLAY,
154 [0x1b] = KEY_STOP,
155};
156EXPORT_SYMBOL_GPL(ir_codes_avermedia_m135a);
157
Oldřich Jedličkacb3bf502009-02-12 03:43:11 -0300158/* Oldrich Jedlicka <oldium.pro@seznam.cz> */
159IR_KEYTAB_TYPE ir_codes_avermedia_cardbus[IR_KEYTAB_SIZE] = {
160 [0x00] = KEY_POWER,
161 [0x01] = KEY_TUNER, /* TV/FM */
162 [0x03] = KEY_TEXT, /* Teletext */
163 [0x04] = KEY_EPG,
164 [0x05] = KEY_1,
165 [0x06] = KEY_2,
166 [0x07] = KEY_3,
167 [0x08] = KEY_AUDIO,
168 [0x09] = KEY_4,
169 [0x0a] = KEY_5,
170 [0x0b] = KEY_6,
171 [0x0c] = KEY_ZOOM, /* Full screen */
172 [0x0d] = KEY_7,
173 [0x0e] = KEY_8,
174 [0x0f] = KEY_9,
175 [0x10] = KEY_PAGEUP, /* 16-CH PREV */
176 [0x11] = KEY_0,
177 [0x12] = KEY_INFO,
178 [0x13] = KEY_AGAIN, /* CH RTN - channel return */
179 [0x14] = KEY_MUTE,
180 [0x15] = KEY_EDIT, /* Autoscan */
181 [0x17] = KEY_SAVE, /* Screenshot */
182 [0x18] = KEY_PLAYPAUSE,
183 [0x19] = KEY_RECORD,
184 [0x1a] = KEY_PLAY,
185 [0x1b] = KEY_STOP,
186 [0x1c] = KEY_FASTFORWARD,
187 [0x1d] = KEY_REWIND,
188 [0x1e] = KEY_VOLUMEDOWN,
189 [0x1f] = KEY_VOLUMEUP,
190 [0x22] = KEY_SLEEP, /* Sleep */
191 [0x23] = KEY_ZOOM, /* Aspect */
192 [0x26] = KEY_SCREEN, /* Pos */
193 [0x27] = KEY_ANGLE, /* Size */
194 [0x28] = KEY_SELECT, /* Select */
195 [0x29] = KEY_BLUE, /* Blue/Picture */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300196 [0x2a] = KEY_BACKSPACE, /* Back */
Oldřich Jedličkacb3bf502009-02-12 03:43:11 -0300197 [0x2b] = KEY_MEDIA, /* PIP (Picture-in-picture) */
198 [0x2c] = KEY_DOWN,
199 [0x2e] = KEY_DOT,
200 [0x2f] = KEY_TV, /* Live TV */
201 [0x32] = KEY_LEFT,
202 [0x33] = KEY_CLEAR, /* Clear */
203 [0x35] = KEY_RED, /* Red/TV */
204 [0x36] = KEY_UP,
205 [0x37] = KEY_HOME, /* Home */
206 [0x39] = KEY_GREEN, /* Green/Video */
207 [0x3d] = KEY_YELLOW, /* Yellow/Music */
208 [0x3e] = KEY_OK, /* Ok */
209 [0x3f] = KEY_RIGHT,
210 [0x40] = KEY_NEXT, /* Next */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300211 [0x41] = KEY_PREVIOUS, /* Previous */
Oldřich Jedličkacb3bf502009-02-12 03:43:11 -0300212 [0x42] = KEY_CHANNELDOWN, /* Channel down */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300213 [0x43] = KEY_CHANNELUP, /* Channel up */
Oldřich Jedličkacb3bf502009-02-12 03:43:11 -0300214};
215EXPORT_SYMBOL_GPL(ir_codes_avermedia_cardbus);
216
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200217/* Attila Kondoros <attila.kondoros@chello.hu> */
218IR_KEYTAB_TYPE ir_codes_apac_viewcomp[IR_KEYTAB_SIZE] = {
219
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300220 [0x01] = KEY_1,
221 [0x02] = KEY_2,
222 [0x03] = KEY_3,
223 [0x04] = KEY_4,
224 [0x05] = KEY_5,
225 [0x06] = KEY_6,
226 [0x07] = KEY_7,
227 [0x08] = KEY_8,
228 [0x09] = KEY_9,
229 [0x00] = KEY_0,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300230 [0x17] = KEY_LAST, /* +100 */
231 [0x0a] = KEY_LIST, /* recall */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200232
233
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300234 [0x1c] = KEY_TUNER, /* TV/FM */
235 [0x15] = KEY_SEARCH, /* scan */
236 [0x12] = KEY_POWER, /* power */
237 [0x1f] = KEY_VOLUMEDOWN, /* vol up */
238 [0x1b] = KEY_VOLUMEUP, /* vol down */
239 [0x1e] = KEY_CHANNELDOWN, /* chn up */
240 [0x1a] = KEY_CHANNELUP, /* chn down */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200241
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300242 [0x11] = KEY_VIDEO, /* video */
243 [0x0f] = KEY_ZOOM, /* full screen */
244 [0x13] = KEY_MUTE, /* mute/unmute */
245 [0x10] = KEY_TEXT, /* min */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200246
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300247 [0x0d] = KEY_STOP, /* freeze */
248 [0x0e] = KEY_RECORD, /* record */
249 [0x1d] = KEY_PLAYPAUSE, /* stop */
250 [0x19] = KEY_PLAY, /* play */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200251
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300252 [0x16] = KEY_GOTO, /* osd */
253 [0x14] = KEY_REFRESH, /* default */
254 [0x0c] = KEY_KPPLUS, /* fine tune >>>> */
255 [0x18] = KEY_KPMINUS, /* fine tune <<<< */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200256};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200257EXPORT_SYMBOL_GPL(ir_codes_apac_viewcomp);
258
259/* ---------------------------------------------------------------------- */
260
Nickolay V. Shmyrevb639f9d2006-01-23 09:44:10 -0200261IR_KEYTAB_TYPE ir_codes_pixelview[IR_KEYTAB_SIZE] = {
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200262
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300263 [0x1e] = KEY_POWER, /* power */
264 [0x07] = KEY_MEDIA, /* source */
265 [0x1c] = KEY_SEARCH, /* scan */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200266
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200267
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300268 [0x03] = KEY_TUNER, /* TV/FM */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200269
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300270 [0x00] = KEY_RECORD,
271 [0x08] = KEY_STOP,
272 [0x11] = KEY_PLAY,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200273
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300274 [0x1a] = KEY_PLAYPAUSE, /* freeze */
275 [0x19] = KEY_ZOOM, /* zoom */
276 [0x0f] = KEY_TEXT, /* min */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200277
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300278 [0x01] = KEY_1,
279 [0x0b] = KEY_2,
280 [0x1b] = KEY_3,
281 [0x05] = KEY_4,
282 [0x09] = KEY_5,
283 [0x15] = KEY_6,
284 [0x06] = KEY_7,
285 [0x0a] = KEY_8,
286 [0x12] = KEY_9,
287 [0x02] = KEY_0,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300288 [0x10] = KEY_LAST, /* +100 */
289 [0x13] = KEY_LIST, /* recall */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200290
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300291 [0x1f] = KEY_CHANNELUP, /* chn down */
292 [0x17] = KEY_CHANNELDOWN, /* chn up */
293 [0x16] = KEY_VOLUMEUP, /* vol down */
294 [0x14] = KEY_VOLUMEDOWN, /* vol up */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200295
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300296 [0x04] = KEY_KPMINUS, /* <<< */
297 [0x0e] = KEY_SETUP, /* function */
298 [0x0c] = KEY_KPPLUS, /* >>> */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200299
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300300 [0x0d] = KEY_GOTO, /* mts */
301 [0x1d] = KEY_REFRESH, /* reset */
302 [0x18] = KEY_MUTE, /* mute/unmute */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200303};
Nickolay V. Shmyrevb639f9d2006-01-23 09:44:10 -0200304EXPORT_SYMBOL_GPL(ir_codes_pixelview);
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200305
Mauro Carvalho Chehab7f0dd172008-04-22 14:46:01 -0300306/*
307 Mauro Carvalho Chehab <mchehab@infradead.org>
308 present on PV MPEG 8000GT
309 */
310IR_KEYTAB_TYPE ir_codes_pixelview_new[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -0300311 [0x3c] = KEY_TIME, /* Timeshift */
Mauro Carvalho Chehab7f0dd172008-04-22 14:46:01 -0300312 [0x12] = KEY_POWER,
313
314 [0x3d] = KEY_1,
315 [0x38] = KEY_2,
316 [0x18] = KEY_3,
317 [0x35] = KEY_4,
318 [0x39] = KEY_5,
319 [0x15] = KEY_6,
320 [0x36] = KEY_7,
321 [0x3a] = KEY_8,
322 [0x1e] = KEY_9,
323 [0x3e] = KEY_0,
324
325 [0x1c] = KEY_AGAIN, /* LOOP */
326 [0x3f] = KEY_MEDIA, /* Source */
327 [0x1f] = KEY_LAST, /* +100 */
328 [0x1b] = KEY_MUTE,
329
330 [0x17] = KEY_CHANNELDOWN,
331 [0x16] = KEY_CHANNELUP,
332 [0x10] = KEY_VOLUMEUP,
333 [0x14] = KEY_VOLUMEDOWN,
334 [0x13] = KEY_ZOOM,
335
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -0300336 [0x19] = KEY_CAMERA, /* SNAPSHOT */
Mauro Carvalho Chehab7f0dd172008-04-22 14:46:01 -0300337 [0x1a] = KEY_SEARCH, /* scan */
338
339 [0x37] = KEY_REWIND, /* << */
340 [0x32] = KEY_RECORD, /* o (red) */
341 [0x33] = KEY_FORWARD, /* >> */
342 [0x11] = KEY_STOP, /* square */
343 [0x3b] = KEY_PLAY, /* > */
344 [0x30] = KEY_PLAYPAUSE, /* || */
345
346 [0x31] = KEY_TV,
347 [0x34] = KEY_RADIO,
348};
349EXPORT_SYMBOL_GPL(ir_codes_pixelview_new);
350
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200351IR_KEYTAB_TYPE ir_codes_nebula[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300352 [0x00] = KEY_0,
353 [0x01] = KEY_1,
354 [0x02] = KEY_2,
355 [0x03] = KEY_3,
356 [0x04] = KEY_4,
357 [0x05] = KEY_5,
358 [0x06] = KEY_6,
359 [0x07] = KEY_7,
360 [0x08] = KEY_8,
361 [0x09] = KEY_9,
362 [0x0a] = KEY_TV,
363 [0x0b] = KEY_AUX,
364 [0x0c] = KEY_DVD,
365 [0x0d] = KEY_POWER,
366 [0x0e] = KEY_MHP, /* labelled 'Picture' */
367 [0x0f] = KEY_AUDIO,
368 [0x10] = KEY_INFO,
369 [0x11] = KEY_F13, /* 16:9 */
370 [0x12] = KEY_F14, /* 14:9 */
371 [0x13] = KEY_EPG,
372 [0x14] = KEY_EXIT,
373 [0x15] = KEY_MENU,
374 [0x16] = KEY_UP,
375 [0x17] = KEY_DOWN,
376 [0x18] = KEY_LEFT,
377 [0x19] = KEY_RIGHT,
378 [0x1a] = KEY_ENTER,
379 [0x1b] = KEY_CHANNELUP,
380 [0x1c] = KEY_CHANNELDOWN,
381 [0x1d] = KEY_VOLUMEUP,
382 [0x1e] = KEY_VOLUMEDOWN,
383 [0x1f] = KEY_RED,
384 [0x20] = KEY_GREEN,
385 [0x21] = KEY_YELLOW,
386 [0x22] = KEY_BLUE,
387 [0x23] = KEY_SUBTITLE,
388 [0x24] = KEY_F15, /* AD */
389 [0x25] = KEY_TEXT,
390 [0x26] = KEY_MUTE,
391 [0x27] = KEY_REWIND,
392 [0x28] = KEY_STOP,
393 [0x29] = KEY_PLAY,
394 [0x2a] = KEY_FASTFORWARD,
395 [0x2b] = KEY_F16, /* chapter */
396 [0x2c] = KEY_PAUSE,
397 [0x2d] = KEY_PLAY,
398 [0x2e] = KEY_RECORD,
399 [0x2f] = KEY_F17, /* picture in picture */
400 [0x30] = KEY_KPPLUS, /* zoom in */
401 [0x31] = KEY_KPMINUS, /* zoom out */
402 [0x32] = KEY_F18, /* capture */
403 [0x33] = KEY_F19, /* web */
404 [0x34] = KEY_EMAIL,
405 [0x35] = KEY_PHONE,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300406 [0x36] = KEY_PC,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200407};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200408EXPORT_SYMBOL_GPL(ir_codes_nebula);
409
410/* DigitalNow DNTV Live DVB-T Remote */
411IR_KEYTAB_TYPE ir_codes_dntv_live_dvb_t[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300412 [0x00] = KEY_ESC, /* 'go up a level?' */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200413 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300414 [0x0a] = KEY_0,
415 [0x01] = KEY_1,
416 [0x02] = KEY_2,
417 [0x03] = KEY_3,
418 [0x04] = KEY_4,
419 [0x05] = KEY_5,
420 [0x06] = KEY_6,
421 [0x07] = KEY_7,
422 [0x08] = KEY_8,
423 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200424
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300425 [0x0b] = KEY_TUNER, /* tv/fm */
426 [0x0c] = KEY_SEARCH, /* scan */
427 [0x0d] = KEY_STOP,
428 [0x0e] = KEY_PAUSE,
429 [0x0f] = KEY_LIST, /* source */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200430
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300431 [0x10] = KEY_MUTE,
432 [0x11] = KEY_REWIND, /* backward << */
433 [0x12] = KEY_POWER,
Mauro Carvalho Chehab62f1aa92009-08-29 09:01:54 -0300434 [0x13] = KEY_CAMERA, /* snap */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300435 [0x14] = KEY_AUDIO, /* stereo */
436 [0x15] = KEY_CLEAR, /* reset */
437 [0x16] = KEY_PLAY,
438 [0x17] = KEY_ENTER,
439 [0x18] = KEY_ZOOM, /* full screen */
440 [0x19] = KEY_FASTFORWARD, /* forward >> */
441 [0x1a] = KEY_CHANNELUP,
442 [0x1b] = KEY_VOLUMEUP,
443 [0x1c] = KEY_INFO, /* preview */
444 [0x1d] = KEY_RECORD, /* record */
445 [0x1e] = KEY_CHANNELDOWN,
446 [0x1f] = KEY_VOLUMEDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200447};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200448EXPORT_SYMBOL_GPL(ir_codes_dntv_live_dvb_t);
449
450/* ---------------------------------------------------------------------- */
451
452/* IO-DATA BCTV7E Remote */
453IR_KEYTAB_TYPE ir_codes_iodata_bctv7e[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300454 [0x40] = KEY_TV,
455 [0x20] = KEY_RADIO, /* FM */
456 [0x60] = KEY_EPG,
457 [0x00] = KEY_POWER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200458
459 /* Keys 0 to 9 */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300460 [0x44] = KEY_0, /* 10 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300461 [0x50] = KEY_1,
462 [0x30] = KEY_2,
463 [0x70] = KEY_3,
464 [0x48] = KEY_4,
465 [0x28] = KEY_5,
466 [0x68] = KEY_6,
467 [0x58] = KEY_7,
468 [0x38] = KEY_8,
469 [0x78] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200470
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300471 [0x10] = KEY_L, /* Live */
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -0300472 [0x08] = KEY_TIME, /* Time Shift */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200473
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300474 [0x18] = KEY_PLAYPAUSE, /* Play */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200475
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300476 [0x24] = KEY_ENTER, /* 11 */
477 [0x64] = KEY_ESC, /* 12 */
478 [0x04] = KEY_M, /* Multi */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200479
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300480 [0x54] = KEY_VIDEO,
481 [0x34] = KEY_CHANNELUP,
482 [0x74] = KEY_VOLUMEUP,
483 [0x14] = KEY_MUTE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200484
Mauro Carvalho Chehab62f1aa92009-08-29 09:01:54 -0300485 [0x4c] = KEY_VCR, /* SVIDEO */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300486 [0x2c] = KEY_CHANNELDOWN,
487 [0x6c] = KEY_VOLUMEDOWN,
488 [0x0c] = KEY_ZOOM,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200489
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300490 [0x5c] = KEY_PAUSE,
Mauro Carvalho Chehab62f1aa92009-08-29 09:01:54 -0300491 [0x3c] = KEY_RED, /* || (red) */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300492 [0x7c] = KEY_RECORD, /* recording */
493 [0x1c] = KEY_STOP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200494
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300495 [0x41] = KEY_REWIND, /* backward << */
496 [0x21] = KEY_PLAY,
497 [0x61] = KEY_FASTFORWARD, /* forward >> */
498 [0x01] = KEY_NEXT, /* skip >| */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200499};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200500EXPORT_SYMBOL_GPL(ir_codes_iodata_bctv7e);
501
502/* ---------------------------------------------------------------------- */
503
504/* ADS Tech Instant TV DVB-T PCI Remote */
505IR_KEYTAB_TYPE ir_codes_adstech_dvb_t_pci[IR_KEYTAB_SIZE] = {
506 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300507 [0x4d] = KEY_0,
508 [0x57] = KEY_1,
509 [0x4f] = KEY_2,
510 [0x53] = KEY_3,
511 [0x56] = KEY_4,
512 [0x4e] = KEY_5,
513 [0x5e] = KEY_6,
514 [0x54] = KEY_7,
515 [0x4c] = KEY_8,
516 [0x5c] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200517
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300518 [0x5b] = KEY_POWER,
519 [0x5f] = KEY_MUTE,
520 [0x55] = KEY_GOTO,
521 [0x5d] = KEY_SEARCH,
522 [0x17] = KEY_EPG, /* Guide */
523 [0x1f] = KEY_MENU,
524 [0x0f] = KEY_UP,
525 [0x46] = KEY_DOWN,
526 [0x16] = KEY_LEFT,
527 [0x1e] = KEY_RIGHT,
528 [0x0e] = KEY_SELECT, /* Enter */
529 [0x5a] = KEY_INFO,
530 [0x52] = KEY_EXIT,
531 [0x59] = KEY_PREVIOUS,
532 [0x51] = KEY_NEXT,
533 [0x58] = KEY_REWIND,
534 [0x50] = KEY_FORWARD,
535 [0x44] = KEY_PLAYPAUSE,
536 [0x07] = KEY_STOP,
537 [0x1b] = KEY_RECORD,
538 [0x13] = KEY_TUNER, /* Live */
539 [0x0a] = KEY_A,
540 [0x12] = KEY_B,
541 [0x03] = KEY_PROG1, /* 1 */
542 [0x01] = KEY_PROG2, /* 2 */
543 [0x00] = KEY_PROG3, /* 3 */
544 [0x06] = KEY_DVD,
545 [0x48] = KEY_AUX, /* Photo */
546 [0x40] = KEY_VIDEO,
547 [0x19] = KEY_AUDIO, /* Music */
548 [0x0b] = KEY_CHANNELUP,
549 [0x08] = KEY_CHANNELDOWN,
550 [0x15] = KEY_VOLUMEUP,
551 [0x1c] = KEY_VOLUMEDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200552};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200553EXPORT_SYMBOL_GPL(ir_codes_adstech_dvb_t_pci);
554
555/* ---------------------------------------------------------------------- */
556
Brian Rogersba340b42008-10-13 08:37:06 -0300557/* MSI TV@nywhere MASTER remote */
558
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200559IR_KEYTAB_TYPE ir_codes_msi_tvanywhere[IR_KEYTAB_SIZE] = {
560 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300561 [0x00] = KEY_0,
562 [0x01] = KEY_1,
563 [0x02] = KEY_2,
564 [0x03] = KEY_3,
565 [0x04] = KEY_4,
566 [0x05] = KEY_5,
567 [0x06] = KEY_6,
568 [0x07] = KEY_7,
569 [0x08] = KEY_8,
570 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200571
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300572 [0x0c] = KEY_MUTE,
573 [0x0f] = KEY_SCREEN, /* Full Screen */
Mauro Carvalho Chehab62f1aa92009-08-29 09:01:54 -0300574 [0x10] = KEY_FN, /* Funtion */
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -0300575 [0x11] = KEY_TIME, /* Time shift */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300576 [0x12] = KEY_POWER,
577 [0x13] = KEY_MEDIA, /* MTS */
578 [0x14] = KEY_SLOW,
579 [0x16] = KEY_REWIND, /* backward << */
580 [0x17] = KEY_ENTER, /* Return */
581 [0x18] = KEY_FASTFORWARD, /* forward >> */
582 [0x1a] = KEY_CHANNELUP,
583 [0x1b] = KEY_VOLUMEUP,
584 [0x1e] = KEY_CHANNELDOWN,
585 [0x1f] = KEY_VOLUMEDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200586};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200587EXPORT_SYMBOL_GPL(ir_codes_msi_tvanywhere);
588
589/* ---------------------------------------------------------------------- */
590
Brian Rogersba340b42008-10-13 08:37:06 -0300591/*
592 Keycodes for remote on the MSI TV@nywhere Plus. The controller IC on the card
593 is marked "KS003". The controller is I2C at address 0x30, but does not seem
594 to respond to probes until a read is performed from a valid device.
595 I don't know why...
596
597 Note: This remote may be of similar or identical design to the
598 Pixelview remote (?). The raw codes and duplicate button codes
599 appear to be the same.
600
601 Henry Wong <henry@stuffedcow.net>
602 Some changes to formatting and keycodes by Mark Schultz <n9xmj@yahoo.com>
603
604*/
605
606IR_KEYTAB_TYPE ir_codes_msi_tvanywhere_plus[IR_KEYTAB_SIZE] = {
607
608/* ---- Remote Button Layout ----
609
610 POWER SOURCE SCAN MUTE
611 TV/FM 1 2 3
612 |> 4 5 6
613 <| 7 8 9
614 ^^UP 0 + RECALL
615 vvDN RECORD STOP PLAY
616
617 MINIMIZE ZOOM
618
619 CH+
620 VOL- VOL+
621 CH-
622
623 SNAPSHOT MTS
624
625 << FUNC >> RESET
626*/
627
Mauro Carvalho Chehab88d25a12009-08-29 08:37:58 -0300628 [0x01] = KEY_1, /* 1 */
629 [0x0b] = KEY_2, /* 2 */
630 [0x1b] = KEY_3, /* 3 */
631 [0x05] = KEY_4, /* 4 */
632 [0x09] = KEY_5, /* 5 */
633 [0x15] = KEY_6, /* 6 */
634 [0x06] = KEY_7, /* 7 */
635 [0x0a] = KEY_8, /* 8 */
636 [0x12] = KEY_9, /* 9 */
637 [0x02] = KEY_0, /* 0 */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300638 [0x10] = KEY_KPPLUS, /* + */
639 [0x13] = KEY_AGAIN, /* Recall */
Brian Rogersba340b42008-10-13 08:37:06 -0300640
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300641 [0x1e] = KEY_POWER, /* Power */
642 [0x07] = KEY_TUNER, /* Source */
643 [0x1c] = KEY_SEARCH, /* Scan */
644 [0x18] = KEY_MUTE, /* Mute */
Brian Rogersba340b42008-10-13 08:37:06 -0300645
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300646 [0x03] = KEY_RADIO, /* TV/FM */
Brian Rogersba340b42008-10-13 08:37:06 -0300647 /* The next four keys are duplicates that appear to send the
648 same IR code as Ch+, Ch-, >>, and << . The raw code assigned
649 to them is the actual code + 0x20 - they will never be
650 detected as such unless some way is discovered to distinguish
651 these buttons from those that have the same code. */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300652 [0x3f] = KEY_RIGHT, /* |> and Ch+ */
653 [0x37] = KEY_LEFT, /* <| and Ch- */
654 [0x2c] = KEY_UP, /* ^^Up and >> */
655 [0x24] = KEY_DOWN, /* vvDn and << */
Brian Rogersba340b42008-10-13 08:37:06 -0300656
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300657 [0x00] = KEY_RECORD, /* Record */
658 [0x08] = KEY_STOP, /* Stop */
659 [0x11] = KEY_PLAY, /* Play */
Brian Rogersba340b42008-10-13 08:37:06 -0300660
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300661 [0x0f] = KEY_CLOSE, /* Minimize */
662 [0x19] = KEY_ZOOM, /* Zoom */
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -0300663 [0x1a] = KEY_CAMERA, /* Snapshot */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300664 [0x0d] = KEY_LANGUAGE, /* MTS */
Brian Rogersba340b42008-10-13 08:37:06 -0300665
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300666 [0x14] = KEY_VOLUMEDOWN,/* Vol- */
667 [0x16] = KEY_VOLUMEUP, /* Vol+ */
668 [0x17] = KEY_CHANNELDOWN,/* Ch- */
669 [0x1f] = KEY_CHANNELUP, /* Ch+ */
Brian Rogersba340b42008-10-13 08:37:06 -0300670
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300671 [0x04] = KEY_REWIND, /* << */
672 [0x0e] = KEY_MENU, /* Function */
673 [0x0c] = KEY_FASTFORWARD,/* >> */
674 [0x1d] = KEY_RESTART, /* Reset */
Brian Rogersba340b42008-10-13 08:37:06 -0300675};
676EXPORT_SYMBOL_GPL(ir_codes_msi_tvanywhere_plus);
677
678/* ---------------------------------------------------------------------- */
679
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200680/* Cinergy 1400 DVB-T */
681IR_KEYTAB_TYPE ir_codes_cinergy_1400[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300682 [0x01] = KEY_POWER,
683 [0x02] = KEY_1,
684 [0x03] = KEY_2,
685 [0x04] = KEY_3,
686 [0x05] = KEY_4,
687 [0x06] = KEY_5,
688 [0x07] = KEY_6,
689 [0x08] = KEY_7,
690 [0x09] = KEY_8,
691 [0x0a] = KEY_9,
692 [0x0c] = KEY_0,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200693
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300694 [0x0b] = KEY_VIDEO,
695 [0x0d] = KEY_REFRESH,
696 [0x0e] = KEY_SELECT,
697 [0x0f] = KEY_EPG,
698 [0x10] = KEY_UP,
699 [0x11] = KEY_LEFT,
700 [0x12] = KEY_OK,
701 [0x13] = KEY_RIGHT,
702 [0x14] = KEY_DOWN,
703 [0x15] = KEY_TEXT,
704 [0x16] = KEY_INFO,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200705
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300706 [0x17] = KEY_RED,
707 [0x18] = KEY_GREEN,
708 [0x19] = KEY_YELLOW,
709 [0x1a] = KEY_BLUE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200710
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300711 [0x1b] = KEY_CHANNELUP,
712 [0x1c] = KEY_VOLUMEUP,
713 [0x1d] = KEY_MUTE,
714 [0x1e] = KEY_VOLUMEDOWN,
715 [0x1f] = KEY_CHANNELDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200716
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300717 [0x40] = KEY_PAUSE,
718 [0x4c] = KEY_PLAY,
719 [0x58] = KEY_RECORD,
720 [0x54] = KEY_PREVIOUS,
721 [0x48] = KEY_STOP,
722 [0x5c] = KEY_NEXT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200723};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200724EXPORT_SYMBOL_GPL(ir_codes_cinergy_1400);
725
726/* ---------------------------------------------------------------------- */
727
728/* AVERTV STUDIO 303 Remote */
729IR_KEYTAB_TYPE ir_codes_avertv_303[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300730 [0x2a] = KEY_1,
731 [0x32] = KEY_2,
732 [0x3a] = KEY_3,
733 [0x4a] = KEY_4,
734 [0x52] = KEY_5,
735 [0x5a] = KEY_6,
736 [0x6a] = KEY_7,
737 [0x72] = KEY_8,
738 [0x7a] = KEY_9,
739 [0x0e] = KEY_0,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200740
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300741 [0x02] = KEY_POWER,
742 [0x22] = KEY_VIDEO,
743 [0x42] = KEY_AUDIO,
744 [0x62] = KEY_ZOOM,
745 [0x0a] = KEY_TV,
746 [0x12] = KEY_CD,
747 [0x1a] = KEY_TEXT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200748
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300749 [0x16] = KEY_SUBTITLE,
750 [0x1e] = KEY_REWIND,
751 [0x06] = KEY_PRINT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200752
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300753 [0x2e] = KEY_SEARCH,
754 [0x36] = KEY_SLEEP,
755 [0x3e] = KEY_SHUFFLE,
756 [0x26] = KEY_MUTE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200757
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300758 [0x4e] = KEY_RECORD,
759 [0x56] = KEY_PAUSE,
760 [0x5e] = KEY_STOP,
761 [0x46] = KEY_PLAY,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200762
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300763 [0x6e] = KEY_RED,
764 [0x0b] = KEY_GREEN,
765 [0x66] = KEY_YELLOW,
766 [0x03] = KEY_BLUE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200767
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300768 [0x76] = KEY_LEFT,
769 [0x7e] = KEY_RIGHT,
770 [0x13] = KEY_DOWN,
771 [0x1b] = KEY_UP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200772};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200773EXPORT_SYMBOL_GPL(ir_codes_avertv_303);
774
775/* ---------------------------------------------------------------------- */
776
777/* DigitalNow DNTV Live! DVB-T Pro Remote */
778IR_KEYTAB_TYPE ir_codes_dntv_live_dvbt_pro[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300779 [0x16] = KEY_POWER,
780 [0x5b] = KEY_HOME,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200781
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300782 [0x55] = KEY_TV, /* live tv */
783 [0x58] = KEY_TUNER, /* digital Radio */
784 [0x5a] = KEY_RADIO, /* FM radio */
785 [0x59] = KEY_DVD, /* dvd menu */
786 [0x03] = KEY_1,
787 [0x01] = KEY_2,
788 [0x06] = KEY_3,
789 [0x09] = KEY_4,
790 [0x1d] = KEY_5,
791 [0x1f] = KEY_6,
792 [0x0d] = KEY_7,
793 [0x19] = KEY_8,
794 [0x1b] = KEY_9,
795 [0x0c] = KEY_CANCEL,
796 [0x15] = KEY_0,
797 [0x4a] = KEY_CLEAR,
798 [0x13] = KEY_BACK,
799 [0x00] = KEY_TAB,
800 [0x4b] = KEY_UP,
801 [0x4e] = KEY_LEFT,
802 [0x4f] = KEY_OK,
803 [0x52] = KEY_RIGHT,
804 [0x51] = KEY_DOWN,
805 [0x1e] = KEY_VOLUMEUP,
806 [0x0a] = KEY_VOLUMEDOWN,
807 [0x02] = KEY_CHANNELDOWN,
808 [0x05] = KEY_CHANNELUP,
809 [0x11] = KEY_RECORD,
810 [0x14] = KEY_PLAY,
811 [0x4c] = KEY_PAUSE,
812 [0x1a] = KEY_STOP,
813 [0x40] = KEY_REWIND,
814 [0x12] = KEY_FASTFORWARD,
815 [0x41] = KEY_PREVIOUSSONG, /* replay |< */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300816 [0x42] = KEY_NEXTSONG, /* skip >| */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300817 [0x54] = KEY_CAMERA, /* capture */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300818 [0x50] = KEY_LANGUAGE, /* sap */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300819 [0x47] = KEY_TV2, /* pip */
820 [0x4d] = KEY_SCREEN,
821 [0x43] = KEY_SUBTITLE,
822 [0x10] = KEY_MUTE,
823 [0x49] = KEY_AUDIO, /* l/r */
824 [0x07] = KEY_SLEEP,
825 [0x08] = KEY_VIDEO, /* a/v */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300826 [0x0e] = KEY_PREVIOUS, /* recall */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300827 [0x45] = KEY_ZOOM, /* zoom + */
828 [0x46] = KEY_ANGLE, /* zoom - */
829 [0x56] = KEY_RED,
830 [0x57] = KEY_GREEN,
831 [0x5c] = KEY_YELLOW,
832 [0x5d] = KEY_BLUE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200833};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200834EXPORT_SYMBOL_GPL(ir_codes_dntv_live_dvbt_pro);
835
836IR_KEYTAB_TYPE ir_codes_em_terratec[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300837 [0x01] = KEY_CHANNEL,
838 [0x02] = KEY_SELECT,
839 [0x03] = KEY_MUTE,
840 [0x04] = KEY_POWER,
841 [0x05] = KEY_1,
842 [0x06] = KEY_2,
843 [0x07] = KEY_3,
844 [0x08] = KEY_CHANNELUP,
845 [0x09] = KEY_4,
846 [0x0a] = KEY_5,
847 [0x0b] = KEY_6,
848 [0x0c] = KEY_CHANNELDOWN,
849 [0x0d] = KEY_7,
850 [0x0e] = KEY_8,
851 [0x0f] = KEY_9,
852 [0x10] = KEY_VOLUMEUP,
853 [0x11] = KEY_0,
854 [0x12] = KEY_MENU,
855 [0x13] = KEY_PRINT,
856 [0x14] = KEY_VOLUMEDOWN,
857 [0x16] = KEY_PAUSE,
858 [0x18] = KEY_RECORD,
859 [0x19] = KEY_REWIND,
860 [0x1a] = KEY_PLAY,
861 [0x1b] = KEY_FORWARD,
862 [0x1c] = KEY_BACKSPACE,
863 [0x1e] = KEY_STOP,
864 [0x40] = KEY_ZOOM,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200865};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200866EXPORT_SYMBOL_GPL(ir_codes_em_terratec);
867
Sylvain Pascheb93eedb2006-03-25 23:14:42 -0300868IR_KEYTAB_TYPE ir_codes_pinnacle_grey[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300869 [0x3a] = KEY_0,
870 [0x31] = KEY_1,
871 [0x32] = KEY_2,
872 [0x33] = KEY_3,
873 [0x34] = KEY_4,
874 [0x35] = KEY_5,
875 [0x36] = KEY_6,
876 [0x37] = KEY_7,
877 [0x38] = KEY_8,
878 [0x39] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200879
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300880 [0x2f] = KEY_POWER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200881
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300882 [0x2e] = KEY_P,
883 [0x1f] = KEY_L,
884 [0x2b] = KEY_I,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200885
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300886 [0x2d] = KEY_SCREEN,
887 [0x1e] = KEY_ZOOM,
888 [0x1b] = KEY_VOLUMEUP,
889 [0x0f] = KEY_VOLUMEDOWN,
890 [0x17] = KEY_CHANNELUP,
891 [0x1c] = KEY_CHANNELDOWN,
892 [0x25] = KEY_INFO,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200893
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300894 [0x3c] = KEY_MUTE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200895
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300896 [0x3d] = KEY_LEFT,
897 [0x3b] = KEY_RIGHT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200898
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300899 [0x3f] = KEY_UP,
900 [0x3e] = KEY_DOWN,
901 [0x1a] = KEY_ENTER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200902
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300903 [0x1d] = KEY_MENU,
904 [0x19] = KEY_AGAIN,
905 [0x16] = KEY_PREVIOUSSONG,
906 [0x13] = KEY_NEXTSONG,
907 [0x15] = KEY_PAUSE,
908 [0x0e] = KEY_REWIND,
909 [0x0d] = KEY_PLAY,
910 [0x0b] = KEY_STOP,
911 [0x07] = KEY_FORWARD,
912 [0x27] = KEY_RECORD,
913 [0x26] = KEY_TUNER,
914 [0x29] = KEY_TEXT,
915 [0x2a] = KEY_MEDIA,
916 [0x18] = KEY_EPG,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200917};
Sylvain Pascheb93eedb2006-03-25 23:14:42 -0300918EXPORT_SYMBOL_GPL(ir_codes_pinnacle_grey);
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200919
920IR_KEYTAB_TYPE ir_codes_flyvideo[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300921 [0x0f] = KEY_0,
922 [0x03] = KEY_1,
923 [0x04] = KEY_2,
924 [0x05] = KEY_3,
925 [0x07] = KEY_4,
926 [0x08] = KEY_5,
927 [0x09] = KEY_6,
928 [0x0b] = KEY_7,
929 [0x0c] = KEY_8,
930 [0x0d] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200931
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300932 [0x0e] = KEY_MODE, /* Air/Cable */
933 [0x11] = KEY_VIDEO, /* Video */
934 [0x15] = KEY_AUDIO, /* Audio */
935 [0x00] = KEY_POWER, /* Power */
936 [0x18] = KEY_TUNER, /* AV Source */
937 [0x02] = KEY_ZOOM, /* Fullscreen */
938 [0x1a] = KEY_LANGUAGE, /* Stereo */
939 [0x1b] = KEY_MUTE, /* Mute */
940 [0x14] = KEY_VOLUMEUP, /* Volume + */
941 [0x17] = KEY_VOLUMEDOWN,/* Volume - */
942 [0x12] = KEY_CHANNELUP, /* Channel + */
943 [0x13] = KEY_CHANNELDOWN,/* Channel - */
944 [0x06] = KEY_AGAIN, /* Recall */
945 [0x10] = KEY_ENTER, /* Enter */
Ivan Bobyr9e05c0f2008-04-16 16:01:55 -0300946
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300947 [0x19] = KEY_BACK, /* Rewind ( <<< ) */
948 [0x1f] = KEY_FORWARD, /* Forward ( >>> ) */
949 [0x0a] = KEY_ANGLE, /* no label, may be used as the PAUSE button */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200950};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200951EXPORT_SYMBOL_GPL(ir_codes_flyvideo);
952
953IR_KEYTAB_TYPE ir_codes_flydvb[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300954 [0x01] = KEY_ZOOM, /* Full Screen */
955 [0x00] = KEY_POWER, /* Power */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200956
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300957 [0x03] = KEY_1,
958 [0x04] = KEY_2,
959 [0x05] = KEY_3,
960 [0x07] = KEY_4,
961 [0x08] = KEY_5,
962 [0x09] = KEY_6,
963 [0x0b] = KEY_7,
964 [0x0c] = KEY_8,
965 [0x0d] = KEY_9,
966 [0x06] = KEY_AGAIN, /* Recall */
967 [0x0f] = KEY_0,
968 [0x10] = KEY_MUTE, /* Mute */
969 [0x02] = KEY_RADIO, /* TV/Radio */
970 [0x1b] = KEY_LANGUAGE, /* SAP (Second Audio Program) */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200971
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300972 [0x14] = KEY_VOLUMEUP, /* VOL+ */
973 [0x17] = KEY_VOLUMEDOWN, /* VOL- */
974 [0x12] = KEY_CHANNELUP, /* CH+ */
975 [0x13] = KEY_CHANNELDOWN, /* CH- */
976 [0x1d] = KEY_ENTER, /* Enter */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200977
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300978 [0x1a] = KEY_MODE, /* PIP */
979 [0x18] = KEY_TUNER, /* Source */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200980
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300981 [0x1e] = KEY_RECORD, /* Record/Pause */
982 [0x15] = KEY_ANGLE, /* Swap (no label on key) */
983 [0x1c] = KEY_PAUSE, /* Timeshift/Pause */
984 [0x19] = KEY_BACK, /* Rewind << */
985 [0x0a] = KEY_PLAYPAUSE, /* Play/Pause */
986 [0x1f] = KEY_FORWARD, /* Forward >> */
987 [0x16] = KEY_PREVIOUS, /* Back |<< */
988 [0x11] = KEY_STOP, /* Stop */
989 [0x0e] = KEY_NEXT, /* End >>| */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200990};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200991EXPORT_SYMBOL_GPL(ir_codes_flydvb);
992
993IR_KEYTAB_TYPE ir_codes_cinergy[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300994 [0x00] = KEY_0,
995 [0x01] = KEY_1,
996 [0x02] = KEY_2,
997 [0x03] = KEY_3,
998 [0x04] = KEY_4,
999 [0x05] = KEY_5,
1000 [0x06] = KEY_6,
1001 [0x07] = KEY_7,
1002 [0x08] = KEY_8,
1003 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001004
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001005 [0x0a] = KEY_POWER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001006 [0x0b] = KEY_PROG1, /* app */
1007 [0x0c] = KEY_ZOOM, /* zoom/fullscreen */
1008 [0x0d] = KEY_CHANNELUP, /* channel */
1009 [0x0e] = KEY_CHANNELDOWN,/* channel- */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001010 [0x0f] = KEY_VOLUMEUP,
1011 [0x10] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001012 [0x11] = KEY_TUNER, /* AV */
1013 [0x12] = KEY_NUMLOCK, /* -/-- */
1014 [0x13] = KEY_AUDIO, /* audio */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001015 [0x14] = KEY_MUTE,
1016 [0x15] = KEY_UP,
1017 [0x16] = KEY_DOWN,
1018 [0x17] = KEY_LEFT,
1019 [0x18] = KEY_RIGHT,
1020 [0x19] = BTN_LEFT,
1021 [0x1a] = BTN_RIGHT,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001022 [0x1b] = KEY_WWW, /* text */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001023 [0x1c] = KEY_REWIND,
1024 [0x1d] = KEY_FORWARD,
1025 [0x1e] = KEY_RECORD,
1026 [0x1f] = KEY_PLAY,
1027 [0x20] = KEY_PREVIOUSSONG,
1028 [0x21] = KEY_NEXTSONG,
1029 [0x22] = KEY_PAUSE,
1030 [0x23] = KEY_STOP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001031};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001032EXPORT_SYMBOL_GPL(ir_codes_cinergy);
1033
1034/* Alfons Geser <a.geser@cox.net>
1035 * updates from Job D. R. Borges <jobdrb@ig.com.br> */
1036IR_KEYTAB_TYPE ir_codes_eztv[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001037 [0x12] = KEY_POWER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001038 [0x01] = KEY_TV, /* DVR */
1039 [0x15] = KEY_DVD, /* DVD */
1040 [0x17] = KEY_AUDIO, /* music */
1041 /* DVR mode / DVD mode / music mode */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001042
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001043 [0x1b] = KEY_MUTE, /* mute */
1044 [0x02] = KEY_LANGUAGE, /* MTS/SAP / audio / autoseek */
1045 [0x1e] = KEY_SUBTITLE, /* closed captioning / subtitle / seek */
1046 [0x16] = KEY_ZOOM, /* full screen */
1047 [0x1c] = KEY_VIDEO, /* video source / eject / delall */
1048 [0x1d] = KEY_RESTART, /* playback / angle / del */
1049 [0x2f] = KEY_SEARCH, /* scan / menu / playlist */
1050 [0x30] = KEY_CHANNEL, /* CH surfing / bookmark / memo */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001051
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001052 [0x31] = KEY_HELP, /* help */
1053 [0x32] = KEY_MODE, /* num/memo */
1054 [0x33] = KEY_ESC, /* cancel */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001055
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001056 [0x0c] = KEY_UP, /* up */
1057 [0x10] = KEY_DOWN, /* down */
1058 [0x08] = KEY_LEFT, /* left */
1059 [0x04] = KEY_RIGHT, /* right */
1060 [0x03] = KEY_SELECT, /* select */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001061
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001062 [0x1f] = KEY_REWIND, /* rewind */
1063 [0x20] = KEY_PLAYPAUSE, /* play/pause */
1064 [0x29] = KEY_FORWARD, /* forward */
1065 [0x14] = KEY_AGAIN, /* repeat */
1066 [0x2b] = KEY_RECORD, /* recording */
1067 [0x2c] = KEY_STOP, /* stop */
1068 [0x2d] = KEY_PLAY, /* play */
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03001069 [0x2e] = KEY_CAMERA, /* snapshot / shuffle */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001070
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001071 [0x00] = KEY_0,
1072 [0x05] = KEY_1,
1073 [0x06] = KEY_2,
1074 [0x07] = KEY_3,
1075 [0x09] = KEY_4,
1076 [0x0a] = KEY_5,
1077 [0x0b] = KEY_6,
1078 [0x0d] = KEY_7,
1079 [0x0e] = KEY_8,
1080 [0x0f] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001081
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001082 [0x2a] = KEY_VOLUMEUP,
1083 [0x11] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001084 [0x18] = KEY_CHANNELUP, /* CH.tracking up */
1085 [0x19] = KEY_CHANNELDOWN,/* CH.tracking down */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001086
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001087 [0x13] = KEY_ENTER, /* enter */
1088 [0x21] = KEY_DOT, /* . (decimal dot) */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001089};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001090EXPORT_SYMBOL_GPL(ir_codes_eztv);
1091
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001092/* Alex Hermann <gaaf@gmx.net> */
Nickolay V. Shmyrevb639f9d2006-01-23 09:44:10 -02001093IR_KEYTAB_TYPE ir_codes_avermedia[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001094 [0x28] = KEY_1,
1095 [0x18] = KEY_2,
1096 [0x38] = KEY_3,
1097 [0x24] = KEY_4,
1098 [0x14] = KEY_5,
1099 [0x34] = KEY_6,
1100 [0x2c] = KEY_7,
1101 [0x1c] = KEY_8,
1102 [0x3c] = KEY_9,
1103 [0x22] = KEY_0,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001104
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001105 [0x20] = KEY_TV, /* TV/FM */
1106 [0x10] = KEY_CD, /* CD */
1107 [0x30] = KEY_TEXT, /* TELETEXT */
1108 [0x00] = KEY_POWER, /* POWER */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001109
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001110 [0x08] = KEY_VIDEO, /* VIDEO */
1111 [0x04] = KEY_AUDIO, /* AUDIO */
1112 [0x0c] = KEY_ZOOM, /* FULL SCREEN */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001113
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001114 [0x12] = KEY_SUBTITLE, /* DISPLAY */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001115 [0x32] = KEY_REWIND, /* LOOP */
1116 [0x02] = KEY_PRINT, /* PREVIEW */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001117
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001118 [0x2a] = KEY_SEARCH, /* AUTOSCAN */
1119 [0x1a] = KEY_SLEEP, /* FREEZE */
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03001120 [0x3a] = KEY_CAMERA, /* SNAPSHOT */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001121 [0x0a] = KEY_MUTE, /* MUTE */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001122
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001123 [0x26] = KEY_RECORD, /* RECORD */
1124 [0x16] = KEY_PAUSE, /* PAUSE */
1125 [0x36] = KEY_STOP, /* STOP */
1126 [0x06] = KEY_PLAY, /* PLAY */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001127
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001128 [0x2e] = KEY_RED, /* RED */
1129 [0x21] = KEY_GREEN, /* GREEN */
1130 [0x0e] = KEY_YELLOW, /* YELLOW */
1131 [0x01] = KEY_BLUE, /* BLUE */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001132
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001133 [0x1e] = KEY_VOLUMEDOWN, /* VOLUME- */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001134 [0x3e] = KEY_VOLUMEUP, /* VOLUME+ */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001135 [0x11] = KEY_CHANNELDOWN, /* CHANNEL/PAGE- */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001136 [0x31] = KEY_CHANNELUP /* CHANNEL/PAGE+ */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001137};
Nickolay V. Shmyrevb639f9d2006-01-23 09:44:10 -02001138EXPORT_SYMBOL_GPL(ir_codes_avermedia);
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001139
1140IR_KEYTAB_TYPE ir_codes_videomate_tv_pvr[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001141 [0x14] = KEY_MUTE,
1142 [0x24] = KEY_ZOOM,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001143
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001144 [0x01] = KEY_DVD,
1145 [0x23] = KEY_RADIO,
1146 [0x00] = KEY_TV,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001147
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001148 [0x0a] = KEY_REWIND,
1149 [0x08] = KEY_PLAYPAUSE,
1150 [0x0f] = KEY_FORWARD,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001151
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001152 [0x02] = KEY_PREVIOUS,
1153 [0x07] = KEY_STOP,
1154 [0x06] = KEY_NEXT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001155
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001156 [0x0c] = KEY_UP,
1157 [0x0e] = KEY_DOWN,
1158 [0x0b] = KEY_LEFT,
1159 [0x0d] = KEY_RIGHT,
1160 [0x11] = KEY_OK,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001161
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001162 [0x03] = KEY_MENU,
1163 [0x09] = KEY_SETUP,
1164 [0x05] = KEY_VIDEO,
1165 [0x22] = KEY_CHANNEL,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001166
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001167 [0x12] = KEY_VOLUMEUP,
1168 [0x15] = KEY_VOLUMEDOWN,
1169 [0x10] = KEY_CHANNELUP,
1170 [0x13] = KEY_CHANNELDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001171
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001172 [0x04] = KEY_RECORD,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001173
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001174 [0x16] = KEY_1,
1175 [0x17] = KEY_2,
1176 [0x18] = KEY_3,
1177 [0x19] = KEY_4,
1178 [0x1a] = KEY_5,
1179 [0x1b] = KEY_6,
1180 [0x1c] = KEY_7,
1181 [0x1d] = KEY_8,
1182 [0x1e] = KEY_9,
1183 [0x1f] = KEY_0,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001184
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001185 [0x20] = KEY_LANGUAGE,
1186 [0x21] = KEY_SLEEP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001187};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001188EXPORT_SYMBOL_GPL(ir_codes_videomate_tv_pvr);
1189
1190/* Michael Tokarev <mjt@tls.msk.ru>
1191 http://www.corpit.ru/mjt/beholdTV/remote_control.jpg
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001192 keytable is used by MANLI MTV00[0x0c] and BeholdTV 40[13] at
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001193 least, and probably other cards too.
1194 The "ascii-art picture" below (in comments, first row
1195 is the keycode in hex, and subsequent row(s) shows
1196 the button labels (several variants when appropriate)
1197 helps to descide which keycodes to assign to the buttons.
1198 */
1199IR_KEYTAB_TYPE ir_codes_manli[IR_KEYTAB_SIZE] = {
1200
1201 /* 0x1c 0x12 *
1202 * FUNCTION POWER *
1203 * FM (|) *
1204 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001205 [0x1c] = KEY_RADIO, /*XXX*/
1206 [0x12] = KEY_POWER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001207
1208 /* 0x01 0x02 0x03 *
1209 * 1 2 3 *
1210 * *
1211 * 0x04 0x05 0x06 *
1212 * 4 5 6 *
1213 * *
1214 * 0x07 0x08 0x09 *
1215 * 7 8 9 *
1216 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001217 [0x01] = KEY_1,
1218 [0x02] = KEY_2,
1219 [0x03] = KEY_3,
1220 [0x04] = KEY_4,
1221 [0x05] = KEY_5,
1222 [0x06] = KEY_6,
1223 [0x07] = KEY_7,
1224 [0x08] = KEY_8,
1225 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001226
1227 /* 0x0a 0x00 0x17 *
1228 * RECALL 0 +100 *
1229 * PLUS *
1230 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001231 [0x0a] = KEY_AGAIN, /*XXX KEY_REWIND? */
1232 [0x00] = KEY_0,
1233 [0x17] = KEY_DIGITS, /*XXX*/
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001234
1235 /* 0x14 0x10 *
1236 * MENU INFO *
1237 * OSD */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001238 [0x14] = KEY_MENU,
1239 [0x10] = KEY_INFO,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001240
1241 /* 0x0b *
1242 * Up *
1243 * *
1244 * 0x18 0x16 0x0c *
1245 * Left Ok Right *
1246 * *
1247 * 0x015 *
1248 * Down *
1249 * */
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03001250 [0x0b] = KEY_UP,
1251 [0x18] = KEY_LEFT,
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001252 [0x16] = KEY_OK, /*XXX KEY_SELECT? KEY_ENTER? */
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03001253 [0x0c] = KEY_RIGHT,
1254 [0x15] = KEY_DOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001255
1256 /* 0x11 0x0d *
1257 * TV/AV MODE *
1258 * SOURCE STEREO *
1259 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001260 [0x11] = KEY_TV, /*XXX*/
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001261 [0x0d] = KEY_MODE, /*XXX there's no KEY_STEREO */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001262
1263 /* 0x0f 0x1b 0x1a *
1264 * AUDIO Vol+ Chan+ *
1265 * TIMESHIFT??? *
1266 * *
1267 * 0x0e 0x1f 0x1e *
1268 * SLEEP Vol- Chan- *
1269 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001270 [0x0f] = KEY_AUDIO,
1271 [0x1b] = KEY_VOLUMEUP,
1272 [0x1a] = KEY_CHANNELUP,
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -03001273 [0x0e] = KEY_TIME,
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001274 [0x1f] = KEY_VOLUMEDOWN,
1275 [0x1e] = KEY_CHANNELDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001276
1277 /* 0x13 0x19 *
1278 * MUTE SNAPSHOT*
1279 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001280 [0x13] = KEY_MUTE,
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03001281 [0x19] = KEY_CAMERA,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001282
Mauro Carvalho Chehab97fd4f72009-08-27 09:28:48 -03001283 /* 0x1d unused ? */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001284};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001285EXPORT_SYMBOL_GPL(ir_codes_manli);
1286
1287/* Mike Baikov <mike@baikov.com> */
1288IR_KEYTAB_TYPE ir_codes_gotview7135[IR_KEYTAB_SIZE] = {
1289
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001290 [0x11] = KEY_POWER,
1291 [0x35] = KEY_TV,
1292 [0x1b] = KEY_0,
1293 [0x29] = KEY_1,
1294 [0x19] = KEY_2,
1295 [0x39] = KEY_3,
1296 [0x1f] = KEY_4,
1297 [0x2c] = KEY_5,
1298 [0x21] = KEY_6,
1299 [0x24] = KEY_7,
1300 [0x18] = KEY_8,
1301 [0x2b] = KEY_9,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001302 [0x3b] = KEY_AGAIN, /* LOOP */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001303 [0x06] = KEY_AUDIO,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001304 [0x31] = KEY_PRINT, /* PREVIEW */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001305 [0x3e] = KEY_VIDEO,
1306 [0x10] = KEY_CHANNELUP,
1307 [0x20] = KEY_CHANNELDOWN,
1308 [0x0c] = KEY_VOLUMEDOWN,
1309 [0x28] = KEY_VOLUMEUP,
1310 [0x08] = KEY_MUTE,
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03001311 [0x26] = KEY_SEARCH, /* SCAN */
1312 [0x3f] = KEY_CAMERA, /* SNAPSHOT */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001313 [0x12] = KEY_RECORD,
1314 [0x32] = KEY_STOP,
1315 [0x3c] = KEY_PLAY,
1316 [0x1d] = KEY_REWIND,
1317 [0x2d] = KEY_PAUSE,
1318 [0x0d] = KEY_FORWARD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001319 [0x05] = KEY_ZOOM, /*FULL*/
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001320
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001321 [0x2a] = KEY_F21, /* LIVE TIMESHIFT */
1322 [0x0e] = KEY_F22, /* MIN TIMESHIFT */
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -03001323 [0x1e] = KEY_TIME, /* TIMESHIFT */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001324 [0x38] = KEY_F24, /* NORMAL TIMESHIFT */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001325};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001326EXPORT_SYMBOL_GPL(ir_codes_gotview7135);
1327
1328IR_KEYTAB_TYPE ir_codes_purpletv[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001329 [0x03] = KEY_POWER,
1330 [0x6f] = KEY_MUTE,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001331 [0x10] = KEY_BACKSPACE, /* Recall */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001332
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001333 [0x11] = KEY_0,
1334 [0x04] = KEY_1,
1335 [0x05] = KEY_2,
1336 [0x06] = KEY_3,
1337 [0x08] = KEY_4,
1338 [0x09] = KEY_5,
1339 [0x0a] = KEY_6,
1340 [0x0c] = KEY_7,
1341 [0x0d] = KEY_8,
1342 [0x0e] = KEY_9,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001343 [0x12] = KEY_DOT, /* 100+ */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001344
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001345 [0x07] = KEY_VOLUMEUP,
1346 [0x0b] = KEY_VOLUMEDOWN,
1347 [0x1a] = KEY_KPPLUS,
1348 [0x18] = KEY_KPMINUS,
1349 [0x15] = KEY_UP,
1350 [0x1d] = KEY_DOWN,
1351 [0x0f] = KEY_CHANNELUP,
1352 [0x13] = KEY_CHANNELDOWN,
1353 [0x48] = KEY_ZOOM,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001354
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001355 [0x1b] = KEY_VIDEO, /* Video source */
Mauro Carvalho Chehab62f1aa92009-08-29 09:01:54 -03001356 [0x1f] = KEY_CAMERA, /* Snapshot */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001357 [0x49] = KEY_LANGUAGE, /* MTS Select */
1358 [0x19] = KEY_SEARCH, /* Auto Scan */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001359
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001360 [0x4b] = KEY_RECORD,
1361 [0x46] = KEY_PLAY,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001362 [0x45] = KEY_PAUSE, /* Pause */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001363 [0x44] = KEY_STOP,
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -03001364 [0x43] = KEY_TIME, /* Time Shift */
Mauro Carvalho Chehab62f1aa92009-08-29 09:01:54 -03001365 [0x17] = KEY_CHANNEL, /* SURF CH */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001366 [0x40] = KEY_FORWARD, /* Forward ? */
1367 [0x42] = KEY_REWIND, /* Backward ? */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001368
1369};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001370EXPORT_SYMBOL_GPL(ir_codes_purpletv);
1371
1372/* Mapping for the 28 key remote control as seen at
1373 http://www.sednacomputer.com/photo/cardbus-tv.jpg
Mauro Lacye80faad2008-04-22 14:45:58 -03001374 Pavel Mihaylov <bin@bash.info>
1375 Also for the remote bundled with Kozumi KTV-01C card */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001376IR_KEYTAB_TYPE ir_codes_pctv_sedna[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001377 [0x00] = KEY_0,
1378 [0x01] = KEY_1,
1379 [0x02] = KEY_2,
1380 [0x03] = KEY_3,
1381 [0x04] = KEY_4,
1382 [0x05] = KEY_5,
1383 [0x06] = KEY_6,
1384 [0x07] = KEY_7,
1385 [0x08] = KEY_8,
1386 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001387
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001388 [0x0a] = KEY_AGAIN, /* Recall */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001389 [0x0b] = KEY_CHANNELUP,
1390 [0x0c] = KEY_VOLUMEUP,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001391 [0x0d] = KEY_MODE, /* Stereo */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001392 [0x0e] = KEY_STOP,
1393 [0x0f] = KEY_PREVIOUSSONG,
1394 [0x10] = KEY_ZOOM,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001395 [0x11] = KEY_TUNER, /* Source */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001396 [0x12] = KEY_POWER,
1397 [0x13] = KEY_MUTE,
1398 [0x15] = KEY_CHANNELDOWN,
1399 [0x18] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03001400 [0x19] = KEY_CAMERA, /* Snapshot */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001401 [0x1a] = KEY_NEXTSONG,
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -03001402 [0x1b] = KEY_TIME, /* Time Shift */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001403 [0x1c] = KEY_RADIO, /* FM Radio */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001404 [0x1d] = KEY_RECORD,
1405 [0x1e] = KEY_PAUSE,
Mauro Lacye80faad2008-04-22 14:45:58 -03001406 /* additional codes for Kozumi's remote */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001407 [0x14] = KEY_INFO, /* OSD */
1408 [0x16] = KEY_OK, /* OK */
1409 [0x17] = KEY_DIGITS, /* Plus */
1410 [0x1f] = KEY_PLAY, /* Play */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001411};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001412EXPORT_SYMBOL_GPL(ir_codes_pctv_sedna);
1413
1414/* Mark Phalan <phalanm@o2.ie> */
1415IR_KEYTAB_TYPE ir_codes_pv951[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001416 [0x00] = KEY_0,
1417 [0x01] = KEY_1,
1418 [0x02] = KEY_2,
1419 [0x03] = KEY_3,
1420 [0x04] = KEY_4,
1421 [0x05] = KEY_5,
1422 [0x06] = KEY_6,
1423 [0x07] = KEY_7,
1424 [0x08] = KEY_8,
1425 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001426
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001427 [0x12] = KEY_POWER,
1428 [0x10] = KEY_MUTE,
1429 [0x1f] = KEY_VOLUMEDOWN,
1430 [0x1b] = KEY_VOLUMEUP,
1431 [0x1a] = KEY_CHANNELUP,
1432 [0x1e] = KEY_CHANNELDOWN,
1433 [0x0e] = KEY_PAGEUP,
1434 [0x1d] = KEY_PAGEDOWN,
1435 [0x13] = KEY_SOUND,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001436
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001437 [0x18] = KEY_KPPLUSMINUS, /* CH +/- */
1438 [0x16] = KEY_SUBTITLE, /* CC */
1439 [0x0d] = KEY_TEXT, /* TTX */
1440 [0x0b] = KEY_TV, /* AIR/CBL */
1441 [0x11] = KEY_PC, /* PC/TV */
1442 [0x17] = KEY_OK, /* CH RTN */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001443 [0x19] = KEY_MODE, /* FUNC */
1444 [0x0c] = KEY_SEARCH, /* AUTOSCAN */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001445
1446 /* Not sure what to do with these ones! */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001447 [0x0f] = KEY_SELECT, /* SOURCE */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001448 [0x0a] = KEY_KPPLUS, /* +100 */
1449 [0x14] = KEY_EQUAL, /* SYNC */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001450 [0x1c] = KEY_MEDIA, /* PC/TV */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001451};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001452EXPORT_SYMBOL_GPL(ir_codes_pv951);
1453
1454/* generic RC5 keytable */
1455/* see http://users.pandora.be/nenya/electronics/rc5/codes00.htm */
1456/* used by old (black) Hauppauge remotes */
1457IR_KEYTAB_TYPE ir_codes_rc5_tv[IR_KEYTAB_SIZE] = {
1458 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001459 [0x00] = KEY_0,
1460 [0x01] = KEY_1,
1461 [0x02] = KEY_2,
1462 [0x03] = KEY_3,
1463 [0x04] = KEY_4,
1464 [0x05] = KEY_5,
1465 [0x06] = KEY_6,
1466 [0x07] = KEY_7,
1467 [0x08] = KEY_8,
1468 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001469
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001470 [0x0b] = KEY_CHANNEL, /* channel / program (japan: 11) */
1471 [0x0c] = KEY_POWER, /* standby */
1472 [0x0d] = KEY_MUTE, /* mute / demute */
1473 [0x0f] = KEY_TV, /* display */
1474 [0x10] = KEY_VOLUMEUP,
1475 [0x11] = KEY_VOLUMEDOWN,
1476 [0x12] = KEY_BRIGHTNESSUP,
1477 [0x13] = KEY_BRIGHTNESSDOWN,
1478 [0x1e] = KEY_SEARCH, /* search + */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001479 [0x20] = KEY_CHANNELUP, /* channel / program + */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001480 [0x21] = KEY_CHANNELDOWN, /* channel / program - */
1481 [0x22] = KEY_CHANNEL, /* alt / channel */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001482 [0x23] = KEY_LANGUAGE, /* 1st / 2nd language */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001483 [0x26] = KEY_SLEEP, /* sleeptimer */
1484 [0x2e] = KEY_MENU, /* 2nd controls (USA: menu) */
1485 [0x30] = KEY_PAUSE,
1486 [0x32] = KEY_REWIND,
1487 [0x33] = KEY_GOTO,
1488 [0x35] = KEY_PLAY,
1489 [0x36] = KEY_STOP,
1490 [0x37] = KEY_RECORD, /* recording */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001491 [0x3c] = KEY_TEXT, /* teletext submode (Japan: 12) */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001492 [0x3d] = KEY_SUSPEND, /* system standby */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001493
1494};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001495EXPORT_SYMBOL_GPL(ir_codes_rc5_tv);
1496
1497/* Table for Leadtek Winfast Remote Controls - used by both bttv and cx88 */
1498IR_KEYTAB_TYPE ir_codes_winfast[IR_KEYTAB_SIZE] = {
1499 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001500 [0x12] = KEY_0,
1501 [0x05] = KEY_1,
1502 [0x06] = KEY_2,
1503 [0x07] = KEY_3,
1504 [0x09] = KEY_4,
1505 [0x0a] = KEY_5,
1506 [0x0b] = KEY_6,
1507 [0x0d] = KEY_7,
1508 [0x0e] = KEY_8,
1509 [0x0f] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001510
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001511 [0x00] = KEY_POWER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001512 [0x1b] = KEY_AUDIO, /* Audio Source */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001513 [0x02] = KEY_TUNER, /* TV/FM, not on Y0400052 */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001514 [0x1e] = KEY_VIDEO, /* Video Source */
1515 [0x16] = KEY_INFO, /* Display information */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001516 [0x04] = KEY_VOLUMEUP,
1517 [0x08] = KEY_VOLUMEDOWN,
1518 [0x0c] = KEY_CHANNELUP,
1519 [0x10] = KEY_CHANNELDOWN,
1520 [0x03] = KEY_ZOOM, /* fullscreen */
1521 [0x1f] = KEY_TEXT, /* closed caption/teletext */
1522 [0x20] = KEY_SLEEP,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001523 [0x29] = KEY_CLEAR, /* boss key */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001524 [0x14] = KEY_MUTE,
1525 [0x2b] = KEY_RED,
1526 [0x2c] = KEY_GREEN,
1527 [0x2d] = KEY_YELLOW,
1528 [0x2e] = KEY_BLUE,
1529 [0x18] = KEY_KPPLUS, /* fine tune + , not on Y040052 */
1530 [0x19] = KEY_KPMINUS, /* fine tune - , not on Y040052 */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001531 [0x2a] = KEY_MEDIA, /* PIP (Picture in picture */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001532 [0x21] = KEY_DOT,
1533 [0x13] = KEY_ENTER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001534 [0x11] = KEY_LAST, /* Recall (last channel */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001535 [0x22] = KEY_PREVIOUS,
1536 [0x23] = KEY_PLAYPAUSE,
1537 [0x24] = KEY_NEXT,
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -03001538 [0x25] = KEY_TIME, /* Time Shifting */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001539 [0x26] = KEY_STOP,
1540 [0x27] = KEY_RECORD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001541 [0x28] = KEY_SAVE, /* Screenshot */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001542 [0x2f] = KEY_MENU,
1543 [0x30] = KEY_CANCEL,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001544 [0x31] = KEY_CHANNEL, /* Channel Surf */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001545 [0x32] = KEY_SUBTITLE,
1546 [0x33] = KEY_LANGUAGE,
1547 [0x34] = KEY_REWIND,
1548 [0x35] = KEY_FASTFORWARD,
1549 [0x36] = KEY_TV,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001550 [0x37] = KEY_RADIO, /* FM */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001551 [0x38] = KEY_DVD,
Michel Lespinasse102df6a2007-11-26 18:57:10 -03001552
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001553 [0x3e] = KEY_F21, /* MCE +VOL, on Y04G0033 */
1554 [0x3a] = KEY_F22, /* MCE -VOL, on Y04G0033 */
1555 [0x3b] = KEY_F23, /* MCE +CH, on Y04G0033 */
1556 [0x3f] = KEY_F24 /* MCE -CH, on Y04G0033 */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001557};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001558EXPORT_SYMBOL_GPL(ir_codes_winfast);
1559
Sylvain Pascheb93eedb2006-03-25 23:14:42 -03001560IR_KEYTAB_TYPE ir_codes_pinnacle_color[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001561 [0x59] = KEY_MUTE,
1562 [0x4a] = KEY_POWER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001563
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001564 [0x18] = KEY_TEXT,
1565 [0x26] = KEY_TV,
1566 [0x3d] = KEY_PRINT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001567
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001568 [0x48] = KEY_RED,
1569 [0x04] = KEY_GREEN,
1570 [0x11] = KEY_YELLOW,
1571 [0x00] = KEY_BLUE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001572
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001573 [0x2d] = KEY_VOLUMEUP,
1574 [0x1e] = KEY_VOLUMEDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001575
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001576 [0x49] = KEY_MENU,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001577
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001578 [0x16] = KEY_CHANNELUP,
1579 [0x17] = KEY_CHANNELDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001580
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001581 [0x20] = KEY_UP,
1582 [0x21] = KEY_DOWN,
1583 [0x22] = KEY_LEFT,
1584 [0x23] = KEY_RIGHT,
1585 [0x0d] = KEY_SELECT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001586
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001587 [0x08] = KEY_BACK,
1588 [0x07] = KEY_REFRESH,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001589
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001590 [0x2f] = KEY_ZOOM,
1591 [0x29] = KEY_RECORD,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001592
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001593 [0x4b] = KEY_PAUSE,
1594 [0x4d] = KEY_REWIND,
1595 [0x2e] = KEY_PLAY,
1596 [0x4e] = KEY_FORWARD,
1597 [0x53] = KEY_PREVIOUS,
1598 [0x4c] = KEY_STOP,
1599 [0x54] = KEY_NEXT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001600
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001601 [0x69] = KEY_0,
1602 [0x6a] = KEY_1,
1603 [0x6b] = KEY_2,
1604 [0x6c] = KEY_3,
1605 [0x6d] = KEY_4,
1606 [0x6e] = KEY_5,
1607 [0x6f] = KEY_6,
1608 [0x70] = KEY_7,
1609 [0x71] = KEY_8,
1610 [0x72] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001611
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001612 [0x74] = KEY_CHANNEL,
1613 [0x0a] = KEY_BACKSPACE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001614};
Sylvain Pascheb93eedb2006-03-25 23:14:42 -03001615EXPORT_SYMBOL_GPL(ir_codes_pinnacle_color);
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001616
1617/* Hauppauge: the newer, gray remotes (seems there are multiple
1618 * slightly different versions), shipped with cx88+ivtv cards.
1619 * almost rc5 coding, but some non-standard keys */
1620IR_KEYTAB_TYPE ir_codes_hauppauge_new[IR_KEYTAB_SIZE] = {
1621 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001622 [0x00] = KEY_0,
1623 [0x01] = KEY_1,
1624 [0x02] = KEY_2,
1625 [0x03] = KEY_3,
1626 [0x04] = KEY_4,
1627 [0x05] = KEY_5,
1628 [0x06] = KEY_6,
1629 [0x07] = KEY_7,
1630 [0x08] = KEY_8,
1631 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001632
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001633 [0x0a] = KEY_TEXT, /* keypad asterisk as well */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001634 [0x0b] = KEY_RED, /* red button */
1635 [0x0c] = KEY_RADIO,
1636 [0x0d] = KEY_MENU,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001637 [0x0e] = KEY_SUBTITLE, /* also the # key */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001638 [0x0f] = KEY_MUTE,
1639 [0x10] = KEY_VOLUMEUP,
1640 [0x11] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001641 [0x12] = KEY_PREVIOUS, /* previous channel */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001642 [0x14] = KEY_UP,
1643 [0x15] = KEY_DOWN,
1644 [0x16] = KEY_LEFT,
1645 [0x17] = KEY_RIGHT,
1646 [0x18] = KEY_VIDEO, /* Videos */
1647 [0x19] = KEY_AUDIO, /* Music */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001648 /* 0x1a: Pictures - presume this means
1649 "Multimedia Home Platform" -
1650 no "PICTURES" key in input.h
1651 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001652 [0x1a] = KEY_MHP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001653
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001654 [0x1b] = KEY_EPG, /* Guide */
1655 [0x1c] = KEY_TV,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001656 [0x1e] = KEY_NEXTSONG, /* skip >| */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001657 [0x1f] = KEY_EXIT, /* back/exit */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001658 [0x20] = KEY_CHANNELUP, /* channel / program + */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001659 [0x21] = KEY_CHANNELDOWN, /* channel / program - */
1660 [0x22] = KEY_CHANNEL, /* source (old black remote) */
1661 [0x24] = KEY_PREVIOUSSONG, /* replay |< */
1662 [0x25] = KEY_ENTER, /* OK */
1663 [0x26] = KEY_SLEEP, /* minimize (old black remote) */
1664 [0x29] = KEY_BLUE, /* blue key */
1665 [0x2e] = KEY_GREEN, /* green button */
1666 [0x30] = KEY_PAUSE, /* pause */
1667 [0x32] = KEY_REWIND, /* backward << */
1668 [0x34] = KEY_FASTFORWARD, /* forward >> */
1669 [0x35] = KEY_PLAY,
1670 [0x36] = KEY_STOP,
1671 [0x37] = KEY_RECORD, /* recording */
1672 [0x38] = KEY_YELLOW, /* yellow key */
1673 [0x3b] = KEY_SELECT, /* top right button */
1674 [0x3c] = KEY_ZOOM, /* full */
1675 [0x3d] = KEY_POWER, /* system power (green button) */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001676};
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001677EXPORT_SYMBOL_GPL(ir_codes_hauppauge_new);
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001678
1679IR_KEYTAB_TYPE ir_codes_npgtech[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001680 [0x1d] = KEY_SWITCHVIDEOMODE, /* switch inputs */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001681 [0x2a] = KEY_FRONT,
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001682
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001683 [0x3e] = KEY_1,
1684 [0x02] = KEY_2,
1685 [0x06] = KEY_3,
1686 [0x0a] = KEY_4,
1687 [0x0e] = KEY_5,
1688 [0x12] = KEY_6,
1689 [0x16] = KEY_7,
1690 [0x1a] = KEY_8,
1691 [0x1e] = KEY_9,
1692 [0x3a] = KEY_0,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001693 [0x22] = KEY_NUMLOCK, /* -/-- */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001694 [0x20] = KEY_REFRESH,
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001695
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001696 [0x03] = KEY_BRIGHTNESSDOWN,
1697 [0x28] = KEY_AUDIO,
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03001698 [0x3c] = KEY_CHANNELUP,
1699 [0x3f] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001700 [0x2e] = KEY_MUTE,
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03001701 [0x3b] = KEY_VOLUMEUP,
1702 [0x00] = KEY_CHANNELDOWN,
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001703 [0x07] = KEY_BRIGHTNESSUP,
1704 [0x2c] = KEY_TEXT,
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001705
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001706 [0x37] = KEY_RECORD,
1707 [0x17] = KEY_PLAY,
1708 [0x13] = KEY_PAUSE,
1709 [0x26] = KEY_STOP,
1710 [0x18] = KEY_FASTFORWARD,
1711 [0x14] = KEY_REWIND,
1712 [0x33] = KEY_ZOOM,
1713 [0x32] = KEY_KEYBOARD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001714 [0x30] = KEY_GOTO, /* Pointing arrow */
1715 [0x36] = KEY_MACRO, /* Maximize/Minimize (yellow) */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001716 [0x0b] = KEY_RADIO,
1717 [0x10] = KEY_POWER,
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001718
1719};
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001720EXPORT_SYMBOL_GPL(ir_codes_npgtech);
Peter Naullsd1009bd2006-08-08 09:10:05 -03001721
1722/* Norwood Micro (non-Pro) TV Tuner
1723 By Peter Naulls <peter@chocky.org>
1724 Key comments are the functions given in the manual */
1725IR_KEYTAB_TYPE ir_codes_norwood[IR_KEYTAB_SIZE] = {
1726 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001727 [0x20] = KEY_0,
1728 [0x21] = KEY_1,
1729 [0x22] = KEY_2,
1730 [0x23] = KEY_3,
1731 [0x24] = KEY_4,
1732 [0x25] = KEY_5,
1733 [0x26] = KEY_6,
1734 [0x27] = KEY_7,
1735 [0x28] = KEY_8,
1736 [0x29] = KEY_9,
Peter Naullsd1009bd2006-08-08 09:10:05 -03001737
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001738 [0x78] = KEY_TUNER, /* Video Source */
1739 [0x2c] = KEY_EXIT, /* Open/Close software */
1740 [0x2a] = KEY_SELECT, /* 2 Digit Select */
1741 [0x69] = KEY_AGAIN, /* Recall */
Peter Naullsd1009bd2006-08-08 09:10:05 -03001742
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001743 [0x32] = KEY_BRIGHTNESSUP, /* Brightness increase */
1744 [0x33] = KEY_BRIGHTNESSDOWN, /* Brightness decrease */
1745 [0x6b] = KEY_KPPLUS, /* (not named >>>>>) */
1746 [0x6c] = KEY_KPMINUS, /* (not named <<<<<) */
Peter Naullsd1009bd2006-08-08 09:10:05 -03001747
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001748 [0x2d] = KEY_MUTE, /* Mute */
1749 [0x30] = KEY_VOLUMEUP, /* Volume up */
1750 [0x31] = KEY_VOLUMEDOWN,/* Volume down */
1751 [0x60] = KEY_CHANNELUP, /* Channel up */
1752 [0x61] = KEY_CHANNELDOWN,/* Channel down */
Peter Naullsd1009bd2006-08-08 09:10:05 -03001753
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001754 [0x3f] = KEY_RECORD, /* Record */
1755 [0x37] = KEY_PLAY, /* Play */
1756 [0x36] = KEY_PAUSE, /* Pause */
1757 [0x2b] = KEY_STOP, /* Stop */
1758 [0x67] = KEY_FASTFORWARD,/* Foward */
1759 [0x66] = KEY_REWIND, /* Rewind */
1760 [0x3e] = KEY_SEARCH, /* Auto Scan */
1761 [0x2e] = KEY_CAMERA, /* Capture Video */
1762 [0x6d] = KEY_MENU, /* Show/Hide Control */
1763 [0x2f] = KEY_ZOOM, /* Full Screen */
1764 [0x34] = KEY_RADIO, /* FM */
1765 [0x65] = KEY_POWER, /* Computer power */
Peter Naullsd1009bd2006-08-08 09:10:05 -03001766};
Peter Naullsd1009bd2006-08-08 09:10:05 -03001767EXPORT_SYMBOL_GPL(ir_codes_norwood);
David Hardeman2520fff2006-12-02 21:16:05 -02001768
1769/* From reading the following remotes:
1770 * Zenith Universal 7 / TV Mode 807 / VCR Mode 837
1771 * Hauppauge (from NOVA-CI-s box product)
1772 * This is a "middle of the road" approach, differences are noted
1773 */
1774IR_KEYTAB_TYPE ir_codes_budget_ci_old[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001775 [0x00] = KEY_0,
1776 [0x01] = KEY_1,
1777 [0x02] = KEY_2,
1778 [0x03] = KEY_3,
1779 [0x04] = KEY_4,
1780 [0x05] = KEY_5,
1781 [0x06] = KEY_6,
1782 [0x07] = KEY_7,
1783 [0x08] = KEY_8,
1784 [0x09] = KEY_9,
1785 [0x0a] = KEY_ENTER,
1786 [0x0b] = KEY_RED,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001787 [0x0c] = KEY_POWER, /* RADIO on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001788 [0x0d] = KEY_MUTE,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001789 [0x0f] = KEY_A, /* TV on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001790 [0x10] = KEY_VOLUMEUP,
1791 [0x11] = KEY_VOLUMEDOWN,
1792 [0x14] = KEY_B,
1793 [0x1c] = KEY_UP,
1794 [0x1d] = KEY_DOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001795 [0x1e] = KEY_OPTION, /* RESERVED on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001796 [0x1f] = KEY_BREAK,
1797 [0x20] = KEY_CHANNELUP,
1798 [0x21] = KEY_CHANNELDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001799 [0x22] = KEY_PREVIOUS, /* Prev Ch on Zenith, SOURCE on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001800 [0x24] = KEY_RESTART,
1801 [0x25] = KEY_OK,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001802 [0x26] = KEY_CYCLEWINDOWS, /* MINIMIZE on Hauppauge */
1803 [0x28] = KEY_ENTER, /* VCR mode on Zenith */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001804 [0x29] = KEY_PAUSE,
1805 [0x2b] = KEY_RIGHT,
1806 [0x2c] = KEY_LEFT,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001807 [0x2e] = KEY_MENU, /* FULL SCREEN on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001808 [0x30] = KEY_SLOW,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001809 [0x31] = KEY_PREVIOUS, /* VCR mode on Zenith */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001810 [0x32] = KEY_REWIND,
1811 [0x34] = KEY_FASTFORWARD,
1812 [0x35] = KEY_PLAY,
1813 [0x36] = KEY_STOP,
1814 [0x37] = KEY_RECORD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001815 [0x38] = KEY_TUNER, /* TV/VCR on Zenith */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001816 [0x3a] = KEY_C,
1817 [0x3c] = KEY_EXIT,
1818 [0x3d] = KEY_POWER2,
1819 [0x3e] = KEY_TUNER,
David Hardeman2520fff2006-12-02 21:16:05 -02001820};
David Hardeman2520fff2006-12-02 21:16:05 -02001821EXPORT_SYMBOL_GPL(ir_codes_budget_ci_old);
Hermann Pitton91607232006-12-07 21:45:28 -03001822
1823/*
1824 * Marc Fargas <telenieko@telenieko.com>
1825 * this is the remote control that comes with the asus p7131
1826 * which has a label saying is "Model PC-39"
1827 */
1828IR_KEYTAB_TYPE ir_codes_asus_pc39[IR_KEYTAB_SIZE] = {
1829 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001830 [0x15] = KEY_0,
1831 [0x29] = KEY_1,
1832 [0x2d] = KEY_2,
1833 [0x2b] = KEY_3,
1834 [0x09] = KEY_4,
1835 [0x0d] = KEY_5,
1836 [0x0b] = KEY_6,
1837 [0x31] = KEY_7,
1838 [0x35] = KEY_8,
1839 [0x33] = KEY_9,
Hermann Pitton91607232006-12-07 21:45:28 -03001840
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001841 [0x3e] = KEY_RADIO, /* radio */
1842 [0x03] = KEY_MENU, /* dvd/menu */
1843 [0x2a] = KEY_VOLUMEUP,
1844 [0x19] = KEY_VOLUMEDOWN,
1845 [0x37] = KEY_UP,
1846 [0x3b] = KEY_DOWN,
1847 [0x27] = KEY_LEFT,
1848 [0x2f] = KEY_RIGHT,
1849 [0x25] = KEY_VIDEO, /* video */
1850 [0x39] = KEY_AUDIO, /* music */
Hermann Pitton91607232006-12-07 21:45:28 -03001851
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001852 [0x21] = KEY_TV, /* tv */
1853 [0x1d] = KEY_EXIT, /* back */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001854 [0x0a] = KEY_CHANNELUP, /* channel / program + */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001855 [0x1b] = KEY_CHANNELDOWN, /* channel / program - */
1856 [0x1a] = KEY_ENTER, /* enter */
Hermann Pitton91607232006-12-07 21:45:28 -03001857
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001858 [0x06] = KEY_PAUSE, /* play/pause */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001859 [0x1e] = KEY_PREVIOUS, /* rew */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001860 [0x26] = KEY_NEXT, /* forward */
1861 [0x0e] = KEY_REWIND, /* backward << */
1862 [0x3a] = KEY_FASTFORWARD, /* forward >> */
1863 [0x36] = KEY_STOP,
1864 [0x2e] = KEY_RECORD, /* recording */
1865 [0x16] = KEY_POWER, /* the button that reads "close" */
Hermann Pitton91607232006-12-07 21:45:28 -03001866
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001867 [0x11] = KEY_ZOOM, /* full screen */
1868 [0x13] = KEY_MACRO, /* recall */
1869 [0x23] = KEY_HOME, /* home */
1870 [0x05] = KEY_PVR, /* picture */
1871 [0x3d] = KEY_MUTE, /* mute */
1872 [0x01] = KEY_DVD, /* dvd */
Hermann Pitton91607232006-12-07 21:45:28 -03001873};
Hermann Pitton91607232006-12-07 21:45:28 -03001874EXPORT_SYMBOL_GPL(ir_codes_asus_pc39);
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001875
1876
1877/* Encore ENLTV-FM - black plastic, white front cover with white glowing buttons
1878 Juan Pablo Sormani <sorman@gmail.com> */
1879IR_KEYTAB_TYPE ir_codes_encore_enltv[IR_KEYTAB_SIZE] = {
1880
1881 /* Power button does nothing, neither in Windows app,
1882 although it sends data (used for BIOS wakeup?) */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001883 [0x0d] = KEY_MUTE,
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001884
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001885 [0x1e] = KEY_TV,
1886 [0x00] = KEY_VIDEO,
1887 [0x01] = KEY_AUDIO, /* music */
1888 [0x02] = KEY_MHP, /* picture */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001889
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001890 [0x1f] = KEY_1,
1891 [0x03] = KEY_2,
1892 [0x04] = KEY_3,
1893 [0x05] = KEY_4,
1894 [0x1c] = KEY_5,
1895 [0x06] = KEY_6,
1896 [0x07] = KEY_7,
1897 [0x08] = KEY_8,
1898 [0x1d] = KEY_9,
1899 [0x0a] = KEY_0,
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001900
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001901 [0x09] = KEY_LIST, /* -/-- */
1902 [0x0b] = KEY_LAST, /* recall */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001903
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001904 [0x14] = KEY_HOME, /* win start menu */
1905 [0x15] = KEY_EXIT, /* exit */
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03001906 [0x16] = KEY_CHANNELUP, /* UP */
1907 [0x12] = KEY_CHANNELDOWN, /* DOWN */
1908 [0x0c] = KEY_VOLUMEUP, /* RIGHT */
1909 [0x17] = KEY_VOLUMEDOWN, /* LEFT */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001910
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001911 [0x18] = KEY_ENTER, /* OK */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001912
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001913 [0x0e] = KEY_ESC,
Mauro Carvalho Chehab62f1aa92009-08-29 09:01:54 -03001914 [0x13] = KEY_CYCLEWINDOWS, /* desktop */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001915 [0x11] = KEY_TAB,
1916 [0x19] = KEY_SWITCHVIDEOMODE, /* switch */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001917
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001918 [0x1a] = KEY_MENU,
1919 [0x1b] = KEY_ZOOM, /* fullscreen */
1920 [0x44] = KEY_TIME, /* time shift */
1921 [0x40] = KEY_MODE, /* source */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001922
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001923 [0x5a] = KEY_RECORD,
1924 [0x42] = KEY_PLAY, /* play/pause */
1925 [0x45] = KEY_STOP,
1926 [0x43] = KEY_CAMERA, /* camera icon */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001927
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001928 [0x48] = KEY_REWIND,
1929 [0x4a] = KEY_FASTFORWARD,
1930 [0x49] = KEY_PREVIOUS,
1931 [0x4b] = KEY_NEXT,
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001932
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001933 [0x4c] = KEY_FAVORITES, /* tv wall */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001934 [0x4d] = KEY_SOUND, /* DVD sound */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001935 [0x4e] = KEY_LANGUAGE, /* DVD lang */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001936 [0x4f] = KEY_TEXT, /* DVD text */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001937
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001938 [0x50] = KEY_SLEEP, /* shutdown */
1939 [0x51] = KEY_MODE, /* stereo > main */
1940 [0x52] = KEY_SELECT, /* stereo > sap */
1941 [0x53] = KEY_PROG1, /* teletext */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001942
1943
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001944 [0x59] = KEY_RED, /* AP1 */
1945 [0x41] = KEY_GREEN, /* AP2 */
1946 [0x47] = KEY_YELLOW, /* AP3 */
1947 [0x57] = KEY_BLUE, /* AP4 */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001948};
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001949EXPORT_SYMBOL_GPL(ir_codes_encore_enltv);
Ville-Pekka Vainioae1942c2007-01-12 14:06:21 -03001950
Mauro Carvalho Chehab7d341a62008-08-05 10:14:13 -03001951/* Encore ENLTV2-FM - silver plastic - "Wand Media" written at the botton
1952 Mauro Carvalho Chehab <mchehab@infradead.org> */
1953IR_KEYTAB_TYPE ir_codes_encore_enltv2[IR_KEYTAB_SIZE] = {
1954 [0x4c] = KEY_POWER2,
1955 [0x4a] = KEY_TUNER,
1956 [0x40] = KEY_1,
1957 [0x60] = KEY_2,
1958 [0x50] = KEY_3,
1959 [0x70] = KEY_4,
1960 [0x48] = KEY_5,
1961 [0x68] = KEY_6,
1962 [0x58] = KEY_7,
1963 [0x78] = KEY_8,
1964 [0x44] = KEY_9,
1965 [0x54] = KEY_0,
1966
1967 [0x64] = KEY_LAST, /* +100 */
1968 [0x4e] = KEY_AGAIN, /* Recall */
1969
1970 [0x6c] = KEY_SWITCHVIDEOMODE, /* Video Source */
1971 [0x5e] = KEY_MENU,
1972 [0x56] = KEY_SCREEN,
1973 [0x7a] = KEY_SETUP,
1974
1975 [0x46] = KEY_MUTE,
1976 [0x5c] = KEY_MODE, /* Stereo */
1977 [0x74] = KEY_INFO,
1978 [0x7c] = KEY_CLEAR,
1979
1980 [0x55] = KEY_UP,
1981 [0x49] = KEY_DOWN,
1982 [0x7e] = KEY_LEFT,
1983 [0x59] = KEY_RIGHT,
1984 [0x6a] = KEY_ENTER,
1985
1986 [0x42] = KEY_VOLUMEUP,
1987 [0x62] = KEY_VOLUMEDOWN,
1988 [0x52] = KEY_CHANNELUP,
1989 [0x72] = KEY_CHANNELDOWN,
1990
1991 [0x41] = KEY_RECORD,
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03001992 [0x51] = KEY_CAMERA, /* Snapshot */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001993 [0x75] = KEY_TIME, /* Timeshift */
1994 [0x71] = KEY_TV2, /* PIP */
Mauro Carvalho Chehab7d341a62008-08-05 10:14:13 -03001995
1996 [0x45] = KEY_REWIND,
1997 [0x6f] = KEY_PAUSE,
1998 [0x7d] = KEY_FORWARD,
1999 [0x79] = KEY_STOP,
2000};
2001EXPORT_SYMBOL_GPL(ir_codes_encore_enltv2);
2002
Ville-Pekka Vainio28aedb82007-04-14 15:38:23 -03002003/* for the Technotrend 1500 bundled remotes (grey and black): */
Ville-Pekka Vainioae1942c2007-01-12 14:06:21 -03002004IR_KEYTAB_TYPE ir_codes_tt_1500[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002005 [0x01] = KEY_POWER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002006 [0x02] = KEY_SHUFFLE, /* ? double-arrow key */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002007 [0x03] = KEY_1,
2008 [0x04] = KEY_2,
2009 [0x05] = KEY_3,
2010 [0x06] = KEY_4,
2011 [0x07] = KEY_5,
2012 [0x08] = KEY_6,
2013 [0x09] = KEY_7,
2014 [0x0a] = KEY_8,
2015 [0x0b] = KEY_9,
2016 [0x0c] = KEY_0,
2017 [0x0d] = KEY_UP,
2018 [0x0e] = KEY_LEFT,
2019 [0x0f] = KEY_OK,
2020 [0x10] = KEY_RIGHT,
2021 [0x11] = KEY_DOWN,
2022 [0x12] = KEY_INFO,
2023 [0x13] = KEY_EXIT,
2024 [0x14] = KEY_RED,
2025 [0x15] = KEY_GREEN,
2026 [0x16] = KEY_YELLOW,
2027 [0x17] = KEY_BLUE,
2028 [0x18] = KEY_MUTE,
2029 [0x19] = KEY_TEXT,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002030 [0x1a] = KEY_MODE, /* ? TV/Radio */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002031 [0x21] = KEY_OPTION,
2032 [0x22] = KEY_EPG,
2033 [0x23] = KEY_CHANNELUP,
2034 [0x24] = KEY_CHANNELDOWN,
2035 [0x25] = KEY_VOLUMEUP,
2036 [0x26] = KEY_VOLUMEDOWN,
2037 [0x27] = KEY_SETUP,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002038 [0x3a] = KEY_RECORD, /* these keys are only in the black remote */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002039 [0x3b] = KEY_PLAY,
2040 [0x3c] = KEY_STOP,
2041 [0x3d] = KEY_REWIND,
2042 [0x3e] = KEY_PAUSE,
2043 [0x3f] = KEY_FORWARD,
Ville-Pekka Vainioae1942c2007-01-12 14:06:21 -03002044};
Ville-Pekka Vainioae1942c2007-01-12 14:06:21 -03002045EXPORT_SYMBOL_GPL(ir_codes_tt_1500);
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002046
Michael Krufky3c443582007-08-24 01:07:12 -03002047/* DViCO FUSION HDTV MCE remote */
2048IR_KEYTAB_TYPE ir_codes_fusionhdtv_mce[IR_KEYTAB_SIZE] = {
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002049
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002050 [0x0b] = KEY_1,
2051 [0x17] = KEY_2,
2052 [0x1b] = KEY_3,
2053 [0x07] = KEY_4,
2054 [0x50] = KEY_5,
2055 [0x54] = KEY_6,
2056 [0x48] = KEY_7,
2057 [0x4c] = KEY_8,
2058 [0x58] = KEY_9,
2059 [0x03] = KEY_0,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002060
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002061 [0x5e] = KEY_OK,
2062 [0x51] = KEY_UP,
2063 [0x53] = KEY_DOWN,
2064 [0x5b] = KEY_LEFT,
2065 [0x5f] = KEY_RIGHT,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002066
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002067 [0x02] = KEY_TV, /* Labeled DTV on remote */
2068 [0x0e] = KEY_MP3,
2069 [0x1a] = KEY_DVD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002070 [0x1e] = KEY_FAVORITES, /* Labeled CPF on remote */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002071 [0x16] = KEY_SETUP,
2072 [0x46] = KEY_POWER2, /* TV On/Off button on remote */
2073 [0x0a] = KEY_EPG, /* Labeled Guide on remote */
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002074
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002075 [0x49] = KEY_BACK,
2076 [0x59] = KEY_INFO, /* Labeled MORE on remote */
2077 [0x4d] = KEY_MENU, /* Labeled DVDMENU on remote */
2078 [0x55] = KEY_CYCLEWINDOWS, /* Labeled ALT-TAB on remote */
Michael Krufky3c443582007-08-24 01:07:12 -03002079
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002080 [0x0f] = KEY_PREVIOUSSONG, /* Labeled |<< REPLAY on remote */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002081 [0x12] = KEY_NEXTSONG, /* Labeled >>| SKIP on remote */
2082 [0x42] = KEY_ENTER, /* Labeled START with a green
2083 MS windows logo on remote */
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002084
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002085 [0x15] = KEY_VOLUMEUP,
2086 [0x05] = KEY_VOLUMEDOWN,
2087 [0x11] = KEY_CHANNELUP,
2088 [0x09] = KEY_CHANNELDOWN,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002089
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002090 [0x52] = KEY_CAMERA,
2091 [0x5a] = KEY_TUNER,
2092 [0x19] = KEY_OPEN,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002093
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002094 [0x13] = KEY_MODE, /* 4:3 16:9 select */
2095 [0x1f] = KEY_ZOOM,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002096
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002097 [0x43] = KEY_REWIND,
2098 [0x47] = KEY_PLAYPAUSE,
2099 [0x4f] = KEY_FASTFORWARD,
2100 [0x57] = KEY_MUTE,
2101 [0x0d] = KEY_STOP,
2102 [0x01] = KEY_RECORD,
2103 [0x4e] = KEY_POWER,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002104};
Michael Krufky3c443582007-08-24 01:07:12 -03002105EXPORT_SYMBOL_GPL(ir_codes_fusionhdtv_mce);
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002106
Steven Toth91211062008-01-22 01:00:33 -03002107/* Pinnacle PCTV HD 800i mini remote */
2108IR_KEYTAB_TYPE ir_codes_pinnacle_pctv_hd[IR_KEYTAB_SIZE] = {
2109
2110 [0x0f] = KEY_1,
2111 [0x15] = KEY_2,
2112 [0x10] = KEY_3,
2113 [0x18] = KEY_4,
2114 [0x1b] = KEY_5,
2115 [0x1e] = KEY_6,
2116 [0x11] = KEY_7,
2117 [0x21] = KEY_8,
2118 [0x12] = KEY_9,
2119 [0x27] = KEY_0,
2120
2121 [0x24] = KEY_ZOOM,
2122 [0x2a] = KEY_SUBTITLE,
2123
2124 [0x00] = KEY_MUTE,
2125 [0x01] = KEY_ENTER, /* Pinnacle Logo */
2126 [0x39] = KEY_POWER,
2127
2128 [0x03] = KEY_VOLUMEUP,
2129 [0x09] = KEY_VOLUMEDOWN,
2130 [0x06] = KEY_CHANNELUP,
2131 [0x0c] = KEY_CHANNELDOWN,
2132
2133 [0x2d] = KEY_REWIND,
2134 [0x30] = KEY_PLAYPAUSE,
2135 [0x33] = KEY_FASTFORWARD,
2136 [0x3c] = KEY_STOP,
2137 [0x36] = KEY_RECORD,
2138 [0x3f] = KEY_EPG, /* Labeled "?" */
2139};
2140EXPORT_SYMBOL_GPL(ir_codes_pinnacle_pctv_hd);
2141
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002142/*
2143 * Igor Kuznetsov <igk72@ya.ru>
2144 * Andrey J. Melnikov <temnota@kmv.ru>
2145 *
2146 * Keytable is used by BeholdTV 60x series, M6 series at
2147 * least, and probably other cards too.
2148 * The "ascii-art picture" below (in comments, first row
2149 * is the keycode in hex, and subsequent row(s) shows
2150 * the button labels (several variants when appropriate)
2151 * helps to descide which keycodes to assign to the buttons.
2152 */
2153IR_KEYTAB_TYPE ir_codes_behold[IR_KEYTAB_SIZE] = {
2154
2155 /* 0x1c 0x12 *
2156 * TV/FM POWER *
2157 * */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002158 [0x1c] = KEY_TUNER, /* XXX KEY_TV / KEY_RADIO */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002159 [0x12] = KEY_POWER,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002160
2161 /* 0x01 0x02 0x03 *
2162 * 1 2 3 *
2163 * *
2164 * 0x04 0x05 0x06 *
2165 * 4 5 6 *
2166 * *
2167 * 0x07 0x08 0x09 *
2168 * 7 8 9 *
2169 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002170 [0x01] = KEY_1,
2171 [0x02] = KEY_2,
2172 [0x03] = KEY_3,
2173 [0x04] = KEY_4,
2174 [0x05] = KEY_5,
2175 [0x06] = KEY_6,
2176 [0x07] = KEY_7,
2177 [0x08] = KEY_8,
2178 [0x09] = KEY_9,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002179
2180 /* 0x0a 0x00 0x17 *
2181 * RECALL 0 MODE *
2182 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002183 [0x0a] = KEY_AGAIN,
2184 [0x00] = KEY_0,
2185 [0x17] = KEY_MODE,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002186
2187 /* 0x14 0x10 *
2188 * ASPECT FULLSCREEN *
2189 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002190 [0x14] = KEY_SCREEN,
2191 [0x10] = KEY_ZOOM,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002192
2193 /* 0x0b *
2194 * Up *
2195 * *
2196 * 0x18 0x16 0x0c *
2197 * Left Ok Right *
2198 * *
2199 * 0x015 *
2200 * Down *
2201 * */
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03002202 [0x0b] = KEY_CHANNELUP,
2203 [0x18] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002204 [0x16] = KEY_OK, /* XXX KEY_ENTER */
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03002205 [0x0c] = KEY_VOLUMEUP,
2206 [0x15] = KEY_CHANNELDOWN,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002207
2208 /* 0x11 0x0d *
2209 * MUTE INFO *
2210 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002211 [0x11] = KEY_MUTE,
2212 [0x0d] = KEY_INFO,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002213
2214 /* 0x0f 0x1b 0x1a *
2215 * RECORD PLAY/PAUSE STOP *
2216 * *
2217 * 0x0e 0x1f 0x1e *
2218 *TELETEXT AUDIO SOURCE *
2219 * RED YELLOW *
2220 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002221 [0x0f] = KEY_RECORD,
2222 [0x1b] = KEY_PLAYPAUSE,
2223 [0x1a] = KEY_STOP,
2224 [0x0e] = KEY_TEXT,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002225 [0x1f] = KEY_RED, /*XXX KEY_AUDIO */
2226 [0x1e] = KEY_YELLOW, /*XXX KEY_SOURCE */
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002227
2228 /* 0x1d 0x13 0x19 *
2229 * SLEEP PREVIEW DVB *
2230 * GREEN BLUE *
2231 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002232 [0x1d] = KEY_SLEEP,
2233 [0x13] = KEY_GREEN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002234 [0x19] = KEY_BLUE, /* XXX KEY_SAT */
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002235
2236 /* 0x58 0x5c *
2237 * FREEZE SNAPSHOT *
2238 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002239 [0x58] = KEY_SLOW,
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03002240 [0x5c] = KEY_CAMERA,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002241
2242};
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002243EXPORT_SYMBOL_GPL(ir_codes_behold);
Adrian Pardinif0ba3562008-02-11 12:40:53 -03002244
Dmitry Belimovb34dddb2008-04-23 14:09:08 -03002245/* Beholder Intl. Ltd. 2008
2246 * Dmitry Belimov d.belimov@google.com
2247 * Keytable is used by BeholdTV Columbus
2248 * The "ascii-art picture" below (in comments, first row
2249 * is the keycode in hex, and subsequent row(s) shows
2250 * the button labels (several variants when appropriate)
2251 * helps to descide which keycodes to assign to the buttons.
2252 */
2253IR_KEYTAB_TYPE ir_codes_behold_columbus[IR_KEYTAB_SIZE] = {
2254
2255 /* 0x13 0x11 0x1C 0x12 *
2256 * Mute Source TV/FM Power *
2257 * */
2258
2259 [0x13] = KEY_MUTE,
2260 [0x11] = KEY_PROPS,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002261 [0x1C] = KEY_TUNER, /* KEY_TV/KEY_RADIO */
Dmitry Belimovb34dddb2008-04-23 14:09:08 -03002262 [0x12] = KEY_POWER,
2263
2264 /* 0x01 0x02 0x03 0x0D *
2265 * 1 2 3 Stereo *
2266 * *
2267 * 0x04 0x05 0x06 0x19 *
2268 * 4 5 6 Snapshot *
2269 * *
2270 * 0x07 0x08 0x09 0x10 *
2271 * 7 8 9 Zoom *
2272 * */
2273 [0x01] = KEY_1,
2274 [0x02] = KEY_2,
2275 [0x03] = KEY_3,
2276 [0x0D] = KEY_SETUP, /* Setup key */
2277 [0x04] = KEY_4,
2278 [0x05] = KEY_5,
2279 [0x06] = KEY_6,
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03002280 [0x19] = KEY_CAMERA, /* Snapshot key */
Dmitry Belimovb34dddb2008-04-23 14:09:08 -03002281 [0x07] = KEY_7,
2282 [0x08] = KEY_8,
2283 [0x09] = KEY_9,
2284 [0x10] = KEY_ZOOM,
2285
2286 /* 0x0A 0x00 0x0B 0x0C *
2287 * RECALL 0 ChannelUp VolumeUp *
2288 * */
2289 [0x0A] = KEY_AGAIN,
2290 [0x00] = KEY_0,
2291 [0x0B] = KEY_CHANNELUP,
2292 [0x0C] = KEY_VOLUMEUP,
2293
2294 /* 0x1B 0x1D 0x15 0x18 *
2295 * Timeshift Record ChannelDown VolumeDown *
2296 * */
2297
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -03002298 [0x1B] = KEY_TIME,
Dmitry Belimovb34dddb2008-04-23 14:09:08 -03002299 [0x1D] = KEY_RECORD,
2300 [0x15] = KEY_CHANNELDOWN,
2301 [0x18] = KEY_VOLUMEDOWN,
2302
2303 /* 0x0E 0x1E 0x0F 0x1A *
2304 * Stop Pause Previouse Next *
2305 * */
2306
2307 [0x0E] = KEY_STOP,
2308 [0x1E] = KEY_PAUSE,
2309 [0x0F] = KEY_PREVIOUS,
2310 [0x1A] = KEY_NEXT,
2311
2312};
2313EXPORT_SYMBOL_GPL(ir_codes_behold_columbus);
2314
Adrian Pardinif0ba3562008-02-11 12:40:53 -03002315/*
2316 * Remote control for the Genius TVGO A11MCE
2317 * Adrian Pardini <pardo.bsso@gmail.com>
2318 */
2319IR_KEYTAB_TYPE ir_codes_genius_tvgo_a11mce[IR_KEYTAB_SIZE] = {
2320 /* Keys 0 to 9 */
2321 [0x48] = KEY_0,
2322 [0x09] = KEY_1,
2323 [0x1d] = KEY_2,
2324 [0x1f] = KEY_3,
2325 [0x19] = KEY_4,
2326 [0x1b] = KEY_5,
2327 [0x11] = KEY_6,
2328 [0x17] = KEY_7,
2329 [0x12] = KEY_8,
2330 [0x16] = KEY_9,
2331
2332 [0x54] = KEY_RECORD, /* recording */
2333 [0x06] = KEY_MUTE, /* mute */
2334 [0x10] = KEY_POWER,
2335 [0x40] = KEY_LAST, /* recall */
2336 [0x4c] = KEY_CHANNELUP, /* channel / program + */
2337 [0x00] = KEY_CHANNELDOWN, /* channel / program - */
2338 [0x0d] = KEY_VOLUMEUP,
2339 [0x15] = KEY_VOLUMEDOWN,
2340 [0x4d] = KEY_OK, /* also labeled as Pause */
2341 [0x1c] = KEY_ZOOM, /* full screen and Stop*/
2342 [0x02] = KEY_MODE, /* AV Source or Rewind*/
2343 [0x04] = KEY_LIST, /* -/-- */
2344 /* small arrows above numbers */
2345 [0x1a] = KEY_NEXT, /* also Fast Forward */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002346 [0x0e] = KEY_PREVIOUS, /* also Rewind */
Adrian Pardinif0ba3562008-02-11 12:40:53 -03002347 /* these are in a rather non standard layout and have
2348 an alternate name written */
2349 [0x1e] = KEY_UP, /* Video Setting */
2350 [0x0a] = KEY_DOWN, /* Video Default */
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03002351 [0x05] = KEY_CAMERA, /* Snapshot */
Adrian Pardinif0ba3562008-02-11 12:40:53 -03002352 [0x0c] = KEY_RIGHT, /* Hide Panel */
2353 /* Four buttons without label */
2354 [0x49] = KEY_RED,
2355 [0x0b] = KEY_GREEN,
2356 [0x13] = KEY_YELLOW,
2357 [0x50] = KEY_BLUE,
2358};
2359EXPORT_SYMBOL_GPL(ir_codes_genius_tvgo_a11mce);
Dâniel Fragaba928032008-04-08 19:56:44 -03002360
2361/*
2362 * Remote control for Powercolor Real Angel 330
2363 * Daniel Fraga <fragabr@gmail.com>
2364 */
2365IR_KEYTAB_TYPE ir_codes_powercolor_real_angel[IR_KEYTAB_SIZE] = {
2366 [0x38] = KEY_SWITCHVIDEOMODE, /* switch inputs */
2367 [0x0c] = KEY_MEDIA, /* Turn ON/OFF App */
2368 [0x00] = KEY_0,
2369 [0x01] = KEY_1,
2370 [0x02] = KEY_2,
2371 [0x03] = KEY_3,
2372 [0x04] = KEY_4,
2373 [0x05] = KEY_5,
2374 [0x06] = KEY_6,
2375 [0x07] = KEY_7,
2376 [0x08] = KEY_8,
2377 [0x09] = KEY_9,
2378 [0x0a] = KEY_DIGITS, /* single, double, tripple digit */
2379 [0x29] = KEY_PREVIOUS, /* previous channel */
2380 [0x12] = KEY_BRIGHTNESSUP,
2381 [0x13] = KEY_BRIGHTNESSDOWN,
2382 [0x2b] = KEY_MODE, /* stereo/mono */
2383 [0x2c] = KEY_TEXT, /* teletext */
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03002384 [0x20] = KEY_CHANNELUP, /* channel up */
2385 [0x21] = KEY_CHANNELDOWN, /* channel down */
2386 [0x10] = KEY_VOLUMEUP, /* volume up */
2387 [0x11] = KEY_VOLUMEDOWN, /* volume down */
Dâniel Fragaba928032008-04-08 19:56:44 -03002388 [0x0d] = KEY_MUTE,
2389 [0x1f] = KEY_RECORD,
2390 [0x17] = KEY_PLAY,
2391 [0x16] = KEY_PAUSE,
2392 [0x0b] = KEY_STOP,
2393 [0x27] = KEY_FASTFORWARD,
2394 [0x26] = KEY_REWIND,
2395 [0x1e] = KEY_SEARCH, /* autoscan */
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03002396 [0x0e] = KEY_CAMERA, /* snapshot */
Dâniel Fragaba928032008-04-08 19:56:44 -03002397 [0x2d] = KEY_SETUP,
2398 [0x0f] = KEY_SCREEN, /* full screen */
2399 [0x14] = KEY_RADIO, /* FM radio */
2400 [0x25] = KEY_POWER, /* power */
2401};
2402EXPORT_SYMBOL_GPL(ir_codes_powercolor_real_angel);
Tim Farrington6e501a32008-06-15 13:33:42 -03002403
Mauro Carvalho Chehab26d5f3a2008-12-07 13:19:29 -03002404/* Kworld Plus TV Analog Lite PCI IR
2405 Mauro Carvalho Chehab <mchehab@infradead.org>
2406 */
2407IR_KEYTAB_TYPE ir_codes_kworld_plus_tv_analog[IR_KEYTAB_SIZE] = {
2408 [0x0c] = KEY_PROG1, /* Kworld key */
2409 [0x16] = KEY_CLOSECD, /* -> ) */
2410 [0x1d] = KEY_POWER2,
2411
2412 [0x00] = KEY_1,
2413 [0x01] = KEY_2,
2414 [0x02] = KEY_3, /* Two keys have the same code: 3 and left */
2415 [0x03] = KEY_4, /* Two keys have the same code: 3 and right */
2416 [0x04] = KEY_5,
2417 [0x05] = KEY_6,
2418 [0x06] = KEY_7,
2419 [0x07] = KEY_8,
2420 [0x08] = KEY_9,
2421 [0x0a] = KEY_0,
2422
2423 [0x09] = KEY_AGAIN,
2424 [0x14] = KEY_MUTE,
2425
2426 [0x20] = KEY_UP,
2427 [0x21] = KEY_DOWN,
2428 [0x0b] = KEY_ENTER,
2429
2430 [0x10] = KEY_CHANNELUP,
2431 [0x11] = KEY_CHANNELDOWN,
2432
2433 /* Couldn't map key left/key right since those
2434 conflict with '3' and '4' scancodes
2435 I dunno what the original driver does
2436 */
2437
2438 [0x13] = KEY_VOLUMEUP,
2439 [0x12] = KEY_VOLUMEDOWN,
2440
2441 /* The lower part of the IR
2442 There are several duplicated keycodes there.
2443 Most of them conflict with digits.
2444 Add mappings just to the unused scancodes.
2445 Somehow, the original driver has a way to know,
2446 but this doesn't seem to be on some GPIO.
2447 Also, it is not related to the time between keyup
2448 and keydown.
2449 */
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -03002450 [0x19] = KEY_TIME, /* Timeshift */
Mauro Carvalho Chehab26d5f3a2008-12-07 13:19:29 -03002451 [0x1a] = KEY_STOP,
2452 [0x1b] = KEY_RECORD,
2453
2454 [0x22] = KEY_TEXT,
2455
2456 [0x15] = KEY_AUDIO, /* ((*)) */
2457 [0x0f] = KEY_ZOOM,
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03002458 [0x1c] = KEY_CAMERA, /* snapshot */
Mauro Carvalho Chehab26d5f3a2008-12-07 13:19:29 -03002459
2460 [0x18] = KEY_RED, /* B */
2461 [0x23] = KEY_GREEN, /* C */
2462};
2463EXPORT_SYMBOL_GPL(ir_codes_kworld_plus_tv_analog);
2464
Mauro Carvalho Chehab9fc2c5e2009-02-11 14:15:14 -03002465/* Kaiomy TVnPC U2
2466 Mauro Carvalho Chehab <mchehab@infradead.org>
2467 */
2468IR_KEYTAB_TYPE ir_codes_kaiomy[IR_KEYTAB_SIZE] = {
2469 [0x43] = KEY_POWER2,
2470 [0x01] = KEY_LIST,
2471 [0x0b] = KEY_ZOOM,
2472 [0x03] = KEY_POWER,
2473
2474 [0x04] = KEY_1,
2475 [0x08] = KEY_2,
2476 [0x02] = KEY_3,
2477
2478 [0x0f] = KEY_4,
2479 [0x05] = KEY_5,
2480 [0x06] = KEY_6,
2481
2482 [0x0c] = KEY_7,
2483 [0x0d] = KEY_8,
2484 [0x0a] = KEY_9,
2485
2486 [0x11] = KEY_0,
2487
2488 [0x09] = KEY_CHANNELUP,
2489 [0x07] = KEY_CHANNELDOWN,
2490
2491 [0x0e] = KEY_VOLUMEUP,
2492 [0x13] = KEY_VOLUMEDOWN,
2493
2494 [0x10] = KEY_HOME,
2495 [0x12] = KEY_ENTER,
2496
2497 [0x14] = KEY_RECORD,
2498 [0x15] = KEY_STOP,
2499 [0x16] = KEY_PLAY,
2500 [0x17] = KEY_MUTE,
2501
2502 [0x18] = KEY_UP,
2503 [0x19] = KEY_DOWN,
2504 [0x1a] = KEY_LEFT,
2505 [0x1b] = KEY_RIGHT,
2506
2507 [0x1c] = KEY_RED,
2508 [0x1d] = KEY_GREEN,
2509 [0x1e] = KEY_YELLOW,
2510 [0x1f] = KEY_BLUE,
2511};
2512EXPORT_SYMBOL_GPL(ir_codes_kaiomy);
2513
Tim Farrington6e501a32008-06-15 13:33:42 -03002514IR_KEYTAB_TYPE ir_codes_avermedia_a16d[IR_KEYTAB_SIZE] = {
2515 [0x20] = KEY_LIST,
2516 [0x00] = KEY_POWER,
2517 [0x28] = KEY_1,
2518 [0x18] = KEY_2,
2519 [0x38] = KEY_3,
2520 [0x24] = KEY_4,
2521 [0x14] = KEY_5,
2522 [0x34] = KEY_6,
2523 [0x2c] = KEY_7,
2524 [0x1c] = KEY_8,
2525 [0x3c] = KEY_9,
2526 [0x12] = KEY_SUBTITLE,
2527 [0x22] = KEY_0,
2528 [0x32] = KEY_REWIND,
2529 [0x3a] = KEY_SHUFFLE,
2530 [0x02] = KEY_PRINT,
2531 [0x11] = KEY_CHANNELDOWN,
2532 [0x31] = KEY_CHANNELUP,
2533 [0x0c] = KEY_ZOOM,
2534 [0x1e] = KEY_VOLUMEDOWN,
2535 [0x3e] = KEY_VOLUMEUP,
2536 [0x0a] = KEY_MUTE,
2537 [0x04] = KEY_AUDIO,
2538 [0x26] = KEY_RECORD,
2539 [0x06] = KEY_PLAY,
2540 [0x36] = KEY_STOP,
2541 [0x16] = KEY_PAUSE,
2542 [0x2e] = KEY_REWIND,
2543 [0x0e] = KEY_FASTFORWARD,
2544 [0x30] = KEY_TEXT,
2545 [0x21] = KEY_GREEN,
2546 [0x01] = KEY_BLUE,
2547 [0x08] = KEY_EPG,
2548 [0x2a] = KEY_MENU,
2549};
2550EXPORT_SYMBOL_GPL(ir_codes_avermedia_a16d);
Mauro Carvalho Chehabbf1ece62008-06-26 17:03:00 -03002551
2552/* Encore ENLTV-FM v5.3
2553 Mauro Carvalho Chehab <mchehab@infradead.org>
2554 */
2555IR_KEYTAB_TYPE ir_codes_encore_enltv_fm53[IR_KEYTAB_SIZE] = {
2556 [0x10] = KEY_POWER2,
2557 [0x06] = KEY_MUTE,
2558
2559 [0x09] = KEY_1,
2560 [0x1d] = KEY_2,
2561 [0x1f] = KEY_3,
2562 [0x19] = KEY_4,
2563 [0x1b] = KEY_5,
2564 [0x11] = KEY_6,
2565 [0x17] = KEY_7,
2566 [0x12] = KEY_8,
2567 [0x16] = KEY_9,
2568 [0x48] = KEY_0,
2569
2570 [0x04] = KEY_LIST, /* -/-- */
2571 [0x40] = KEY_LAST, /* recall */
2572
2573 [0x02] = KEY_MODE, /* TV/AV */
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03002574 [0x05] = KEY_CAMERA, /* SNAPSHOT */
Mauro Carvalho Chehabbf1ece62008-06-26 17:03:00 -03002575
2576 [0x4c] = KEY_CHANNELUP, /* UP */
2577 [0x00] = KEY_CHANNELDOWN, /* DOWN */
2578 [0x0d] = KEY_VOLUMEUP, /* RIGHT */
2579 [0x15] = KEY_VOLUMEDOWN, /* LEFT */
2580 [0x49] = KEY_ENTER, /* OK */
2581
2582 [0x54] = KEY_RECORD,
2583 [0x4d] = KEY_PLAY, /* pause */
2584
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03002585 [0x1e] = KEY_MENU, /* video setting */
Mauro Carvalho Chehabbf1ece62008-06-26 17:03:00 -03002586 [0x0e] = KEY_RIGHT, /* <- */
2587 [0x1a] = KEY_LEFT, /* -> */
2588
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03002589 [0x0a] = KEY_CLEAR, /* video default */
Mauro Carvalho Chehabbf1ece62008-06-26 17:03:00 -03002590 [0x0c] = KEY_ZOOM, /* hide pannel */
2591 [0x47] = KEY_SLEEP, /* shutdown */
2592};
2593EXPORT_SYMBOL_GPL(ir_codes_encore_enltv_fm53);
Mauro Carvalho Chehab9b000192008-06-26 17:03:00 -03002594
2595/* Zogis Real Audio 220 - 32 keys IR */
2596IR_KEYTAB_TYPE ir_codes_real_audio_220_32_keys[IR_KEYTAB_SIZE] = {
2597 [0x1c] = KEY_RADIO,
2598 [0x12] = KEY_POWER2,
2599
2600 [0x01] = KEY_1,
2601 [0x02] = KEY_2,
2602 [0x03] = KEY_3,
2603 [0x04] = KEY_4,
2604 [0x05] = KEY_5,
2605 [0x06] = KEY_6,
2606 [0x07] = KEY_7,
2607 [0x08] = KEY_8,
2608 [0x09] = KEY_9,
2609 [0x00] = KEY_0,
2610
2611 [0x0c] = KEY_VOLUMEUP,
2612 [0x18] = KEY_VOLUMEDOWN,
2613 [0x0b] = KEY_CHANNELUP,
2614 [0x15] = KEY_CHANNELDOWN,
2615 [0x16] = KEY_ENTER,
2616
2617 [0x11] = KEY_LIST, /* Source */
2618 [0x0d] = KEY_AUDIO, /* stereo */
2619
2620 [0x0f] = KEY_PREVIOUS, /* Prev */
Mauro Carvalho Chehabf545cb42009-08-29 09:06:07 -03002621 [0x1b] = KEY_TIME, /* Timeshift */
Mauro Carvalho Chehab9b000192008-06-26 17:03:00 -03002622 [0x1a] = KEY_NEXT, /* Next */
2623
2624 [0x0e] = KEY_STOP,
2625 [0x1f] = KEY_PLAY,
2626 [0x1e] = KEY_PLAYPAUSE, /* Pause */
2627
2628 [0x1d] = KEY_RECORD,
2629 [0x13] = KEY_MUTE,
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03002630 [0x19] = KEY_CAMERA, /* Snapshot */
Mauro Carvalho Chehab9b000192008-06-26 17:03:00 -03002631
2632};
2633EXPORT_SYMBOL_GPL(ir_codes_real_audio_220_32_keys);
Devin Heitmueller60245e82008-11-16 08:03:53 -03002634
2635/* ATI TV Wonder HD 600 USB
2636 Devin Heitmueller <devin.heitmueller@gmail.com>
2637 */
2638IR_KEYTAB_TYPE ir_codes_ati_tv_wonder_hd_600[IR_KEYTAB_SIZE] = {
2639 [0x00] = KEY_RECORD, /* Row 1 */
2640 [0x01] = KEY_PLAYPAUSE,
2641 [0x02] = KEY_STOP,
2642 [0x03] = KEY_POWER,
2643 [0x04] = KEY_PREVIOUS, /* Row 2 */
2644 [0x05] = KEY_REWIND,
2645 [0x06] = KEY_FORWARD,
2646 [0x07] = KEY_NEXT,
2647 [0x08] = KEY_EPG, /* Row 3 */
2648 [0x09] = KEY_HOME,
2649 [0x0a] = KEY_MENU,
2650 [0x0b] = KEY_CHANNELUP,
2651 [0x0c] = KEY_BACK, /* Row 4 */
2652 [0x0d] = KEY_UP,
2653 [0x0e] = KEY_INFO,
2654 [0x0f] = KEY_CHANNELDOWN,
2655 [0x10] = KEY_LEFT, /* Row 5 */
2656 [0x11] = KEY_SELECT,
2657 [0x12] = KEY_RIGHT,
2658 [0x13] = KEY_VOLUMEUP,
2659 [0x14] = KEY_LAST, /* Row 6 */
2660 [0x15] = KEY_DOWN,
2661 [0x16] = KEY_MUTE,
2662 [0x17] = KEY_VOLUMEDOWN,
2663};
Devin Heitmueller60245e82008-11-16 08:03:53 -03002664EXPORT_SYMBOL_GPL(ir_codes_ati_tv_wonder_hd_600);
Igor M. Liplianinb72857d2009-02-26 03:49:44 -03002665
2666/* DVBWorld remotes
2667 Igor M. Liplianin <liplianin@me.by>
2668 */
2669IR_KEYTAB_TYPE ir_codes_dm1105_nec[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab62f1aa92009-08-29 09:01:54 -03002670 [0x0a] = KEY_POWER2, /* power */
2671 [0x0c] = KEY_MUTE, /* mute */
Igor M. Liplianinb72857d2009-02-26 03:49:44 -03002672 [0x11] = KEY_1,
2673 [0x12] = KEY_2,
2674 [0x13] = KEY_3,
2675 [0x14] = KEY_4,
2676 [0x15] = KEY_5,
2677 [0x16] = KEY_6,
2678 [0x17] = KEY_7,
2679 [0x18] = KEY_8,
2680 [0x19] = KEY_9,
2681 [0x10] = KEY_0,
Mauro Carvalho Chehabcd748872009-08-29 09:37:00 -03002682 [0x1c] = KEY_CHANNELUP, /* ch+ */
2683 [0x0f] = KEY_CHANNELDOWN, /* ch- */
Mauro Carvalho Chehab62f1aa92009-08-29 09:01:54 -03002684 [0x1a] = KEY_VOLUMEUP, /* vol+ */
2685 [0x0e] = KEY_VOLUMEDOWN, /* vol- */
2686 [0x04] = KEY_RECORD, /* rec */
2687 [0x09] = KEY_CHANNEL, /* fav */
2688 [0x08] = KEY_BACKSPACE, /* rewind */
2689 [0x07] = KEY_FASTFORWARD, /* fast */
2690 [0x0b] = KEY_PAUSE, /* pause */
2691 [0x02] = KEY_ESC, /* cancel */
2692 [0x03] = KEY_TAB, /* tab */
2693 [0x00] = KEY_UP, /* up */
2694 [0x1f] = KEY_ENTER, /* ok */
2695 [0x01] = KEY_DOWN, /* down */
2696 [0x05] = KEY_RECORD, /* cap */
2697 [0x06] = KEY_STOP, /* stop */
2698 [0x40] = KEY_ZOOM, /* full */
2699 [0x1e] = KEY_TV, /* tvmode */
2700 [0x1b] = KEY_B, /* recall */
Igor M. Liplianinb72857d2009-02-26 03:49:44 -03002701};
2702EXPORT_SYMBOL_GPL(ir_codes_dm1105_nec);
Devin Heitmuellera4c47302009-06-20 21:34:42 -03002703
Devin Heitmueller8cd9aae2009-08-03 23:56:51 -03002704
2705/* Terratec Cinergy Hybrid T USB XS
2706 Devin Heitmueller <dheitmueller@linuxtv.org>
2707 */
2708IR_KEYTAB_TYPE ir_codes_terratec_cinergy_xs[IR_KEYTAB_SIZE] = {
2709 [0x41] = KEY_HOME,
2710 [0x01] = KEY_POWER,
2711 [0x42] = KEY_MENU,
2712 [0x02] = KEY_1,
2713 [0x03] = KEY_2,
2714 [0x04] = KEY_3,
2715 [0x43] = KEY_SUBTITLE,
2716 [0x05] = KEY_4,
2717 [0x06] = KEY_5,
2718 [0x07] = KEY_6,
2719 [0x44] = KEY_TEXT,
2720 [0x08] = KEY_7,
2721 [0x09] = KEY_8,
2722 [0x0a] = KEY_9,
2723 [0x45] = KEY_DELETE,
2724 [0x0b] = KEY_TUNER,
2725 [0x0c] = KEY_0,
2726 [0x0d] = KEY_MODE,
2727 [0x46] = KEY_TV,
2728 [0x47] = KEY_DVD,
2729 [0x49] = KEY_VIDEO,
2730 [0x4b] = KEY_AUX,
2731 [0x10] = KEY_UP,
2732 [0x11] = KEY_LEFT,
2733 [0x12] = KEY_OK,
2734 [0x13] = KEY_RIGHT,
2735 [0x14] = KEY_DOWN,
2736 [0x0f] = KEY_EPG,
2737 [0x16] = KEY_INFO,
2738 [0x4d] = KEY_BACKSPACE,
2739 [0x1c] = KEY_VOLUMEUP,
2740 [0x4c] = KEY_PLAY,
2741 [0x1b] = KEY_CHANNELUP,
2742 [0x1e] = KEY_VOLUMEDOWN,
2743 [0x1d] = KEY_MUTE,
2744 [0x1f] = KEY_CHANNELDOWN,
2745 [0x17] = KEY_RED,
2746 [0x18] = KEY_GREEN,
2747 [0x19] = KEY_YELLOW,
2748 [0x1a] = KEY_BLUE,
2749 [0x58] = KEY_RECORD,
2750 [0x48] = KEY_STOP,
2751 [0x40] = KEY_PAUSE,
2752 [0x54] = KEY_LAST,
2753 [0x4e] = KEY_REWIND,
2754 [0x4f] = KEY_FASTFORWARD,
2755 [0x5c] = KEY_NEXT,
2756};
2757EXPORT_SYMBOL_GPL(ir_codes_terratec_cinergy_xs);
2758
Devin Heitmuellera4c47302009-06-20 21:34:42 -03002759/* EVGA inDtube
2760 Devin Heitmueller <devin.heitmueller@gmail.com>
2761 */
2762IR_KEYTAB_TYPE ir_codes_evga_indtube[IR_KEYTAB_SIZE] = {
2763 [0x12] = KEY_POWER,
2764 [0x02] = KEY_MODE, /* TV */
2765 [0x14] = KEY_MUTE,
2766 [0x1a] = KEY_CHANNELUP,
2767 [0x16] = KEY_TV2, /* PIP */
2768 [0x1d] = KEY_VOLUMEUP,
2769 [0x05] = KEY_CHANNELDOWN,
2770 [0x0f] = KEY_PLAYPAUSE,
2771 [0x19] = KEY_VOLUMEDOWN,
2772 [0x1c] = KEY_REWIND,
2773 [0x0d] = KEY_RECORD,
2774 [0x18] = KEY_FORWARD,
2775 [0x1e] = KEY_PREVIOUS,
2776 [0x1b] = KEY_STOP,
2777 [0x1f] = KEY_NEXT,
2778 [0x13] = KEY_CAMERA,
2779};
2780EXPORT_SYMBOL_GPL(ir_codes_evga_indtube);
Igor M. Liplianinecfcfec2009-08-13 21:42:21 -03002781
2782IR_KEYTAB_TYPE ir_codes_videomate_s350[IR_KEYTAB_SIZE] = {
2783 [0x00] = KEY_TV,
2784 [0x01] = KEY_DVD,
2785 [0x04] = KEY_RECORD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002786 [0x05] = KEY_VIDEO, /* TV/Video */
Igor M. Liplianinecfcfec2009-08-13 21:42:21 -03002787 [0x07] = KEY_STOP,
2788 [0x08] = KEY_PLAYPAUSE,
2789 [0x0a] = KEY_REWIND,
2790 [0x0f] = KEY_FASTFORWARD,
2791 [0x10] = KEY_CHANNELUP,
2792 [0x12] = KEY_VOLUMEUP,
2793 [0x13] = KEY_CHANNELDOWN,
2794 [0x14] = KEY_MUTE,
2795 [0x15] = KEY_VOLUMEDOWN,
2796 [0x16] = KEY_1,
2797 [0x17] = KEY_2,
2798 [0x18] = KEY_3,
2799 [0x19] = KEY_4,
2800 [0x1a] = KEY_5,
2801 [0x1b] = KEY_6,
2802 [0x1c] = KEY_7,
2803 [0x1d] = KEY_8,
2804 [0x1e] = KEY_9,
2805 [0x1f] = KEY_0,
2806 [0x21] = KEY_SLEEP,
2807 [0x24] = KEY_ZOOM,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002808 [0x25] = KEY_LAST, /* Recall */
2809 [0x26] = KEY_SUBTITLE, /* CC */
2810 [0x27] = KEY_LANGUAGE, /* MTS */
2811 [0x29] = KEY_CHANNEL, /* SURF */
Igor M. Liplianinecfcfec2009-08-13 21:42:21 -03002812 [0x2b] = KEY_A,
2813 [0x2c] = KEY_B,
Mauro Carvalho Chehab092315a2009-08-29 09:48:21 -03002814 [0x2f] = KEY_CAMERA, /* Snapshot */
Igor M. Liplianinecfcfec2009-08-13 21:42:21 -03002815 [0x23] = KEY_RADIO,
2816 [0x02] = KEY_PREVIOUSSONG,
2817 [0x06] = KEY_NEXTSONG,
2818 [0x03] = KEY_EPG,
2819 [0x09] = KEY_SETUP,
2820 [0x22] = KEY_BACKSPACE,
2821 [0x0c] = KEY_UP,
2822 [0x0e] = KEY_DOWN,
2823 [0x0b] = KEY_LEFT,
2824 [0x0d] = KEY_RIGHT,
2825 [0x11] = KEY_ENTER,
2826 [0x20] = KEY_TEXT,
2827};
2828EXPORT_SYMBOL_GPL(ir_codes_videomate_s350);
Mauro Carvalho Chehab6d888a62009-08-30 13:05:56 -03002829
2830
2831/* GADMEI UTV330+ RM008Z remote
2832 Shine Liu <shinel@foxmail.com>
2833 */
2834IR_KEYTAB_TYPE ir_codes_gadmei_rm008z[IR_KEYTAB_SIZE] = {
2835 [0x14] = KEY_POWER2, /* POWER OFF */
2836 [0x0c] = KEY_MUTE, /* MUTE */
2837
2838 [0x18] = KEY_TV, /* TV */
2839 [0x0e] = KEY_VIDEO, /* AV */
2840 [0x0b] = KEY_AUDIO, /* SV */
2841 [0x0f] = KEY_RADIO, /* FM */
2842
2843 [0x00] = KEY_1,
2844 [0x01] = KEY_2,
2845 [0x02] = KEY_3,
2846 [0x03] = KEY_4,
2847 [0x04] = KEY_5,
2848 [0x05] = KEY_6,
2849 [0x06] = KEY_7,
2850 [0x07] = KEY_8,
2851 [0x08] = KEY_9,
2852 [0x09] = KEY_0,
2853 [0x0a] = KEY_INFO, /* OSD */
2854 [0x1c] = KEY_BACKSPACE, /* LAST */
2855
2856 [0x0d] = KEY_PLAY, /* PLAY */
2857 [0x1e] = KEY_CAMERA, /* SNAPSHOT */
2858 [0x1a] = KEY_RECORD, /* RECORD */
2859 [0x17] = KEY_STOP, /* STOP */
2860
2861 [0x1f] = KEY_UP, /* UP */
2862 [0x44] = KEY_DOWN, /* DOWN */
2863 [0x46] = KEY_TAB, /* BACK */
2864 [0x4a] = KEY_ZOOM, /* FULLSECREEN */
2865
2866 [0x10] = KEY_VOLUMEUP, /* VOLUMEUP */
2867 [0x11] = KEY_VOLUMEDOWN, /* VOLUMEDOWN */
2868 [0x12] = KEY_CHANNELUP, /* CHANNELUP */
2869 [0x13] = KEY_CHANNELDOWN, /* CHANNELDOWN */
2870 [0x15] = KEY_ENTER, /* OK */
2871};
2872EXPORT_SYMBOL_GPL(ir_codes_gadmei_rm008z);