blob: 08024d214983376b15737cb3a5a7ed6bc015406f [file] [log] [blame]
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001/*
2
3
4 Keytables for supported remote controls. This file is part of
5 video4linux.
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20
21 */
22#include <linux/module.h>
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020023
24#include <linux/input.h>
25#include <media/ir-common.h>
26
27/* empty keytable, can be used as placeholder for not-yet created keytables */
28IR_KEYTAB_TYPE ir_codes_empty[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030029 [0x2a] = KEY_COFFEE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020030};
31
32EXPORT_SYMBOL_GPL(ir_codes_empty);
33
Michal Majchrowiczb04c1ba2006-09-13 16:42:42 -030034/* Michal Majchrowicz <mmajchrowicz@gmail.com> */
35IR_KEYTAB_TYPE ir_codes_proteus_2309[IR_KEYTAB_SIZE] = {
36 /* numeric */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030037 [0x00] = KEY_0,
38 [0x01] = KEY_1,
39 [0x02] = KEY_2,
40 [0x03] = KEY_3,
41 [0x04] = KEY_4,
42 [0x05] = KEY_5,
43 [0x06] = KEY_6,
44 [0x07] = KEY_7,
45 [0x08] = KEY_8,
46 [0x09] = KEY_9,
Michal Majchrowiczb04c1ba2006-09-13 16:42:42 -030047
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -030048 [0x5c] = KEY_POWER, /* power */
49 [0x20] = KEY_F, /* full screen */
50 [0x0f] = KEY_BACKSPACE, /* recall */
51 [0x1b] = KEY_ENTER, /* mute */
52 [0x41] = KEY_RECORD, /* record */
53 [0x43] = KEY_STOP, /* stop */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030054 [0x16] = KEY_S,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -030055 [0x1a] = KEY_Q, /* off */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030056 [0x2e] = KEY_RED,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -030057 [0x1f] = KEY_DOWN, /* channel - */
58 [0x1c] = KEY_UP, /* channel + */
59 [0x10] = KEY_LEFT, /* volume - */
60 [0x1e] = KEY_RIGHT, /* volume + */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -030061 [0x14] = KEY_F1,
Michal Majchrowiczb04c1ba2006-09-13 16:42:42 -030062};
63
64EXPORT_SYMBOL_GPL(ir_codes_proteus_2309);
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020065/* Matt Jesson <dvb@jesson.eclipse.co.uk */
66IR_KEYTAB_TYPE ir_codes_avermedia_dvbt[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -030067 [0x28] = KEY_0, /* '0' / 'enter' */
68 [0x22] = KEY_1, /* '1' */
69 [0x12] = KEY_2, /* '2' / 'up arrow' */
70 [0x32] = KEY_3, /* '3' */
71 [0x24] = KEY_4, /* '4' / 'left arrow' */
72 [0x14] = KEY_5, /* '5' */
73 [0x34] = KEY_6, /* '6' / 'right arrow' */
74 [0x26] = KEY_7, /* '7' */
75 [0x16] = KEY_8, /* '8' / 'down arrow' */
76 [0x36] = KEY_9, /* '9' */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -020077
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -030078 [0x20] = KEY_LIST, /* 'source' */
79 [0x10] = KEY_TEXT, /* 'teletext' */
80 [0x00] = KEY_POWER, /* 'power' */
81 [0x04] = KEY_AUDIO, /* 'audio' */
82 [0x06] = KEY_ZOOM, /* 'full screen' */
83 [0x18] = KEY_VIDEO, /* 'display' */
84 [0x38] = KEY_SEARCH, /* 'loop' */
85 [0x08] = KEY_INFO, /* 'preview' */
86 [0x2a] = KEY_REWIND, /* 'backward <<' */
87 [0x1a] = KEY_FASTFORWARD, /* 'forward >>' */
88 [0x3a] = KEY_RECORD, /* 'capture' */
89 [0x0a] = KEY_MUTE, /* 'mute' */
90 [0x2c] = KEY_RECORD, /* 'record' */
91 [0x1c] = KEY_PAUSE, /* 'pause' */
92 [0x3c] = KEY_STOP, /* 'stop' */
93 [0x0c] = KEY_PLAY, /* 'play' */
94 [0x2e] = KEY_RED, /* 'red' */
95 [0x01] = KEY_BLUE, /* 'blue' / 'cancel' */
96 [0x0e] = KEY_YELLOW, /* 'yellow' / 'ok' */
97 [0x21] = KEY_GREEN, /* 'green' */
98 [0x11] = KEY_CHANNELDOWN, /* 'channel -' */
99 [0x31] = KEY_CHANNELUP, /* 'channel +' */
100 [0x1e] = KEY_VOLUMEDOWN, /* 'volume -' */
101 [0x3e] = KEY_VOLUMEUP, /* 'volume +' */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200102};
103
104EXPORT_SYMBOL_GPL(ir_codes_avermedia_dvbt);
105
Mauro Carvalho Chehab36f6bb92008-06-26 17:03:00 -0300106/* Mauro Carvalho Chehab <mchehab@infradead.org> */
107IR_KEYTAB_TYPE ir_codes_avermedia_m135a[IR_KEYTAB_SIZE] = {
108 [0x00] = KEY_POWER2,
109 [0x2e] = KEY_DOT, /* '.' */
110 [0x01] = KEY_MODE, /* TV/FM */
111
112 [0x05] = KEY_1,
113 [0x06] = KEY_2,
114 [0x07] = KEY_3,
115 [0x09] = KEY_4,
116 [0x0a] = KEY_5,
117 [0x0b] = KEY_6,
118 [0x0d] = KEY_7,
119 [0x0e] = KEY_8,
120 [0x0f] = KEY_9,
121 [0x11] = KEY_0,
122
123 [0x13] = KEY_RIGHT, /* -> */
124 [0x12] = KEY_LEFT, /* <- */
125
126 [0x17] = KEY_SLEEP, /* Capturar Imagem */
127 [0x10] = KEY_SHUFFLE, /* Amostra */
128
129 /* FIXME: The keys bellow aren't ok */
130
131 [0x43] = KEY_CHANNELUP,
132 [0x42] = KEY_CHANNELDOWN,
133 [0x1f] = KEY_VOLUMEUP,
134 [0x1e] = KEY_VOLUMEDOWN,
135 [0x0c] = KEY_ENTER,
136
137 [0x14] = KEY_MUTE,
138 [0x08] = KEY_AUDIO,
139
140 [0x03] = KEY_TEXT,
141 [0x04] = KEY_EPG,
142 [0x2b] = KEY_TV2, /* TV2 */
143
144 [0x1d] = KEY_RED,
145 [0x1c] = KEY_YELLOW,
146 [0x41] = KEY_GREEN,
147 [0x40] = KEY_BLUE,
148
149 [0x1a] = KEY_PLAYPAUSE,
150 [0x19] = KEY_RECORD,
151 [0x18] = KEY_PLAY,
152 [0x1b] = KEY_STOP,
153};
154EXPORT_SYMBOL_GPL(ir_codes_avermedia_m135a);
155
Oldřich Jedličkacb3bf502009-02-12 03:43:11 -0300156/* Oldrich Jedlicka <oldium.pro@seznam.cz> */
157IR_KEYTAB_TYPE ir_codes_avermedia_cardbus[IR_KEYTAB_SIZE] = {
158 [0x00] = KEY_POWER,
159 [0x01] = KEY_TUNER, /* TV/FM */
160 [0x03] = KEY_TEXT, /* Teletext */
161 [0x04] = KEY_EPG,
162 [0x05] = KEY_1,
163 [0x06] = KEY_2,
164 [0x07] = KEY_3,
165 [0x08] = KEY_AUDIO,
166 [0x09] = KEY_4,
167 [0x0a] = KEY_5,
168 [0x0b] = KEY_6,
169 [0x0c] = KEY_ZOOM, /* Full screen */
170 [0x0d] = KEY_7,
171 [0x0e] = KEY_8,
172 [0x0f] = KEY_9,
173 [0x10] = KEY_PAGEUP, /* 16-CH PREV */
174 [0x11] = KEY_0,
175 [0x12] = KEY_INFO,
176 [0x13] = KEY_AGAIN, /* CH RTN - channel return */
177 [0x14] = KEY_MUTE,
178 [0x15] = KEY_EDIT, /* Autoscan */
179 [0x17] = KEY_SAVE, /* Screenshot */
180 [0x18] = KEY_PLAYPAUSE,
181 [0x19] = KEY_RECORD,
182 [0x1a] = KEY_PLAY,
183 [0x1b] = KEY_STOP,
184 [0x1c] = KEY_FASTFORWARD,
185 [0x1d] = KEY_REWIND,
186 [0x1e] = KEY_VOLUMEDOWN,
187 [0x1f] = KEY_VOLUMEUP,
188 [0x22] = KEY_SLEEP, /* Sleep */
189 [0x23] = KEY_ZOOM, /* Aspect */
190 [0x26] = KEY_SCREEN, /* Pos */
191 [0x27] = KEY_ANGLE, /* Size */
192 [0x28] = KEY_SELECT, /* Select */
193 [0x29] = KEY_BLUE, /* Blue/Picture */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300194 [0x2a] = KEY_BACKSPACE, /* Back */
Oldřich Jedličkacb3bf502009-02-12 03:43:11 -0300195 [0x2b] = KEY_MEDIA, /* PIP (Picture-in-picture) */
196 [0x2c] = KEY_DOWN,
197 [0x2e] = KEY_DOT,
198 [0x2f] = KEY_TV, /* Live TV */
199 [0x32] = KEY_LEFT,
200 [0x33] = KEY_CLEAR, /* Clear */
201 [0x35] = KEY_RED, /* Red/TV */
202 [0x36] = KEY_UP,
203 [0x37] = KEY_HOME, /* Home */
204 [0x39] = KEY_GREEN, /* Green/Video */
205 [0x3d] = KEY_YELLOW, /* Yellow/Music */
206 [0x3e] = KEY_OK, /* Ok */
207 [0x3f] = KEY_RIGHT,
208 [0x40] = KEY_NEXT, /* Next */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300209 [0x41] = KEY_PREVIOUS, /* Previous */
Oldřich Jedličkacb3bf502009-02-12 03:43:11 -0300210 [0x42] = KEY_CHANNELDOWN, /* Channel down */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300211 [0x43] = KEY_CHANNELUP, /* Channel up */
Oldřich Jedličkacb3bf502009-02-12 03:43:11 -0300212};
213EXPORT_SYMBOL_GPL(ir_codes_avermedia_cardbus);
214
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200215/* Attila Kondoros <attila.kondoros@chello.hu> */
216IR_KEYTAB_TYPE ir_codes_apac_viewcomp[IR_KEYTAB_SIZE] = {
217
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300218 [0x01] = KEY_1,
219 [0x02] = KEY_2,
220 [0x03] = KEY_3,
221 [0x04] = KEY_4,
222 [0x05] = KEY_5,
223 [0x06] = KEY_6,
224 [0x07] = KEY_7,
225 [0x08] = KEY_8,
226 [0x09] = KEY_9,
227 [0x00] = KEY_0,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300228 [0x17] = KEY_LAST, /* +100 */
229 [0x0a] = KEY_LIST, /* recall */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200230
231
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300232 [0x1c] = KEY_TUNER, /* TV/FM */
233 [0x15] = KEY_SEARCH, /* scan */
234 [0x12] = KEY_POWER, /* power */
235 [0x1f] = KEY_VOLUMEDOWN, /* vol up */
236 [0x1b] = KEY_VOLUMEUP, /* vol down */
237 [0x1e] = KEY_CHANNELDOWN, /* chn up */
238 [0x1a] = KEY_CHANNELUP, /* chn down */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200239
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300240 [0x11] = KEY_VIDEO, /* video */
241 [0x0f] = KEY_ZOOM, /* full screen */
242 [0x13] = KEY_MUTE, /* mute/unmute */
243 [0x10] = KEY_TEXT, /* min */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200244
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300245 [0x0d] = KEY_STOP, /* freeze */
246 [0x0e] = KEY_RECORD, /* record */
247 [0x1d] = KEY_PLAYPAUSE, /* stop */
248 [0x19] = KEY_PLAY, /* play */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200249
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300250 [0x16] = KEY_GOTO, /* osd */
251 [0x14] = KEY_REFRESH, /* default */
252 [0x0c] = KEY_KPPLUS, /* fine tune >>>> */
253 [0x18] = KEY_KPMINUS, /* fine tune <<<< */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200254};
255
256EXPORT_SYMBOL_GPL(ir_codes_apac_viewcomp);
257
258/* ---------------------------------------------------------------------- */
259
Nickolay V. Shmyrevb639f9d2006-01-23 09:44:10 -0200260IR_KEYTAB_TYPE ir_codes_pixelview[IR_KEYTAB_SIZE] = {
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200261
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300262 [0x1e] = KEY_POWER, /* power */
263 [0x07] = KEY_MEDIA, /* source */
264 [0x1c] = KEY_SEARCH, /* scan */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200265
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200266
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300267 [0x03] = KEY_TUNER, /* TV/FM */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200268
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300269 [0x00] = KEY_RECORD,
270 [0x08] = KEY_STOP,
271 [0x11] = KEY_PLAY,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200272
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300273 [0x1a] = KEY_PLAYPAUSE, /* freeze */
274 [0x19] = KEY_ZOOM, /* zoom */
275 [0x0f] = KEY_TEXT, /* min */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200276
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300277 [0x01] = KEY_1,
278 [0x0b] = KEY_2,
279 [0x1b] = KEY_3,
280 [0x05] = KEY_4,
281 [0x09] = KEY_5,
282 [0x15] = KEY_6,
283 [0x06] = KEY_7,
284 [0x0a] = KEY_8,
285 [0x12] = KEY_9,
286 [0x02] = KEY_0,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300287 [0x10] = KEY_LAST, /* +100 */
288 [0x13] = KEY_LIST, /* recall */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200289
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300290 [0x1f] = KEY_CHANNELUP, /* chn down */
291 [0x17] = KEY_CHANNELDOWN, /* chn up */
292 [0x16] = KEY_VOLUMEUP, /* vol down */
293 [0x14] = KEY_VOLUMEDOWN, /* vol up */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200294
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300295 [0x04] = KEY_KPMINUS, /* <<< */
296 [0x0e] = KEY_SETUP, /* function */
297 [0x0c] = KEY_KPPLUS, /* >>> */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200298
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300299 [0x0d] = KEY_GOTO, /* mts */
300 [0x1d] = KEY_REFRESH, /* reset */
301 [0x18] = KEY_MUTE, /* mute/unmute */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200302};
303
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] = {
311 [0x3c] = KEY_PAUSE, /* Timeshift */
312 [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
336 [0x19] = KEY_SHUFFLE, /* SNAPSHOT */
337 [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};
408
409EXPORT_SYMBOL_GPL(ir_codes_nebula);
410
411/* DigitalNow DNTV Live DVB-T Remote */
412IR_KEYTAB_TYPE ir_codes_dntv_live_dvb_t[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300413 [0x00] = KEY_ESC, /* 'go up a level?' */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200414 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300415 [0x0a] = KEY_0,
416 [0x01] = KEY_1,
417 [0x02] = KEY_2,
418 [0x03] = KEY_3,
419 [0x04] = KEY_4,
420 [0x05] = KEY_5,
421 [0x06] = KEY_6,
422 [0x07] = KEY_7,
423 [0x08] = KEY_8,
424 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200425
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300426 [0x0b] = KEY_TUNER, /* tv/fm */
427 [0x0c] = KEY_SEARCH, /* scan */
428 [0x0d] = KEY_STOP,
429 [0x0e] = KEY_PAUSE,
430 [0x0f] = KEY_LIST, /* source */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200431
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300432 [0x10] = KEY_MUTE,
433 [0x11] = KEY_REWIND, /* backward << */
434 [0x12] = KEY_POWER,
435 [0x13] = KEY_S, /* snap */
436 [0x14] = KEY_AUDIO, /* stereo */
437 [0x15] = KEY_CLEAR, /* reset */
438 [0x16] = KEY_PLAY,
439 [0x17] = KEY_ENTER,
440 [0x18] = KEY_ZOOM, /* full screen */
441 [0x19] = KEY_FASTFORWARD, /* forward >> */
442 [0x1a] = KEY_CHANNELUP,
443 [0x1b] = KEY_VOLUMEUP,
444 [0x1c] = KEY_INFO, /* preview */
445 [0x1d] = KEY_RECORD, /* record */
446 [0x1e] = KEY_CHANNELDOWN,
447 [0x1f] = KEY_VOLUMEDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200448};
449
450EXPORT_SYMBOL_GPL(ir_codes_dntv_live_dvb_t);
451
452/* ---------------------------------------------------------------------- */
453
454/* IO-DATA BCTV7E Remote */
455IR_KEYTAB_TYPE ir_codes_iodata_bctv7e[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300456 [0x40] = KEY_TV,
457 [0x20] = KEY_RADIO, /* FM */
458 [0x60] = KEY_EPG,
459 [0x00] = KEY_POWER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200460
461 /* Keys 0 to 9 */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300462 [0x44] = KEY_0, /* 10 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300463 [0x50] = KEY_1,
464 [0x30] = KEY_2,
465 [0x70] = KEY_3,
466 [0x48] = KEY_4,
467 [0x28] = KEY_5,
468 [0x68] = KEY_6,
469 [0x58] = KEY_7,
470 [0x38] = KEY_8,
471 [0x78] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200472
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300473 [0x10] = KEY_L, /* Live */
474 [0x08] = KEY_T, /* Time Shift */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200475
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300476 [0x18] = KEY_PLAYPAUSE, /* Play */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200477
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300478 [0x24] = KEY_ENTER, /* 11 */
479 [0x64] = KEY_ESC, /* 12 */
480 [0x04] = KEY_M, /* Multi */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200481
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300482 [0x54] = KEY_VIDEO,
483 [0x34] = KEY_CHANNELUP,
484 [0x74] = KEY_VOLUMEUP,
485 [0x14] = KEY_MUTE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200486
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300487 [0x4c] = KEY_S, /* SVIDEO */
488 [0x2c] = KEY_CHANNELDOWN,
489 [0x6c] = KEY_VOLUMEDOWN,
490 [0x0c] = KEY_ZOOM,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200491
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300492 [0x5c] = KEY_PAUSE,
493 [0x3c] = KEY_C, /* || (red) */
494 [0x7c] = KEY_RECORD, /* recording */
495 [0x1c] = KEY_STOP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200496
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300497 [0x41] = KEY_REWIND, /* backward << */
498 [0x21] = KEY_PLAY,
499 [0x61] = KEY_FASTFORWARD, /* forward >> */
500 [0x01] = KEY_NEXT, /* skip >| */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200501};
502
503EXPORT_SYMBOL_GPL(ir_codes_iodata_bctv7e);
504
505/* ---------------------------------------------------------------------- */
506
507/* ADS Tech Instant TV DVB-T PCI Remote */
508IR_KEYTAB_TYPE ir_codes_adstech_dvb_t_pci[IR_KEYTAB_SIZE] = {
509 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300510 [0x4d] = KEY_0,
511 [0x57] = KEY_1,
512 [0x4f] = KEY_2,
513 [0x53] = KEY_3,
514 [0x56] = KEY_4,
515 [0x4e] = KEY_5,
516 [0x5e] = KEY_6,
517 [0x54] = KEY_7,
518 [0x4c] = KEY_8,
519 [0x5c] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200520
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300521 [0x5b] = KEY_POWER,
522 [0x5f] = KEY_MUTE,
523 [0x55] = KEY_GOTO,
524 [0x5d] = KEY_SEARCH,
525 [0x17] = KEY_EPG, /* Guide */
526 [0x1f] = KEY_MENU,
527 [0x0f] = KEY_UP,
528 [0x46] = KEY_DOWN,
529 [0x16] = KEY_LEFT,
530 [0x1e] = KEY_RIGHT,
531 [0x0e] = KEY_SELECT, /* Enter */
532 [0x5a] = KEY_INFO,
533 [0x52] = KEY_EXIT,
534 [0x59] = KEY_PREVIOUS,
535 [0x51] = KEY_NEXT,
536 [0x58] = KEY_REWIND,
537 [0x50] = KEY_FORWARD,
538 [0x44] = KEY_PLAYPAUSE,
539 [0x07] = KEY_STOP,
540 [0x1b] = KEY_RECORD,
541 [0x13] = KEY_TUNER, /* Live */
542 [0x0a] = KEY_A,
543 [0x12] = KEY_B,
544 [0x03] = KEY_PROG1, /* 1 */
545 [0x01] = KEY_PROG2, /* 2 */
546 [0x00] = KEY_PROG3, /* 3 */
547 [0x06] = KEY_DVD,
548 [0x48] = KEY_AUX, /* Photo */
549 [0x40] = KEY_VIDEO,
550 [0x19] = KEY_AUDIO, /* Music */
551 [0x0b] = KEY_CHANNELUP,
552 [0x08] = KEY_CHANNELDOWN,
553 [0x15] = KEY_VOLUMEUP,
554 [0x1c] = KEY_VOLUMEDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200555};
556
557EXPORT_SYMBOL_GPL(ir_codes_adstech_dvb_t_pci);
558
559/* ---------------------------------------------------------------------- */
560
Brian Rogersba340b42008-10-13 08:37:06 -0300561/* MSI TV@nywhere MASTER remote */
562
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200563IR_KEYTAB_TYPE ir_codes_msi_tvanywhere[IR_KEYTAB_SIZE] = {
564 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300565 [0x00] = KEY_0,
566 [0x01] = KEY_1,
567 [0x02] = KEY_2,
568 [0x03] = KEY_3,
569 [0x04] = KEY_4,
570 [0x05] = KEY_5,
571 [0x06] = KEY_6,
572 [0x07] = KEY_7,
573 [0x08] = KEY_8,
574 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200575
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300576 [0x0c] = KEY_MUTE,
577 [0x0f] = KEY_SCREEN, /* Full Screen */
578 [0x10] = KEY_F, /* Funtion */
579 [0x11] = KEY_T, /* Time shift */
580 [0x12] = KEY_POWER,
581 [0x13] = KEY_MEDIA, /* MTS */
582 [0x14] = KEY_SLOW,
583 [0x16] = KEY_REWIND, /* backward << */
584 [0x17] = KEY_ENTER, /* Return */
585 [0x18] = KEY_FASTFORWARD, /* forward >> */
586 [0x1a] = KEY_CHANNELUP,
587 [0x1b] = KEY_VOLUMEUP,
588 [0x1e] = KEY_CHANNELDOWN,
589 [0x1f] = KEY_VOLUMEDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200590};
591
592EXPORT_SYMBOL_GPL(ir_codes_msi_tvanywhere);
593
594/* ---------------------------------------------------------------------- */
595
Brian Rogersba340b42008-10-13 08:37:06 -0300596/*
597 Keycodes for remote on the MSI TV@nywhere Plus. The controller IC on the card
598 is marked "KS003". The controller is I2C at address 0x30, but does not seem
599 to respond to probes until a read is performed from a valid device.
600 I don't know why...
601
602 Note: This remote may be of similar or identical design to the
603 Pixelview remote (?). The raw codes and duplicate button codes
604 appear to be the same.
605
606 Henry Wong <henry@stuffedcow.net>
607 Some changes to formatting and keycodes by Mark Schultz <n9xmj@yahoo.com>
608
609*/
610
611IR_KEYTAB_TYPE ir_codes_msi_tvanywhere_plus[IR_KEYTAB_SIZE] = {
612
613/* ---- Remote Button Layout ----
614
615 POWER SOURCE SCAN MUTE
616 TV/FM 1 2 3
617 |> 4 5 6
618 <| 7 8 9
619 ^^UP 0 + RECALL
620 vvDN RECORD STOP PLAY
621
622 MINIMIZE ZOOM
623
624 CH+
625 VOL- VOL+
626 CH-
627
628 SNAPSHOT MTS
629
630 << FUNC >> RESET
631*/
632
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300633 [0x01] = KEY_KP1, /* 1 */
634 [0x0b] = KEY_KP2, /* 2 */
635 [0x1b] = KEY_KP3, /* 3 */
636 [0x05] = KEY_KP4, /* 4 */
637 [0x09] = KEY_KP5, /* 5 */
638 [0x15] = KEY_KP6, /* 6 */
639 [0x06] = KEY_KP7, /* 7 */
640 [0x0a] = KEY_KP8, /* 8 */
641 [0x12] = KEY_KP9, /* 9 */
642 [0x02] = KEY_KP0, /* 0 */
643 [0x10] = KEY_KPPLUS, /* + */
644 [0x13] = KEY_AGAIN, /* Recall */
Brian Rogersba340b42008-10-13 08:37:06 -0300645
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300646 [0x1e] = KEY_POWER, /* Power */
647 [0x07] = KEY_TUNER, /* Source */
648 [0x1c] = KEY_SEARCH, /* Scan */
649 [0x18] = KEY_MUTE, /* Mute */
Brian Rogersba340b42008-10-13 08:37:06 -0300650
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300651 [0x03] = KEY_RADIO, /* TV/FM */
Brian Rogersba340b42008-10-13 08:37:06 -0300652 /* The next four keys are duplicates that appear to send the
653 same IR code as Ch+, Ch-, >>, and << . The raw code assigned
654 to them is the actual code + 0x20 - they will never be
655 detected as such unless some way is discovered to distinguish
656 these buttons from those that have the same code. */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300657 [0x3f] = KEY_RIGHT, /* |> and Ch+ */
658 [0x37] = KEY_LEFT, /* <| and Ch- */
659 [0x2c] = KEY_UP, /* ^^Up and >> */
660 [0x24] = KEY_DOWN, /* vvDn and << */
Brian Rogersba340b42008-10-13 08:37:06 -0300661
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300662 [0x00] = KEY_RECORD, /* Record */
663 [0x08] = KEY_STOP, /* Stop */
664 [0x11] = KEY_PLAY, /* Play */
Brian Rogersba340b42008-10-13 08:37:06 -0300665
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300666 [0x0f] = KEY_CLOSE, /* Minimize */
667 [0x19] = KEY_ZOOM, /* Zoom */
668 [0x1a] = KEY_SHUFFLE, /* Snapshot */
669 [0x0d] = KEY_LANGUAGE, /* MTS */
Brian Rogersba340b42008-10-13 08:37:06 -0300670
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300671 [0x14] = KEY_VOLUMEDOWN,/* Vol- */
672 [0x16] = KEY_VOLUMEUP, /* Vol+ */
673 [0x17] = KEY_CHANNELDOWN,/* Ch- */
674 [0x1f] = KEY_CHANNELUP, /* Ch+ */
Brian Rogersba340b42008-10-13 08:37:06 -0300675
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300676 [0x04] = KEY_REWIND, /* << */
677 [0x0e] = KEY_MENU, /* Function */
678 [0x0c] = KEY_FASTFORWARD,/* >> */
679 [0x1d] = KEY_RESTART, /* Reset */
Brian Rogersba340b42008-10-13 08:37:06 -0300680};
681EXPORT_SYMBOL_GPL(ir_codes_msi_tvanywhere_plus);
682
683/* ---------------------------------------------------------------------- */
684
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200685/* Cinergy 1400 DVB-T */
686IR_KEYTAB_TYPE ir_codes_cinergy_1400[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300687 [0x01] = KEY_POWER,
688 [0x02] = KEY_1,
689 [0x03] = KEY_2,
690 [0x04] = KEY_3,
691 [0x05] = KEY_4,
692 [0x06] = KEY_5,
693 [0x07] = KEY_6,
694 [0x08] = KEY_7,
695 [0x09] = KEY_8,
696 [0x0a] = KEY_9,
697 [0x0c] = KEY_0,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200698
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300699 [0x0b] = KEY_VIDEO,
700 [0x0d] = KEY_REFRESH,
701 [0x0e] = KEY_SELECT,
702 [0x0f] = KEY_EPG,
703 [0x10] = KEY_UP,
704 [0x11] = KEY_LEFT,
705 [0x12] = KEY_OK,
706 [0x13] = KEY_RIGHT,
707 [0x14] = KEY_DOWN,
708 [0x15] = KEY_TEXT,
709 [0x16] = KEY_INFO,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200710
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300711 [0x17] = KEY_RED,
712 [0x18] = KEY_GREEN,
713 [0x19] = KEY_YELLOW,
714 [0x1a] = KEY_BLUE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200715
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300716 [0x1b] = KEY_CHANNELUP,
717 [0x1c] = KEY_VOLUMEUP,
718 [0x1d] = KEY_MUTE,
719 [0x1e] = KEY_VOLUMEDOWN,
720 [0x1f] = KEY_CHANNELDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200721
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300722 [0x40] = KEY_PAUSE,
723 [0x4c] = KEY_PLAY,
724 [0x58] = KEY_RECORD,
725 [0x54] = KEY_PREVIOUS,
726 [0x48] = KEY_STOP,
727 [0x5c] = KEY_NEXT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200728};
729
730EXPORT_SYMBOL_GPL(ir_codes_cinergy_1400);
731
732/* ---------------------------------------------------------------------- */
733
734/* AVERTV STUDIO 303 Remote */
735IR_KEYTAB_TYPE ir_codes_avertv_303[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300736 [0x2a] = KEY_1,
737 [0x32] = KEY_2,
738 [0x3a] = KEY_3,
739 [0x4a] = KEY_4,
740 [0x52] = KEY_5,
741 [0x5a] = KEY_6,
742 [0x6a] = KEY_7,
743 [0x72] = KEY_8,
744 [0x7a] = KEY_9,
745 [0x0e] = KEY_0,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200746
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300747 [0x02] = KEY_POWER,
748 [0x22] = KEY_VIDEO,
749 [0x42] = KEY_AUDIO,
750 [0x62] = KEY_ZOOM,
751 [0x0a] = KEY_TV,
752 [0x12] = KEY_CD,
753 [0x1a] = KEY_TEXT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200754
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300755 [0x16] = KEY_SUBTITLE,
756 [0x1e] = KEY_REWIND,
757 [0x06] = KEY_PRINT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200758
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300759 [0x2e] = KEY_SEARCH,
760 [0x36] = KEY_SLEEP,
761 [0x3e] = KEY_SHUFFLE,
762 [0x26] = KEY_MUTE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200763
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300764 [0x4e] = KEY_RECORD,
765 [0x56] = KEY_PAUSE,
766 [0x5e] = KEY_STOP,
767 [0x46] = KEY_PLAY,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200768
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300769 [0x6e] = KEY_RED,
770 [0x0b] = KEY_GREEN,
771 [0x66] = KEY_YELLOW,
772 [0x03] = KEY_BLUE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200773
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300774 [0x76] = KEY_LEFT,
775 [0x7e] = KEY_RIGHT,
776 [0x13] = KEY_DOWN,
777 [0x1b] = KEY_UP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200778};
779
780EXPORT_SYMBOL_GPL(ir_codes_avertv_303);
781
782/* ---------------------------------------------------------------------- */
783
784/* DigitalNow DNTV Live! DVB-T Pro Remote */
785IR_KEYTAB_TYPE ir_codes_dntv_live_dvbt_pro[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300786 [0x16] = KEY_POWER,
787 [0x5b] = KEY_HOME,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200788
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300789 [0x55] = KEY_TV, /* live tv */
790 [0x58] = KEY_TUNER, /* digital Radio */
791 [0x5a] = KEY_RADIO, /* FM radio */
792 [0x59] = KEY_DVD, /* dvd menu */
793 [0x03] = KEY_1,
794 [0x01] = KEY_2,
795 [0x06] = KEY_3,
796 [0x09] = KEY_4,
797 [0x1d] = KEY_5,
798 [0x1f] = KEY_6,
799 [0x0d] = KEY_7,
800 [0x19] = KEY_8,
801 [0x1b] = KEY_9,
802 [0x0c] = KEY_CANCEL,
803 [0x15] = KEY_0,
804 [0x4a] = KEY_CLEAR,
805 [0x13] = KEY_BACK,
806 [0x00] = KEY_TAB,
807 [0x4b] = KEY_UP,
808 [0x4e] = KEY_LEFT,
809 [0x4f] = KEY_OK,
810 [0x52] = KEY_RIGHT,
811 [0x51] = KEY_DOWN,
812 [0x1e] = KEY_VOLUMEUP,
813 [0x0a] = KEY_VOLUMEDOWN,
814 [0x02] = KEY_CHANNELDOWN,
815 [0x05] = KEY_CHANNELUP,
816 [0x11] = KEY_RECORD,
817 [0x14] = KEY_PLAY,
818 [0x4c] = KEY_PAUSE,
819 [0x1a] = KEY_STOP,
820 [0x40] = KEY_REWIND,
821 [0x12] = KEY_FASTFORWARD,
822 [0x41] = KEY_PREVIOUSSONG, /* replay |< */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300823 [0x42] = KEY_NEXTSONG, /* skip >| */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300824 [0x54] = KEY_CAMERA, /* capture */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300825 [0x50] = KEY_LANGUAGE, /* sap */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300826 [0x47] = KEY_TV2, /* pip */
827 [0x4d] = KEY_SCREEN,
828 [0x43] = KEY_SUBTITLE,
829 [0x10] = KEY_MUTE,
830 [0x49] = KEY_AUDIO, /* l/r */
831 [0x07] = KEY_SLEEP,
832 [0x08] = KEY_VIDEO, /* a/v */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300833 [0x0e] = KEY_PREVIOUS, /* recall */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300834 [0x45] = KEY_ZOOM, /* zoom + */
835 [0x46] = KEY_ANGLE, /* zoom - */
836 [0x56] = KEY_RED,
837 [0x57] = KEY_GREEN,
838 [0x5c] = KEY_YELLOW,
839 [0x5d] = KEY_BLUE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200840};
841
842EXPORT_SYMBOL_GPL(ir_codes_dntv_live_dvbt_pro);
843
844IR_KEYTAB_TYPE ir_codes_em_terratec[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300845 [0x01] = KEY_CHANNEL,
846 [0x02] = KEY_SELECT,
847 [0x03] = KEY_MUTE,
848 [0x04] = KEY_POWER,
849 [0x05] = KEY_1,
850 [0x06] = KEY_2,
851 [0x07] = KEY_3,
852 [0x08] = KEY_CHANNELUP,
853 [0x09] = KEY_4,
854 [0x0a] = KEY_5,
855 [0x0b] = KEY_6,
856 [0x0c] = KEY_CHANNELDOWN,
857 [0x0d] = KEY_7,
858 [0x0e] = KEY_8,
859 [0x0f] = KEY_9,
860 [0x10] = KEY_VOLUMEUP,
861 [0x11] = KEY_0,
862 [0x12] = KEY_MENU,
863 [0x13] = KEY_PRINT,
864 [0x14] = KEY_VOLUMEDOWN,
865 [0x16] = KEY_PAUSE,
866 [0x18] = KEY_RECORD,
867 [0x19] = KEY_REWIND,
868 [0x1a] = KEY_PLAY,
869 [0x1b] = KEY_FORWARD,
870 [0x1c] = KEY_BACKSPACE,
871 [0x1e] = KEY_STOP,
872 [0x40] = KEY_ZOOM,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200873};
874
875EXPORT_SYMBOL_GPL(ir_codes_em_terratec);
876
Sylvain Pascheb93eedb2006-03-25 23:14:42 -0300877IR_KEYTAB_TYPE ir_codes_pinnacle_grey[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300878 [0x3a] = KEY_0,
879 [0x31] = KEY_1,
880 [0x32] = KEY_2,
881 [0x33] = KEY_3,
882 [0x34] = KEY_4,
883 [0x35] = KEY_5,
884 [0x36] = KEY_6,
885 [0x37] = KEY_7,
886 [0x38] = KEY_8,
887 [0x39] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200888
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300889 [0x2f] = KEY_POWER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200890
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300891 [0x2e] = KEY_P,
892 [0x1f] = KEY_L,
893 [0x2b] = KEY_I,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200894
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300895 [0x2d] = KEY_SCREEN,
896 [0x1e] = KEY_ZOOM,
897 [0x1b] = KEY_VOLUMEUP,
898 [0x0f] = KEY_VOLUMEDOWN,
899 [0x17] = KEY_CHANNELUP,
900 [0x1c] = KEY_CHANNELDOWN,
901 [0x25] = KEY_INFO,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200902
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300903 [0x3c] = KEY_MUTE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200904
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300905 [0x3d] = KEY_LEFT,
906 [0x3b] = KEY_RIGHT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200907
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300908 [0x3f] = KEY_UP,
909 [0x3e] = KEY_DOWN,
910 [0x1a] = KEY_ENTER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200911
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300912 [0x1d] = KEY_MENU,
913 [0x19] = KEY_AGAIN,
914 [0x16] = KEY_PREVIOUSSONG,
915 [0x13] = KEY_NEXTSONG,
916 [0x15] = KEY_PAUSE,
917 [0x0e] = KEY_REWIND,
918 [0x0d] = KEY_PLAY,
919 [0x0b] = KEY_STOP,
920 [0x07] = KEY_FORWARD,
921 [0x27] = KEY_RECORD,
922 [0x26] = KEY_TUNER,
923 [0x29] = KEY_TEXT,
924 [0x2a] = KEY_MEDIA,
925 [0x18] = KEY_EPG,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200926};
927
Sylvain Pascheb93eedb2006-03-25 23:14:42 -0300928EXPORT_SYMBOL_GPL(ir_codes_pinnacle_grey);
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200929
930IR_KEYTAB_TYPE ir_codes_flyvideo[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300931 [0x0f] = KEY_0,
932 [0x03] = KEY_1,
933 [0x04] = KEY_2,
934 [0x05] = KEY_3,
935 [0x07] = KEY_4,
936 [0x08] = KEY_5,
937 [0x09] = KEY_6,
938 [0x0b] = KEY_7,
939 [0x0c] = KEY_8,
940 [0x0d] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200941
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300942 [0x0e] = KEY_MODE, /* Air/Cable */
943 [0x11] = KEY_VIDEO, /* Video */
944 [0x15] = KEY_AUDIO, /* Audio */
945 [0x00] = KEY_POWER, /* Power */
946 [0x18] = KEY_TUNER, /* AV Source */
947 [0x02] = KEY_ZOOM, /* Fullscreen */
948 [0x1a] = KEY_LANGUAGE, /* Stereo */
949 [0x1b] = KEY_MUTE, /* Mute */
950 [0x14] = KEY_VOLUMEUP, /* Volume + */
951 [0x17] = KEY_VOLUMEDOWN,/* Volume - */
952 [0x12] = KEY_CHANNELUP, /* Channel + */
953 [0x13] = KEY_CHANNELDOWN,/* Channel - */
954 [0x06] = KEY_AGAIN, /* Recall */
955 [0x10] = KEY_ENTER, /* Enter */
Ivan Bobyr9e05c0f2008-04-16 16:01:55 -0300956
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -0300957 [0x19] = KEY_BACK, /* Rewind ( <<< ) */
958 [0x1f] = KEY_FORWARD, /* Forward ( >>> ) */
959 [0x0a] = KEY_ANGLE, /* no label, may be used as the PAUSE button */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200960};
961
962EXPORT_SYMBOL_GPL(ir_codes_flyvideo);
963
964IR_KEYTAB_TYPE ir_codes_flydvb[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300965 [0x01] = KEY_ZOOM, /* Full Screen */
966 [0x00] = KEY_POWER, /* Power */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200967
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300968 [0x03] = KEY_1,
969 [0x04] = KEY_2,
970 [0x05] = KEY_3,
971 [0x07] = KEY_4,
972 [0x08] = KEY_5,
973 [0x09] = KEY_6,
974 [0x0b] = KEY_7,
975 [0x0c] = KEY_8,
976 [0x0d] = KEY_9,
977 [0x06] = KEY_AGAIN, /* Recall */
978 [0x0f] = KEY_0,
979 [0x10] = KEY_MUTE, /* Mute */
980 [0x02] = KEY_RADIO, /* TV/Radio */
981 [0x1b] = KEY_LANGUAGE, /* SAP (Second Audio Program) */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200982
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300983 [0x14] = KEY_VOLUMEUP, /* VOL+ */
984 [0x17] = KEY_VOLUMEDOWN, /* VOL- */
985 [0x12] = KEY_CHANNELUP, /* CH+ */
986 [0x13] = KEY_CHANNELDOWN, /* CH- */
987 [0x1d] = KEY_ENTER, /* Enter */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200988
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300989 [0x1a] = KEY_MODE, /* PIP */
990 [0x18] = KEY_TUNER, /* Source */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -0200991
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -0300992 [0x1e] = KEY_RECORD, /* Record/Pause */
993 [0x15] = KEY_ANGLE, /* Swap (no label on key) */
994 [0x1c] = KEY_PAUSE, /* Timeshift/Pause */
995 [0x19] = KEY_BACK, /* Rewind << */
996 [0x0a] = KEY_PLAYPAUSE, /* Play/Pause */
997 [0x1f] = KEY_FORWARD, /* Forward >> */
998 [0x16] = KEY_PREVIOUS, /* Back |<< */
999 [0x11] = KEY_STOP, /* Stop */
1000 [0x0e] = KEY_NEXT, /* End >>| */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001001};
1002
1003EXPORT_SYMBOL_GPL(ir_codes_flydvb);
1004
1005IR_KEYTAB_TYPE ir_codes_cinergy[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001006 [0x00] = KEY_0,
1007 [0x01] = KEY_1,
1008 [0x02] = KEY_2,
1009 [0x03] = KEY_3,
1010 [0x04] = KEY_4,
1011 [0x05] = KEY_5,
1012 [0x06] = KEY_6,
1013 [0x07] = KEY_7,
1014 [0x08] = KEY_8,
1015 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001016
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001017 [0x0a] = KEY_POWER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001018 [0x0b] = KEY_PROG1, /* app */
1019 [0x0c] = KEY_ZOOM, /* zoom/fullscreen */
1020 [0x0d] = KEY_CHANNELUP, /* channel */
1021 [0x0e] = KEY_CHANNELDOWN,/* channel- */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001022 [0x0f] = KEY_VOLUMEUP,
1023 [0x10] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001024 [0x11] = KEY_TUNER, /* AV */
1025 [0x12] = KEY_NUMLOCK, /* -/-- */
1026 [0x13] = KEY_AUDIO, /* audio */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001027 [0x14] = KEY_MUTE,
1028 [0x15] = KEY_UP,
1029 [0x16] = KEY_DOWN,
1030 [0x17] = KEY_LEFT,
1031 [0x18] = KEY_RIGHT,
1032 [0x19] = BTN_LEFT,
1033 [0x1a] = BTN_RIGHT,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001034 [0x1b] = KEY_WWW, /* text */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001035 [0x1c] = KEY_REWIND,
1036 [0x1d] = KEY_FORWARD,
1037 [0x1e] = KEY_RECORD,
1038 [0x1f] = KEY_PLAY,
1039 [0x20] = KEY_PREVIOUSSONG,
1040 [0x21] = KEY_NEXTSONG,
1041 [0x22] = KEY_PAUSE,
1042 [0x23] = KEY_STOP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001043};
1044
1045EXPORT_SYMBOL_GPL(ir_codes_cinergy);
1046
1047/* Alfons Geser <a.geser@cox.net>
1048 * updates from Job D. R. Borges <jobdrb@ig.com.br> */
1049IR_KEYTAB_TYPE ir_codes_eztv[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001050 [0x12] = KEY_POWER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001051 [0x01] = KEY_TV, /* DVR */
1052 [0x15] = KEY_DVD, /* DVD */
1053 [0x17] = KEY_AUDIO, /* music */
1054 /* DVR mode / DVD mode / music mode */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001055
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001056 [0x1b] = KEY_MUTE, /* mute */
1057 [0x02] = KEY_LANGUAGE, /* MTS/SAP / audio / autoseek */
1058 [0x1e] = KEY_SUBTITLE, /* closed captioning / subtitle / seek */
1059 [0x16] = KEY_ZOOM, /* full screen */
1060 [0x1c] = KEY_VIDEO, /* video source / eject / delall */
1061 [0x1d] = KEY_RESTART, /* playback / angle / del */
1062 [0x2f] = KEY_SEARCH, /* scan / menu / playlist */
1063 [0x30] = KEY_CHANNEL, /* CH surfing / bookmark / memo */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001064
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001065 [0x31] = KEY_HELP, /* help */
1066 [0x32] = KEY_MODE, /* num/memo */
1067 [0x33] = KEY_ESC, /* cancel */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001068
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001069 [0x0c] = KEY_UP, /* up */
1070 [0x10] = KEY_DOWN, /* down */
1071 [0x08] = KEY_LEFT, /* left */
1072 [0x04] = KEY_RIGHT, /* right */
1073 [0x03] = KEY_SELECT, /* select */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001074
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001075 [0x1f] = KEY_REWIND, /* rewind */
1076 [0x20] = KEY_PLAYPAUSE, /* play/pause */
1077 [0x29] = KEY_FORWARD, /* forward */
1078 [0x14] = KEY_AGAIN, /* repeat */
1079 [0x2b] = KEY_RECORD, /* recording */
1080 [0x2c] = KEY_STOP, /* stop */
1081 [0x2d] = KEY_PLAY, /* play */
1082 [0x2e] = KEY_SHUFFLE, /* snapshot / shuffle */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001083
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001084 [0x00] = KEY_0,
1085 [0x05] = KEY_1,
1086 [0x06] = KEY_2,
1087 [0x07] = KEY_3,
1088 [0x09] = KEY_4,
1089 [0x0a] = KEY_5,
1090 [0x0b] = KEY_6,
1091 [0x0d] = KEY_7,
1092 [0x0e] = KEY_8,
1093 [0x0f] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001094
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001095 [0x2a] = KEY_VOLUMEUP,
1096 [0x11] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001097 [0x18] = KEY_CHANNELUP, /* CH.tracking up */
1098 [0x19] = KEY_CHANNELDOWN,/* CH.tracking down */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001099
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001100 [0x13] = KEY_ENTER, /* enter */
1101 [0x21] = KEY_DOT, /* . (decimal dot) */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001102};
1103
1104EXPORT_SYMBOL_GPL(ir_codes_eztv);
1105
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001106/* Alex Hermann <gaaf@gmx.net> */
Nickolay V. Shmyrevb639f9d2006-01-23 09:44:10 -02001107IR_KEYTAB_TYPE ir_codes_avermedia[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001108 [0x28] = KEY_1,
1109 [0x18] = KEY_2,
1110 [0x38] = KEY_3,
1111 [0x24] = KEY_4,
1112 [0x14] = KEY_5,
1113 [0x34] = KEY_6,
1114 [0x2c] = KEY_7,
1115 [0x1c] = KEY_8,
1116 [0x3c] = KEY_9,
1117 [0x22] = KEY_0,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001118
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001119 [0x20] = KEY_TV, /* TV/FM */
1120 [0x10] = KEY_CD, /* CD */
1121 [0x30] = KEY_TEXT, /* TELETEXT */
1122 [0x00] = KEY_POWER, /* POWER */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001123
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001124 [0x08] = KEY_VIDEO, /* VIDEO */
1125 [0x04] = KEY_AUDIO, /* AUDIO */
1126 [0x0c] = KEY_ZOOM, /* FULL SCREEN */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001127
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001128 [0x12] = KEY_SUBTITLE, /* DISPLAY */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001129 [0x32] = KEY_REWIND, /* LOOP */
1130 [0x02] = KEY_PRINT, /* PREVIEW */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001131
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001132 [0x2a] = KEY_SEARCH, /* AUTOSCAN */
1133 [0x1a] = KEY_SLEEP, /* FREEZE */
1134 [0x3a] = KEY_SHUFFLE, /* SNAPSHOT */
1135 [0x0a] = KEY_MUTE, /* MUTE */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001136
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001137 [0x26] = KEY_RECORD, /* RECORD */
1138 [0x16] = KEY_PAUSE, /* PAUSE */
1139 [0x36] = KEY_STOP, /* STOP */
1140 [0x06] = KEY_PLAY, /* PLAY */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001141
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001142 [0x2e] = KEY_RED, /* RED */
1143 [0x21] = KEY_GREEN, /* GREEN */
1144 [0x0e] = KEY_YELLOW, /* YELLOW */
1145 [0x01] = KEY_BLUE, /* BLUE */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001146
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001147 [0x1e] = KEY_VOLUMEDOWN, /* VOLUME- */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001148 [0x3e] = KEY_VOLUMEUP, /* VOLUME+ */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001149 [0x11] = KEY_CHANNELDOWN, /* CHANNEL/PAGE- */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001150 [0x31] = KEY_CHANNELUP /* CHANNEL/PAGE+ */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001151};
1152
Nickolay V. Shmyrevb639f9d2006-01-23 09:44:10 -02001153EXPORT_SYMBOL_GPL(ir_codes_avermedia);
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001154
1155IR_KEYTAB_TYPE ir_codes_videomate_tv_pvr[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001156 [0x14] = KEY_MUTE,
1157 [0x24] = KEY_ZOOM,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001158
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001159 [0x01] = KEY_DVD,
1160 [0x23] = KEY_RADIO,
1161 [0x00] = KEY_TV,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001162
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001163 [0x0a] = KEY_REWIND,
1164 [0x08] = KEY_PLAYPAUSE,
1165 [0x0f] = KEY_FORWARD,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001166
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001167 [0x02] = KEY_PREVIOUS,
1168 [0x07] = KEY_STOP,
1169 [0x06] = KEY_NEXT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001170
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001171 [0x0c] = KEY_UP,
1172 [0x0e] = KEY_DOWN,
1173 [0x0b] = KEY_LEFT,
1174 [0x0d] = KEY_RIGHT,
1175 [0x11] = KEY_OK,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001176
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001177 [0x03] = KEY_MENU,
1178 [0x09] = KEY_SETUP,
1179 [0x05] = KEY_VIDEO,
1180 [0x22] = KEY_CHANNEL,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001181
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001182 [0x12] = KEY_VOLUMEUP,
1183 [0x15] = KEY_VOLUMEDOWN,
1184 [0x10] = KEY_CHANNELUP,
1185 [0x13] = KEY_CHANNELDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001186
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001187 [0x04] = KEY_RECORD,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001188
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001189 [0x16] = KEY_1,
1190 [0x17] = KEY_2,
1191 [0x18] = KEY_3,
1192 [0x19] = KEY_4,
1193 [0x1a] = KEY_5,
1194 [0x1b] = KEY_6,
1195 [0x1c] = KEY_7,
1196 [0x1d] = KEY_8,
1197 [0x1e] = KEY_9,
1198 [0x1f] = KEY_0,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001199
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001200 [0x20] = KEY_LANGUAGE,
1201 [0x21] = KEY_SLEEP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001202};
1203
1204EXPORT_SYMBOL_GPL(ir_codes_videomate_tv_pvr);
1205
1206/* Michael Tokarev <mjt@tls.msk.ru>
1207 http://www.corpit.ru/mjt/beholdTV/remote_control.jpg
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001208 keytable is used by MANLI MTV00[0x0c] and BeholdTV 40[13] at
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001209 least, and probably other cards too.
1210 The "ascii-art picture" below (in comments, first row
1211 is the keycode in hex, and subsequent row(s) shows
1212 the button labels (several variants when appropriate)
1213 helps to descide which keycodes to assign to the buttons.
1214 */
1215IR_KEYTAB_TYPE ir_codes_manli[IR_KEYTAB_SIZE] = {
1216
1217 /* 0x1c 0x12 *
1218 * FUNCTION POWER *
1219 * FM (|) *
1220 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001221 [0x1c] = KEY_RADIO, /*XXX*/
1222 [0x12] = KEY_POWER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001223
1224 /* 0x01 0x02 0x03 *
1225 * 1 2 3 *
1226 * *
1227 * 0x04 0x05 0x06 *
1228 * 4 5 6 *
1229 * *
1230 * 0x07 0x08 0x09 *
1231 * 7 8 9 *
1232 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001233 [0x01] = KEY_1,
1234 [0x02] = KEY_2,
1235 [0x03] = KEY_3,
1236 [0x04] = KEY_4,
1237 [0x05] = KEY_5,
1238 [0x06] = KEY_6,
1239 [0x07] = KEY_7,
1240 [0x08] = KEY_8,
1241 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001242
1243 /* 0x0a 0x00 0x17 *
1244 * RECALL 0 +100 *
1245 * PLUS *
1246 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001247 [0x0a] = KEY_AGAIN, /*XXX KEY_REWIND? */
1248 [0x00] = KEY_0,
1249 [0x17] = KEY_DIGITS, /*XXX*/
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001250
1251 /* 0x14 0x10 *
1252 * MENU INFO *
1253 * OSD */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001254 [0x14] = KEY_MENU,
1255 [0x10] = KEY_INFO,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001256
1257 /* 0x0b *
1258 * Up *
1259 * *
1260 * 0x18 0x16 0x0c *
1261 * Left Ok Right *
1262 * *
1263 * 0x015 *
1264 * Down *
1265 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001266 [0x0b] = KEY_UP, /*XXX KEY_SCROLLUP? */
1267 [0x18] = KEY_LEFT, /*XXX KEY_BACK? */
1268 [0x16] = KEY_OK, /*XXX KEY_SELECT? KEY_ENTER? */
1269 [0x0c] = KEY_RIGHT, /*XXX KEY_FORWARD? */
1270 [0x15] = KEY_DOWN, /*XXX KEY_SCROLLDOWN? */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001271
1272 /* 0x11 0x0d *
1273 * TV/AV MODE *
1274 * SOURCE STEREO *
1275 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001276 [0x11] = KEY_TV, /*XXX*/
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001277 [0x0d] = KEY_MODE, /*XXX there's no KEY_STEREO */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001278
1279 /* 0x0f 0x1b 0x1a *
1280 * AUDIO Vol+ Chan+ *
1281 * TIMESHIFT??? *
1282 * *
1283 * 0x0e 0x1f 0x1e *
1284 * SLEEP Vol- Chan- *
1285 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001286 [0x0f] = KEY_AUDIO,
1287 [0x1b] = KEY_VOLUMEUP,
1288 [0x1a] = KEY_CHANNELUP,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001289 [0x0e] = KEY_SLEEP, /*XXX maybe KEY_PAUSE */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001290 [0x1f] = KEY_VOLUMEDOWN,
1291 [0x1e] = KEY_CHANNELDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001292
1293 /* 0x13 0x19 *
1294 * MUTE SNAPSHOT*
1295 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001296 [0x13] = KEY_MUTE,
1297 [0x19] = KEY_RECORD, /*XXX*/
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001298
Mauro Carvalho Chehab97fd4f72009-08-27 09:28:48 -03001299 /* 0x1d unused ? */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001300};
1301
1302EXPORT_SYMBOL_GPL(ir_codes_manli);
1303
1304/* Mike Baikov <mike@baikov.com> */
1305IR_KEYTAB_TYPE ir_codes_gotview7135[IR_KEYTAB_SIZE] = {
1306
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001307 [0x11] = KEY_POWER,
1308 [0x35] = KEY_TV,
1309 [0x1b] = KEY_0,
1310 [0x29] = KEY_1,
1311 [0x19] = KEY_2,
1312 [0x39] = KEY_3,
1313 [0x1f] = KEY_4,
1314 [0x2c] = KEY_5,
1315 [0x21] = KEY_6,
1316 [0x24] = KEY_7,
1317 [0x18] = KEY_8,
1318 [0x2b] = KEY_9,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001319 [0x3b] = KEY_AGAIN, /* LOOP */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001320 [0x06] = KEY_AUDIO,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001321 [0x31] = KEY_PRINT, /* PREVIEW */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001322 [0x3e] = KEY_VIDEO,
1323 [0x10] = KEY_CHANNELUP,
1324 [0x20] = KEY_CHANNELDOWN,
1325 [0x0c] = KEY_VOLUMEDOWN,
1326 [0x28] = KEY_VOLUMEUP,
1327 [0x08] = KEY_MUTE,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001328 [0x26] = KEY_SEARCH, /*SCAN*/
1329 [0x3f] = KEY_SHUFFLE, /* SNAPSHOT */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001330 [0x12] = KEY_RECORD,
1331 [0x32] = KEY_STOP,
1332 [0x3c] = KEY_PLAY,
1333 [0x1d] = KEY_REWIND,
1334 [0x2d] = KEY_PAUSE,
1335 [0x0d] = KEY_FORWARD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001336 [0x05] = KEY_ZOOM, /*FULL*/
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001337
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001338 [0x2a] = KEY_F21, /* LIVE TIMESHIFT */
1339 [0x0e] = KEY_F22, /* MIN TIMESHIFT */
1340 [0x1e] = KEY_F23, /* TIMESHIFT */
1341 [0x38] = KEY_F24, /* NORMAL TIMESHIFT */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001342};
1343
1344EXPORT_SYMBOL_GPL(ir_codes_gotview7135);
1345
1346IR_KEYTAB_TYPE ir_codes_purpletv[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001347 [0x03] = KEY_POWER,
1348 [0x6f] = KEY_MUTE,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001349 [0x10] = KEY_BACKSPACE, /* Recall */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001350
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001351 [0x11] = KEY_0,
1352 [0x04] = KEY_1,
1353 [0x05] = KEY_2,
1354 [0x06] = KEY_3,
1355 [0x08] = KEY_4,
1356 [0x09] = KEY_5,
1357 [0x0a] = KEY_6,
1358 [0x0c] = KEY_7,
1359 [0x0d] = KEY_8,
1360 [0x0e] = KEY_9,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001361 [0x12] = KEY_DOT, /* 100+ */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001362
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001363 [0x07] = KEY_VOLUMEUP,
1364 [0x0b] = KEY_VOLUMEDOWN,
1365 [0x1a] = KEY_KPPLUS,
1366 [0x18] = KEY_KPMINUS,
1367 [0x15] = KEY_UP,
1368 [0x1d] = KEY_DOWN,
1369 [0x0f] = KEY_CHANNELUP,
1370 [0x13] = KEY_CHANNELDOWN,
1371 [0x48] = KEY_ZOOM,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001372
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001373 [0x1b] = KEY_VIDEO, /* Video source */
1374 [0x49] = KEY_LANGUAGE, /* MTS Select */
1375 [0x19] = KEY_SEARCH, /* Auto Scan */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001376
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001377 [0x4b] = KEY_RECORD,
1378 [0x46] = KEY_PLAY,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001379 [0x45] = KEY_PAUSE, /* Pause */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001380 [0x44] = KEY_STOP,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001381 [0x40] = KEY_FORWARD, /* Forward ? */
1382 [0x42] = KEY_REWIND, /* Backward ? */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001383
1384};
1385
1386EXPORT_SYMBOL_GPL(ir_codes_purpletv);
1387
1388/* Mapping for the 28 key remote control as seen at
1389 http://www.sednacomputer.com/photo/cardbus-tv.jpg
Mauro Lacye80faad2008-04-22 14:45:58 -03001390 Pavel Mihaylov <bin@bash.info>
1391 Also for the remote bundled with Kozumi KTV-01C card */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001392IR_KEYTAB_TYPE ir_codes_pctv_sedna[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001393 [0x00] = KEY_0,
1394 [0x01] = KEY_1,
1395 [0x02] = KEY_2,
1396 [0x03] = KEY_3,
1397 [0x04] = KEY_4,
1398 [0x05] = KEY_5,
1399 [0x06] = KEY_6,
1400 [0x07] = KEY_7,
1401 [0x08] = KEY_8,
1402 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001403
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001404 [0x0a] = KEY_AGAIN, /* Recall */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001405 [0x0b] = KEY_CHANNELUP,
1406 [0x0c] = KEY_VOLUMEUP,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001407 [0x0d] = KEY_MODE, /* Stereo */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001408 [0x0e] = KEY_STOP,
1409 [0x0f] = KEY_PREVIOUSSONG,
1410 [0x10] = KEY_ZOOM,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001411 [0x11] = KEY_TUNER, /* Source */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001412 [0x12] = KEY_POWER,
1413 [0x13] = KEY_MUTE,
1414 [0x15] = KEY_CHANNELDOWN,
1415 [0x18] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001416 [0x19] = KEY_SHUFFLE, /* Snapshot */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001417 [0x1a] = KEY_NEXTSONG,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001418 [0x1b] = KEY_TEXT, /* Time Shift */
1419 [0x1c] = KEY_RADIO, /* FM Radio */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001420 [0x1d] = KEY_RECORD,
1421 [0x1e] = KEY_PAUSE,
Mauro Lacye80faad2008-04-22 14:45:58 -03001422 /* additional codes for Kozumi's remote */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001423 [0x14] = KEY_INFO, /* OSD */
1424 [0x16] = KEY_OK, /* OK */
1425 [0x17] = KEY_DIGITS, /* Plus */
1426 [0x1f] = KEY_PLAY, /* Play */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001427};
1428
1429EXPORT_SYMBOL_GPL(ir_codes_pctv_sedna);
1430
1431/* Mark Phalan <phalanm@o2.ie> */
1432IR_KEYTAB_TYPE ir_codes_pv951[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001433 [0x00] = KEY_0,
1434 [0x01] = KEY_1,
1435 [0x02] = KEY_2,
1436 [0x03] = KEY_3,
1437 [0x04] = KEY_4,
1438 [0x05] = KEY_5,
1439 [0x06] = KEY_6,
1440 [0x07] = KEY_7,
1441 [0x08] = KEY_8,
1442 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001443
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001444 [0x12] = KEY_POWER,
1445 [0x10] = KEY_MUTE,
1446 [0x1f] = KEY_VOLUMEDOWN,
1447 [0x1b] = KEY_VOLUMEUP,
1448 [0x1a] = KEY_CHANNELUP,
1449 [0x1e] = KEY_CHANNELDOWN,
1450 [0x0e] = KEY_PAGEUP,
1451 [0x1d] = KEY_PAGEDOWN,
1452 [0x13] = KEY_SOUND,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001453
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001454 [0x18] = KEY_KPPLUSMINUS, /* CH +/- */
1455 [0x16] = KEY_SUBTITLE, /* CC */
1456 [0x0d] = KEY_TEXT, /* TTX */
1457 [0x0b] = KEY_TV, /* AIR/CBL */
1458 [0x11] = KEY_PC, /* PC/TV */
1459 [0x17] = KEY_OK, /* CH RTN */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001460 [0x19] = KEY_MODE, /* FUNC */
1461 [0x0c] = KEY_SEARCH, /* AUTOSCAN */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001462
1463 /* Not sure what to do with these ones! */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001464 [0x0f] = KEY_SELECT, /* SOURCE */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001465 [0x0a] = KEY_KPPLUS, /* +100 */
1466 [0x14] = KEY_EQUAL, /* SYNC */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001467 [0x1c] = KEY_MEDIA, /* PC/TV */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001468};
1469
1470EXPORT_SYMBOL_GPL(ir_codes_pv951);
1471
1472/* generic RC5 keytable */
1473/* see http://users.pandora.be/nenya/electronics/rc5/codes00.htm */
1474/* used by old (black) Hauppauge remotes */
1475IR_KEYTAB_TYPE ir_codes_rc5_tv[IR_KEYTAB_SIZE] = {
1476 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001477 [0x00] = KEY_0,
1478 [0x01] = KEY_1,
1479 [0x02] = KEY_2,
1480 [0x03] = KEY_3,
1481 [0x04] = KEY_4,
1482 [0x05] = KEY_5,
1483 [0x06] = KEY_6,
1484 [0x07] = KEY_7,
1485 [0x08] = KEY_8,
1486 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001487
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001488 [0x0b] = KEY_CHANNEL, /* channel / program (japan: 11) */
1489 [0x0c] = KEY_POWER, /* standby */
1490 [0x0d] = KEY_MUTE, /* mute / demute */
1491 [0x0f] = KEY_TV, /* display */
1492 [0x10] = KEY_VOLUMEUP,
1493 [0x11] = KEY_VOLUMEDOWN,
1494 [0x12] = KEY_BRIGHTNESSUP,
1495 [0x13] = KEY_BRIGHTNESSDOWN,
1496 [0x1e] = KEY_SEARCH, /* search + */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001497 [0x20] = KEY_CHANNELUP, /* channel / program + */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001498 [0x21] = KEY_CHANNELDOWN, /* channel / program - */
1499 [0x22] = KEY_CHANNEL, /* alt / channel */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001500 [0x23] = KEY_LANGUAGE, /* 1st / 2nd language */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001501 [0x26] = KEY_SLEEP, /* sleeptimer */
1502 [0x2e] = KEY_MENU, /* 2nd controls (USA: menu) */
1503 [0x30] = KEY_PAUSE,
1504 [0x32] = KEY_REWIND,
1505 [0x33] = KEY_GOTO,
1506 [0x35] = KEY_PLAY,
1507 [0x36] = KEY_STOP,
1508 [0x37] = KEY_RECORD, /* recording */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001509 [0x3c] = KEY_TEXT, /* teletext submode (Japan: 12) */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001510 [0x3d] = KEY_SUSPEND, /* system standby */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001511
1512};
1513
1514EXPORT_SYMBOL_GPL(ir_codes_rc5_tv);
1515
1516/* Table for Leadtek Winfast Remote Controls - used by both bttv and cx88 */
1517IR_KEYTAB_TYPE ir_codes_winfast[IR_KEYTAB_SIZE] = {
1518 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001519 [0x12] = KEY_0,
1520 [0x05] = KEY_1,
1521 [0x06] = KEY_2,
1522 [0x07] = KEY_3,
1523 [0x09] = KEY_4,
1524 [0x0a] = KEY_5,
1525 [0x0b] = KEY_6,
1526 [0x0d] = KEY_7,
1527 [0x0e] = KEY_8,
1528 [0x0f] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001529
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001530 [0x00] = KEY_POWER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001531 [0x1b] = KEY_AUDIO, /* Audio Source */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001532 [0x02] = KEY_TUNER, /* TV/FM, not on Y0400052 */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001533 [0x1e] = KEY_VIDEO, /* Video Source */
1534 [0x16] = KEY_INFO, /* Display information */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001535 [0x04] = KEY_VOLUMEUP,
1536 [0x08] = KEY_VOLUMEDOWN,
1537 [0x0c] = KEY_CHANNELUP,
1538 [0x10] = KEY_CHANNELDOWN,
1539 [0x03] = KEY_ZOOM, /* fullscreen */
1540 [0x1f] = KEY_TEXT, /* closed caption/teletext */
1541 [0x20] = KEY_SLEEP,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001542 [0x29] = KEY_CLEAR, /* boss key */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001543 [0x14] = KEY_MUTE,
1544 [0x2b] = KEY_RED,
1545 [0x2c] = KEY_GREEN,
1546 [0x2d] = KEY_YELLOW,
1547 [0x2e] = KEY_BLUE,
1548 [0x18] = KEY_KPPLUS, /* fine tune + , not on Y040052 */
1549 [0x19] = KEY_KPMINUS, /* fine tune - , not on Y040052 */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001550 [0x2a] = KEY_MEDIA, /* PIP (Picture in picture */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001551 [0x21] = KEY_DOT,
1552 [0x13] = KEY_ENTER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001553 [0x11] = KEY_LAST, /* Recall (last channel */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001554 [0x22] = KEY_PREVIOUS,
1555 [0x23] = KEY_PLAYPAUSE,
1556 [0x24] = KEY_NEXT,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001557 [0x25] = KEY_ARCHIVE, /* Time Shifting */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001558 [0x26] = KEY_STOP,
1559 [0x27] = KEY_RECORD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001560 [0x28] = KEY_SAVE, /* Screenshot */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001561 [0x2f] = KEY_MENU,
1562 [0x30] = KEY_CANCEL,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001563 [0x31] = KEY_CHANNEL, /* Channel Surf */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001564 [0x32] = KEY_SUBTITLE,
1565 [0x33] = KEY_LANGUAGE,
1566 [0x34] = KEY_REWIND,
1567 [0x35] = KEY_FASTFORWARD,
1568 [0x36] = KEY_TV,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001569 [0x37] = KEY_RADIO, /* FM */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001570 [0x38] = KEY_DVD,
Michel Lespinasse102df6a2007-11-26 18:57:10 -03001571
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001572 [0x3e] = KEY_F21, /* MCE +VOL, on Y04G0033 */
1573 [0x3a] = KEY_F22, /* MCE -VOL, on Y04G0033 */
1574 [0x3b] = KEY_F23, /* MCE +CH, on Y04G0033 */
1575 [0x3f] = KEY_F24 /* MCE -CH, on Y04G0033 */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001576};
1577
1578EXPORT_SYMBOL_GPL(ir_codes_winfast);
1579
Sylvain Pascheb93eedb2006-03-25 23:14:42 -03001580IR_KEYTAB_TYPE ir_codes_pinnacle_color[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001581 [0x59] = KEY_MUTE,
1582 [0x4a] = KEY_POWER,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001583
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001584 [0x18] = KEY_TEXT,
1585 [0x26] = KEY_TV,
1586 [0x3d] = KEY_PRINT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001587
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001588 [0x48] = KEY_RED,
1589 [0x04] = KEY_GREEN,
1590 [0x11] = KEY_YELLOW,
1591 [0x00] = KEY_BLUE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001592
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001593 [0x2d] = KEY_VOLUMEUP,
1594 [0x1e] = KEY_VOLUMEDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001595
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001596 [0x49] = KEY_MENU,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001597
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001598 [0x16] = KEY_CHANNELUP,
1599 [0x17] = KEY_CHANNELDOWN,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001600
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001601 [0x20] = KEY_UP,
1602 [0x21] = KEY_DOWN,
1603 [0x22] = KEY_LEFT,
1604 [0x23] = KEY_RIGHT,
1605 [0x0d] = KEY_SELECT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001606
1607
1608
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001609 [0x08] = KEY_BACK,
1610 [0x07] = KEY_REFRESH,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001611
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001612 [0x2f] = KEY_ZOOM,
1613 [0x29] = KEY_RECORD,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001614
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001615 [0x4b] = KEY_PAUSE,
1616 [0x4d] = KEY_REWIND,
1617 [0x2e] = KEY_PLAY,
1618 [0x4e] = KEY_FORWARD,
1619 [0x53] = KEY_PREVIOUS,
1620 [0x4c] = KEY_STOP,
1621 [0x54] = KEY_NEXT,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001622
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001623 [0x69] = KEY_0,
1624 [0x6a] = KEY_1,
1625 [0x6b] = KEY_2,
1626 [0x6c] = KEY_3,
1627 [0x6d] = KEY_4,
1628 [0x6e] = KEY_5,
1629 [0x6f] = KEY_6,
1630 [0x70] = KEY_7,
1631 [0x71] = KEY_8,
1632 [0x72] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001633
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001634 [0x74] = KEY_CHANNEL,
1635 [0x0a] = KEY_BACKSPACE,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001636};
1637
Sylvain Pascheb93eedb2006-03-25 23:14:42 -03001638EXPORT_SYMBOL_GPL(ir_codes_pinnacle_color);
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001639
1640/* Hauppauge: the newer, gray remotes (seems there are multiple
1641 * slightly different versions), shipped with cx88+ivtv cards.
1642 * almost rc5 coding, but some non-standard keys */
1643IR_KEYTAB_TYPE ir_codes_hauppauge_new[IR_KEYTAB_SIZE] = {
1644 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001645 [0x00] = KEY_0,
1646 [0x01] = KEY_1,
1647 [0x02] = KEY_2,
1648 [0x03] = KEY_3,
1649 [0x04] = KEY_4,
1650 [0x05] = KEY_5,
1651 [0x06] = KEY_6,
1652 [0x07] = KEY_7,
1653 [0x08] = KEY_8,
1654 [0x09] = KEY_9,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001655
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001656 [0x0a] = KEY_TEXT, /* keypad asterisk as well */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001657 [0x0b] = KEY_RED, /* red button */
1658 [0x0c] = KEY_RADIO,
1659 [0x0d] = KEY_MENU,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001660 [0x0e] = KEY_SUBTITLE, /* also the # key */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001661 [0x0f] = KEY_MUTE,
1662 [0x10] = KEY_VOLUMEUP,
1663 [0x11] = KEY_VOLUMEDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001664 [0x12] = KEY_PREVIOUS, /* previous channel */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001665 [0x14] = KEY_UP,
1666 [0x15] = KEY_DOWN,
1667 [0x16] = KEY_LEFT,
1668 [0x17] = KEY_RIGHT,
1669 [0x18] = KEY_VIDEO, /* Videos */
1670 [0x19] = KEY_AUDIO, /* Music */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001671 /* 0x1a: Pictures - presume this means
1672 "Multimedia Home Platform" -
1673 no "PICTURES" key in input.h
1674 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001675 [0x1a] = KEY_MHP,
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001676
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001677 [0x1b] = KEY_EPG, /* Guide */
1678 [0x1c] = KEY_TV,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001679 [0x1e] = KEY_NEXTSONG, /* skip >| */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001680 [0x1f] = KEY_EXIT, /* back/exit */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001681 [0x20] = KEY_CHANNELUP, /* channel / program + */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001682 [0x21] = KEY_CHANNELDOWN, /* channel / program - */
1683 [0x22] = KEY_CHANNEL, /* source (old black remote) */
1684 [0x24] = KEY_PREVIOUSSONG, /* replay |< */
1685 [0x25] = KEY_ENTER, /* OK */
1686 [0x26] = KEY_SLEEP, /* minimize (old black remote) */
1687 [0x29] = KEY_BLUE, /* blue key */
1688 [0x2e] = KEY_GREEN, /* green button */
1689 [0x30] = KEY_PAUSE, /* pause */
1690 [0x32] = KEY_REWIND, /* backward << */
1691 [0x34] = KEY_FASTFORWARD, /* forward >> */
1692 [0x35] = KEY_PLAY,
1693 [0x36] = KEY_STOP,
1694 [0x37] = KEY_RECORD, /* recording */
1695 [0x38] = KEY_YELLOW, /* yellow key */
1696 [0x3b] = KEY_SELECT, /* top right button */
1697 [0x3c] = KEY_ZOOM, /* full */
1698 [0x3d] = KEY_POWER, /* system power (green button) */
Ricardo Cerqueira4c0f6312006-01-23 09:42:06 -02001699};
1700
1701EXPORT_SYMBOL_GPL(ir_codes_hauppauge_new);
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001702
1703IR_KEYTAB_TYPE ir_codes_npgtech[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001704 [0x1d] = KEY_SWITCHVIDEOMODE, /* switch inputs */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001705 [0x2a] = KEY_FRONT,
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001706
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001707 [0x3e] = KEY_1,
1708 [0x02] = KEY_2,
1709 [0x06] = KEY_3,
1710 [0x0a] = KEY_4,
1711 [0x0e] = KEY_5,
1712 [0x12] = KEY_6,
1713 [0x16] = KEY_7,
1714 [0x1a] = KEY_8,
1715 [0x1e] = KEY_9,
1716 [0x3a] = KEY_0,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001717 [0x22] = KEY_NUMLOCK, /* -/-- */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001718 [0x20] = KEY_REFRESH,
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001719
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001720 [0x03] = KEY_BRIGHTNESSDOWN,
1721 [0x28] = KEY_AUDIO,
1722 [0x3c] = KEY_UP,
1723 [0x3f] = KEY_LEFT,
1724 [0x2e] = KEY_MUTE,
1725 [0x3b] = KEY_RIGHT,
1726 [0x00] = KEY_DOWN,
1727 [0x07] = KEY_BRIGHTNESSUP,
1728 [0x2c] = KEY_TEXT,
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001729
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001730 [0x37] = KEY_RECORD,
1731 [0x17] = KEY_PLAY,
1732 [0x13] = KEY_PAUSE,
1733 [0x26] = KEY_STOP,
1734 [0x18] = KEY_FASTFORWARD,
1735 [0x14] = KEY_REWIND,
1736 [0x33] = KEY_ZOOM,
1737 [0x32] = KEY_KEYBOARD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001738 [0x30] = KEY_GOTO, /* Pointing arrow */
1739 [0x36] = KEY_MACRO, /* Maximize/Minimize (yellow) */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001740 [0x0b] = KEY_RADIO,
1741 [0x10] = KEY_POWER,
Ricardo Cerqueira680543c2006-05-22 07:44:02 -03001742
1743};
1744
1745EXPORT_SYMBOL_GPL(ir_codes_npgtech);
Peter Naullsd1009bd2006-08-08 09:10:05 -03001746
1747/* Norwood Micro (non-Pro) TV Tuner
1748 By Peter Naulls <peter@chocky.org>
1749 Key comments are the functions given in the manual */
1750IR_KEYTAB_TYPE ir_codes_norwood[IR_KEYTAB_SIZE] = {
1751 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001752 [0x20] = KEY_0,
1753 [0x21] = KEY_1,
1754 [0x22] = KEY_2,
1755 [0x23] = KEY_3,
1756 [0x24] = KEY_4,
1757 [0x25] = KEY_5,
1758 [0x26] = KEY_6,
1759 [0x27] = KEY_7,
1760 [0x28] = KEY_8,
1761 [0x29] = KEY_9,
Peter Naullsd1009bd2006-08-08 09:10:05 -03001762
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001763 [0x78] = KEY_TUNER, /* Video Source */
1764 [0x2c] = KEY_EXIT, /* Open/Close software */
1765 [0x2a] = KEY_SELECT, /* 2 Digit Select */
1766 [0x69] = KEY_AGAIN, /* Recall */
Peter Naullsd1009bd2006-08-08 09:10:05 -03001767
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001768 [0x32] = KEY_BRIGHTNESSUP, /* Brightness increase */
1769 [0x33] = KEY_BRIGHTNESSDOWN, /* Brightness decrease */
1770 [0x6b] = KEY_KPPLUS, /* (not named >>>>>) */
1771 [0x6c] = KEY_KPMINUS, /* (not named <<<<<) */
Peter Naullsd1009bd2006-08-08 09:10:05 -03001772
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001773 [0x2d] = KEY_MUTE, /* Mute */
1774 [0x30] = KEY_VOLUMEUP, /* Volume up */
1775 [0x31] = KEY_VOLUMEDOWN,/* Volume down */
1776 [0x60] = KEY_CHANNELUP, /* Channel up */
1777 [0x61] = KEY_CHANNELDOWN,/* Channel down */
Peter Naullsd1009bd2006-08-08 09:10:05 -03001778
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001779 [0x3f] = KEY_RECORD, /* Record */
1780 [0x37] = KEY_PLAY, /* Play */
1781 [0x36] = KEY_PAUSE, /* Pause */
1782 [0x2b] = KEY_STOP, /* Stop */
1783 [0x67] = KEY_FASTFORWARD,/* Foward */
1784 [0x66] = KEY_REWIND, /* Rewind */
1785 [0x3e] = KEY_SEARCH, /* Auto Scan */
1786 [0x2e] = KEY_CAMERA, /* Capture Video */
1787 [0x6d] = KEY_MENU, /* Show/Hide Control */
1788 [0x2f] = KEY_ZOOM, /* Full Screen */
1789 [0x34] = KEY_RADIO, /* FM */
1790 [0x65] = KEY_POWER, /* Computer power */
Peter Naullsd1009bd2006-08-08 09:10:05 -03001791};
1792
1793EXPORT_SYMBOL_GPL(ir_codes_norwood);
David Hardeman2520fff2006-12-02 21:16:05 -02001794
1795/* From reading the following remotes:
1796 * Zenith Universal 7 / TV Mode 807 / VCR Mode 837
1797 * Hauppauge (from NOVA-CI-s box product)
1798 * This is a "middle of the road" approach, differences are noted
1799 */
1800IR_KEYTAB_TYPE ir_codes_budget_ci_old[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001801 [0x00] = KEY_0,
1802 [0x01] = KEY_1,
1803 [0x02] = KEY_2,
1804 [0x03] = KEY_3,
1805 [0x04] = KEY_4,
1806 [0x05] = KEY_5,
1807 [0x06] = KEY_6,
1808 [0x07] = KEY_7,
1809 [0x08] = KEY_8,
1810 [0x09] = KEY_9,
1811 [0x0a] = KEY_ENTER,
1812 [0x0b] = KEY_RED,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001813 [0x0c] = KEY_POWER, /* RADIO on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001814 [0x0d] = KEY_MUTE,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001815 [0x0f] = KEY_A, /* TV on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001816 [0x10] = KEY_VOLUMEUP,
1817 [0x11] = KEY_VOLUMEDOWN,
1818 [0x14] = KEY_B,
1819 [0x1c] = KEY_UP,
1820 [0x1d] = KEY_DOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001821 [0x1e] = KEY_OPTION, /* RESERVED on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001822 [0x1f] = KEY_BREAK,
1823 [0x20] = KEY_CHANNELUP,
1824 [0x21] = KEY_CHANNELDOWN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001825 [0x22] = KEY_PREVIOUS, /* Prev Ch on Zenith, SOURCE on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001826 [0x24] = KEY_RESTART,
1827 [0x25] = KEY_OK,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001828 [0x26] = KEY_CYCLEWINDOWS, /* MINIMIZE on Hauppauge */
1829 [0x28] = KEY_ENTER, /* VCR mode on Zenith */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001830 [0x29] = KEY_PAUSE,
1831 [0x2b] = KEY_RIGHT,
1832 [0x2c] = KEY_LEFT,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001833 [0x2e] = KEY_MENU, /* FULL SCREEN on Hauppauge */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001834 [0x30] = KEY_SLOW,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001835 [0x31] = KEY_PREVIOUS, /* VCR mode on Zenith */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001836 [0x32] = KEY_REWIND,
1837 [0x34] = KEY_FASTFORWARD,
1838 [0x35] = KEY_PLAY,
1839 [0x36] = KEY_STOP,
1840 [0x37] = KEY_RECORD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001841 [0x38] = KEY_TUNER, /* TV/VCR on Zenith */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001842 [0x3a] = KEY_C,
1843 [0x3c] = KEY_EXIT,
1844 [0x3d] = KEY_POWER2,
1845 [0x3e] = KEY_TUNER,
David Hardeman2520fff2006-12-02 21:16:05 -02001846};
1847
1848EXPORT_SYMBOL_GPL(ir_codes_budget_ci_old);
Hermann Pitton91607232006-12-07 21:45:28 -03001849
1850/*
1851 * Marc Fargas <telenieko@telenieko.com>
1852 * this is the remote control that comes with the asus p7131
1853 * which has a label saying is "Model PC-39"
1854 */
1855IR_KEYTAB_TYPE ir_codes_asus_pc39[IR_KEYTAB_SIZE] = {
1856 /* Keys 0 to 9 */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001857 [0x15] = KEY_0,
1858 [0x29] = KEY_1,
1859 [0x2d] = KEY_2,
1860 [0x2b] = KEY_3,
1861 [0x09] = KEY_4,
1862 [0x0d] = KEY_5,
1863 [0x0b] = KEY_6,
1864 [0x31] = KEY_7,
1865 [0x35] = KEY_8,
1866 [0x33] = KEY_9,
Hermann Pitton91607232006-12-07 21:45:28 -03001867
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001868 [0x3e] = KEY_RADIO, /* radio */
1869 [0x03] = KEY_MENU, /* dvd/menu */
1870 [0x2a] = KEY_VOLUMEUP,
1871 [0x19] = KEY_VOLUMEDOWN,
1872 [0x37] = KEY_UP,
1873 [0x3b] = KEY_DOWN,
1874 [0x27] = KEY_LEFT,
1875 [0x2f] = KEY_RIGHT,
1876 [0x25] = KEY_VIDEO, /* video */
1877 [0x39] = KEY_AUDIO, /* music */
Hermann Pitton91607232006-12-07 21:45:28 -03001878
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001879 [0x21] = KEY_TV, /* tv */
1880 [0x1d] = KEY_EXIT, /* back */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001881 [0x0a] = KEY_CHANNELUP, /* channel / program + */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001882 [0x1b] = KEY_CHANNELDOWN, /* channel / program - */
1883 [0x1a] = KEY_ENTER, /* enter */
Hermann Pitton91607232006-12-07 21:45:28 -03001884
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001885 [0x06] = KEY_PAUSE, /* play/pause */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001886 [0x1e] = KEY_PREVIOUS, /* rew */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001887 [0x26] = KEY_NEXT, /* forward */
1888 [0x0e] = KEY_REWIND, /* backward << */
1889 [0x3a] = KEY_FASTFORWARD, /* forward >> */
1890 [0x36] = KEY_STOP,
1891 [0x2e] = KEY_RECORD, /* recording */
1892 [0x16] = KEY_POWER, /* the button that reads "close" */
Hermann Pitton91607232006-12-07 21:45:28 -03001893
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001894 [0x11] = KEY_ZOOM, /* full screen */
1895 [0x13] = KEY_MACRO, /* recall */
1896 [0x23] = KEY_HOME, /* home */
1897 [0x05] = KEY_PVR, /* picture */
1898 [0x3d] = KEY_MUTE, /* mute */
1899 [0x01] = KEY_DVD, /* dvd */
Hermann Pitton91607232006-12-07 21:45:28 -03001900};
1901
1902EXPORT_SYMBOL_GPL(ir_codes_asus_pc39);
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001903
1904
1905/* Encore ENLTV-FM - black plastic, white front cover with white glowing buttons
1906 Juan Pablo Sormani <sorman@gmail.com> */
1907IR_KEYTAB_TYPE ir_codes_encore_enltv[IR_KEYTAB_SIZE] = {
1908
1909 /* Power button does nothing, neither in Windows app,
1910 although it sends data (used for BIOS wakeup?) */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001911 [0x0d] = KEY_MUTE,
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001912
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001913 [0x1e] = KEY_TV,
1914 [0x00] = KEY_VIDEO,
1915 [0x01] = KEY_AUDIO, /* music */
1916 [0x02] = KEY_MHP, /* picture */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001917
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001918 [0x1f] = KEY_1,
1919 [0x03] = KEY_2,
1920 [0x04] = KEY_3,
1921 [0x05] = KEY_4,
1922 [0x1c] = KEY_5,
1923 [0x06] = KEY_6,
1924 [0x07] = KEY_7,
1925 [0x08] = KEY_8,
1926 [0x1d] = KEY_9,
1927 [0x0a] = KEY_0,
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001928
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001929 [0x09] = KEY_LIST, /* -/-- */
1930 [0x0b] = KEY_LAST, /* recall */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001931
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001932 [0x14] = KEY_HOME, /* win start menu */
1933 [0x15] = KEY_EXIT, /* exit */
1934 [0x16] = KEY_UP,
1935 [0x12] = KEY_DOWN,
1936 [0x0c] = KEY_RIGHT,
1937 [0x17] = KEY_LEFT,
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001938
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001939 [0x18] = KEY_ENTER, /* OK */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001940
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001941 [0x0e] = KEY_ESC,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001942 [0x13] = KEY_D, /* desktop */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001943 [0x11] = KEY_TAB,
1944 [0x19] = KEY_SWITCHVIDEOMODE, /* switch */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001945
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001946 [0x1a] = KEY_MENU,
1947 [0x1b] = KEY_ZOOM, /* fullscreen */
1948 [0x44] = KEY_TIME, /* time shift */
1949 [0x40] = KEY_MODE, /* source */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001950
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001951 [0x5a] = KEY_RECORD,
1952 [0x42] = KEY_PLAY, /* play/pause */
1953 [0x45] = KEY_STOP,
1954 [0x43] = KEY_CAMERA, /* camera icon */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001955
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001956 [0x48] = KEY_REWIND,
1957 [0x4a] = KEY_FASTFORWARD,
1958 [0x49] = KEY_PREVIOUS,
1959 [0x4b] = KEY_NEXT,
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001960
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001961 [0x4c] = KEY_FAVORITES, /* tv wall */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001962 [0x4d] = KEY_SOUND, /* DVD sound */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03001963 [0x4e] = KEY_LANGUAGE, /* DVD lang */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001964 [0x4f] = KEY_TEXT, /* DVD text */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001965
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001966 [0x50] = KEY_SLEEP, /* shutdown */
1967 [0x51] = KEY_MODE, /* stereo > main */
1968 [0x52] = KEY_SELECT, /* stereo > sap */
1969 [0x53] = KEY_PROG1, /* teletext */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001970
1971
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03001972 [0x59] = KEY_RED, /* AP1 */
1973 [0x41] = KEY_GREEN, /* AP2 */
1974 [0x47] = KEY_YELLOW, /* AP3 */
1975 [0x57] = KEY_BLUE, /* AP4 */
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001976};
Juan Pablo Sormanic36c4592006-12-27 12:46:36 -03001977EXPORT_SYMBOL_GPL(ir_codes_encore_enltv);
Ville-Pekka Vainioae1942c2007-01-12 14:06:21 -03001978
Mauro Carvalho Chehab7d341a62008-08-05 10:14:13 -03001979/* Encore ENLTV2-FM - silver plastic - "Wand Media" written at the botton
1980 Mauro Carvalho Chehab <mchehab@infradead.org> */
1981IR_KEYTAB_TYPE ir_codes_encore_enltv2[IR_KEYTAB_SIZE] = {
1982 [0x4c] = KEY_POWER2,
1983 [0x4a] = KEY_TUNER,
1984 [0x40] = KEY_1,
1985 [0x60] = KEY_2,
1986 [0x50] = KEY_3,
1987 [0x70] = KEY_4,
1988 [0x48] = KEY_5,
1989 [0x68] = KEY_6,
1990 [0x58] = KEY_7,
1991 [0x78] = KEY_8,
1992 [0x44] = KEY_9,
1993 [0x54] = KEY_0,
1994
1995 [0x64] = KEY_LAST, /* +100 */
1996 [0x4e] = KEY_AGAIN, /* Recall */
1997
1998 [0x6c] = KEY_SWITCHVIDEOMODE, /* Video Source */
1999 [0x5e] = KEY_MENU,
2000 [0x56] = KEY_SCREEN,
2001 [0x7a] = KEY_SETUP,
2002
2003 [0x46] = KEY_MUTE,
2004 [0x5c] = KEY_MODE, /* Stereo */
2005 [0x74] = KEY_INFO,
2006 [0x7c] = KEY_CLEAR,
2007
2008 [0x55] = KEY_UP,
2009 [0x49] = KEY_DOWN,
2010 [0x7e] = KEY_LEFT,
2011 [0x59] = KEY_RIGHT,
2012 [0x6a] = KEY_ENTER,
2013
2014 [0x42] = KEY_VOLUMEUP,
2015 [0x62] = KEY_VOLUMEDOWN,
2016 [0x52] = KEY_CHANNELUP,
2017 [0x72] = KEY_CHANNELDOWN,
2018
2019 [0x41] = KEY_RECORD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002020 [0x51] = KEY_SHUFFLE, /* Snapshot */
2021 [0x75] = KEY_TIME, /* Timeshift */
2022 [0x71] = KEY_TV2, /* PIP */
Mauro Carvalho Chehab7d341a62008-08-05 10:14:13 -03002023
2024 [0x45] = KEY_REWIND,
2025 [0x6f] = KEY_PAUSE,
2026 [0x7d] = KEY_FORWARD,
2027 [0x79] = KEY_STOP,
2028};
2029EXPORT_SYMBOL_GPL(ir_codes_encore_enltv2);
2030
Ville-Pekka Vainio28aedb82007-04-14 15:38:23 -03002031/* for the Technotrend 1500 bundled remotes (grey and black): */
Ville-Pekka Vainioae1942c2007-01-12 14:06:21 -03002032IR_KEYTAB_TYPE ir_codes_tt_1500[IR_KEYTAB_SIZE] = {
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002033 [0x01] = KEY_POWER,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002034 [0x02] = KEY_SHUFFLE, /* ? double-arrow key */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002035 [0x03] = KEY_1,
2036 [0x04] = KEY_2,
2037 [0x05] = KEY_3,
2038 [0x06] = KEY_4,
2039 [0x07] = KEY_5,
2040 [0x08] = KEY_6,
2041 [0x09] = KEY_7,
2042 [0x0a] = KEY_8,
2043 [0x0b] = KEY_9,
2044 [0x0c] = KEY_0,
2045 [0x0d] = KEY_UP,
2046 [0x0e] = KEY_LEFT,
2047 [0x0f] = KEY_OK,
2048 [0x10] = KEY_RIGHT,
2049 [0x11] = KEY_DOWN,
2050 [0x12] = KEY_INFO,
2051 [0x13] = KEY_EXIT,
2052 [0x14] = KEY_RED,
2053 [0x15] = KEY_GREEN,
2054 [0x16] = KEY_YELLOW,
2055 [0x17] = KEY_BLUE,
2056 [0x18] = KEY_MUTE,
2057 [0x19] = KEY_TEXT,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002058 [0x1a] = KEY_MODE, /* ? TV/Radio */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002059 [0x21] = KEY_OPTION,
2060 [0x22] = KEY_EPG,
2061 [0x23] = KEY_CHANNELUP,
2062 [0x24] = KEY_CHANNELDOWN,
2063 [0x25] = KEY_VOLUMEUP,
2064 [0x26] = KEY_VOLUMEDOWN,
2065 [0x27] = KEY_SETUP,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002066 [0x3a] = KEY_RECORD, /* these keys are only in the black remote */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002067 [0x3b] = KEY_PLAY,
2068 [0x3c] = KEY_STOP,
2069 [0x3d] = KEY_REWIND,
2070 [0x3e] = KEY_PAUSE,
2071 [0x3f] = KEY_FORWARD,
Ville-Pekka Vainioae1942c2007-01-12 14:06:21 -03002072};
2073
2074EXPORT_SYMBOL_GPL(ir_codes_tt_1500);
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002075
Michael Krufky3c443582007-08-24 01:07:12 -03002076/* DViCO FUSION HDTV MCE remote */
2077IR_KEYTAB_TYPE ir_codes_fusionhdtv_mce[IR_KEYTAB_SIZE] = {
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002078
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002079 [0x0b] = KEY_1,
2080 [0x17] = KEY_2,
2081 [0x1b] = KEY_3,
2082 [0x07] = KEY_4,
2083 [0x50] = KEY_5,
2084 [0x54] = KEY_6,
2085 [0x48] = KEY_7,
2086 [0x4c] = KEY_8,
2087 [0x58] = KEY_9,
2088 [0x03] = KEY_0,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002089
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002090 [0x5e] = KEY_OK,
2091 [0x51] = KEY_UP,
2092 [0x53] = KEY_DOWN,
2093 [0x5b] = KEY_LEFT,
2094 [0x5f] = KEY_RIGHT,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002095
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002096 [0x02] = KEY_TV, /* Labeled DTV on remote */
2097 [0x0e] = KEY_MP3,
2098 [0x1a] = KEY_DVD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002099 [0x1e] = KEY_FAVORITES, /* Labeled CPF on remote */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002100 [0x16] = KEY_SETUP,
2101 [0x46] = KEY_POWER2, /* TV On/Off button on remote */
2102 [0x0a] = KEY_EPG, /* Labeled Guide on remote */
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002103
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002104 [0x49] = KEY_BACK,
2105 [0x59] = KEY_INFO, /* Labeled MORE on remote */
2106 [0x4d] = KEY_MENU, /* Labeled DVDMENU on remote */
2107 [0x55] = KEY_CYCLEWINDOWS, /* Labeled ALT-TAB on remote */
Michael Krufky3c443582007-08-24 01:07:12 -03002108
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002109 [0x0f] = KEY_PREVIOUSSONG, /* Labeled |<< REPLAY on remote */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002110 [0x12] = KEY_NEXTSONG, /* Labeled >>| SKIP on remote */
2111 [0x42] = KEY_ENTER, /* Labeled START with a green
2112 MS windows logo on remote */
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002113
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002114 [0x15] = KEY_VOLUMEUP,
2115 [0x05] = KEY_VOLUMEDOWN,
2116 [0x11] = KEY_CHANNELUP,
2117 [0x09] = KEY_CHANNELDOWN,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002118
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002119 [0x52] = KEY_CAMERA,
2120 [0x5a] = KEY_TUNER,
2121 [0x19] = KEY_OPEN,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002122
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002123 [0x13] = KEY_MODE, /* 4:3 16:9 select */
2124 [0x1f] = KEY_ZOOM,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002125
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002126 [0x43] = KEY_REWIND,
2127 [0x47] = KEY_PLAYPAUSE,
2128 [0x4f] = KEY_FASTFORWARD,
2129 [0x57] = KEY_MUTE,
2130 [0x0d] = KEY_STOP,
2131 [0x01] = KEY_RECORD,
2132 [0x4e] = KEY_POWER,
Chaogui Zhangd54d6982007-08-24 01:02:32 -03002133};
2134
Michael Krufky3c443582007-08-24 01:07:12 -03002135EXPORT_SYMBOL_GPL(ir_codes_fusionhdtv_mce);
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002136
Steven Toth91211062008-01-22 01:00:33 -03002137/* Pinnacle PCTV HD 800i mini remote */
2138IR_KEYTAB_TYPE ir_codes_pinnacle_pctv_hd[IR_KEYTAB_SIZE] = {
2139
2140 [0x0f] = KEY_1,
2141 [0x15] = KEY_2,
2142 [0x10] = KEY_3,
2143 [0x18] = KEY_4,
2144 [0x1b] = KEY_5,
2145 [0x1e] = KEY_6,
2146 [0x11] = KEY_7,
2147 [0x21] = KEY_8,
2148 [0x12] = KEY_9,
2149 [0x27] = KEY_0,
2150
2151 [0x24] = KEY_ZOOM,
2152 [0x2a] = KEY_SUBTITLE,
2153
2154 [0x00] = KEY_MUTE,
2155 [0x01] = KEY_ENTER, /* Pinnacle Logo */
2156 [0x39] = KEY_POWER,
2157
2158 [0x03] = KEY_VOLUMEUP,
2159 [0x09] = KEY_VOLUMEDOWN,
2160 [0x06] = KEY_CHANNELUP,
2161 [0x0c] = KEY_CHANNELDOWN,
2162
2163 [0x2d] = KEY_REWIND,
2164 [0x30] = KEY_PLAYPAUSE,
2165 [0x33] = KEY_FASTFORWARD,
2166 [0x3c] = KEY_STOP,
2167 [0x36] = KEY_RECORD,
2168 [0x3f] = KEY_EPG, /* Labeled "?" */
2169};
2170EXPORT_SYMBOL_GPL(ir_codes_pinnacle_pctv_hd);
2171
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002172/*
2173 * Igor Kuznetsov <igk72@ya.ru>
2174 * Andrey J. Melnikov <temnota@kmv.ru>
2175 *
2176 * Keytable is used by BeholdTV 60x series, M6 series at
2177 * least, and probably other cards too.
2178 * The "ascii-art picture" below (in comments, first row
2179 * is the keycode in hex, and subsequent row(s) shows
2180 * the button labels (several variants when appropriate)
2181 * helps to descide which keycodes to assign to the buttons.
2182 */
2183IR_KEYTAB_TYPE ir_codes_behold[IR_KEYTAB_SIZE] = {
2184
2185 /* 0x1c 0x12 *
2186 * TV/FM POWER *
2187 * */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002188 [0x1c] = KEY_TUNER, /* XXX KEY_TV / KEY_RADIO */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002189 [0x12] = KEY_POWER,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002190
2191 /* 0x01 0x02 0x03 *
2192 * 1 2 3 *
2193 * *
2194 * 0x04 0x05 0x06 *
2195 * 4 5 6 *
2196 * *
2197 * 0x07 0x08 0x09 *
2198 * 7 8 9 *
2199 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002200 [0x01] = KEY_1,
2201 [0x02] = KEY_2,
2202 [0x03] = KEY_3,
2203 [0x04] = KEY_4,
2204 [0x05] = KEY_5,
2205 [0x06] = KEY_6,
2206 [0x07] = KEY_7,
2207 [0x08] = KEY_8,
2208 [0x09] = KEY_9,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002209
2210 /* 0x0a 0x00 0x17 *
2211 * RECALL 0 MODE *
2212 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002213 [0x0a] = KEY_AGAIN,
2214 [0x00] = KEY_0,
2215 [0x17] = KEY_MODE,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002216
2217 /* 0x14 0x10 *
2218 * ASPECT FULLSCREEN *
2219 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002220 [0x14] = KEY_SCREEN,
2221 [0x10] = KEY_ZOOM,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002222
2223 /* 0x0b *
2224 * Up *
2225 * *
2226 * 0x18 0x16 0x0c *
2227 * Left Ok Right *
2228 * *
2229 * 0x015 *
2230 * Down *
2231 * */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002232 [0x0b] = KEY_CHANNELUP, /* XXX KEY_UP */
2233 [0x18] = KEY_VOLUMEDOWN, /* XXX KEY_LEFT */
2234 [0x16] = KEY_OK, /* XXX KEY_ENTER */
2235 [0x0c] = KEY_VOLUMEUP, /* XXX KEY_RIGHT */
2236 [0x15] = KEY_CHANNELDOWN, /* XXX KEY_DOWN */
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002237
2238 /* 0x11 0x0d *
2239 * MUTE INFO *
2240 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002241 [0x11] = KEY_MUTE,
2242 [0x0d] = KEY_INFO,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002243
2244 /* 0x0f 0x1b 0x1a *
2245 * RECORD PLAY/PAUSE STOP *
2246 * *
2247 * 0x0e 0x1f 0x1e *
2248 *TELETEXT AUDIO SOURCE *
2249 * RED YELLOW *
2250 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002251 [0x0f] = KEY_RECORD,
2252 [0x1b] = KEY_PLAYPAUSE,
2253 [0x1a] = KEY_STOP,
2254 [0x0e] = KEY_TEXT,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002255 [0x1f] = KEY_RED, /*XXX KEY_AUDIO */
2256 [0x1e] = KEY_YELLOW, /*XXX KEY_SOURCE */
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002257
2258 /* 0x1d 0x13 0x19 *
2259 * SLEEP PREVIEW DVB *
2260 * GREEN BLUE *
2261 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002262 [0x1d] = KEY_SLEEP,
2263 [0x13] = KEY_GREEN,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002264 [0x19] = KEY_BLUE, /* XXX KEY_SAT */
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002265
2266 /* 0x58 0x5c *
2267 * FREEZE SNAPSHOT *
2268 * */
Mauro Carvalho Chehab3b82bdd2009-08-27 09:31:30 -03002269 [0x58] = KEY_SLOW,
2270 [0x5c] = KEY_SAVE,
Andrey J. Melnikoff (TEMHOTA)e8018c92008-01-07 05:17:39 -03002271
2272};
2273
2274EXPORT_SYMBOL_GPL(ir_codes_behold);
Adrian Pardinif0ba3562008-02-11 12:40:53 -03002275
Dmitry Belimovb34dddb2008-04-23 14:09:08 -03002276/* Beholder Intl. Ltd. 2008
2277 * Dmitry Belimov d.belimov@google.com
2278 * Keytable is used by BeholdTV Columbus
2279 * The "ascii-art picture" below (in comments, first row
2280 * is the keycode in hex, and subsequent row(s) shows
2281 * the button labels (several variants when appropriate)
2282 * helps to descide which keycodes to assign to the buttons.
2283 */
2284IR_KEYTAB_TYPE ir_codes_behold_columbus[IR_KEYTAB_SIZE] = {
2285
2286 /* 0x13 0x11 0x1C 0x12 *
2287 * Mute Source TV/FM Power *
2288 * */
2289
2290 [0x13] = KEY_MUTE,
2291 [0x11] = KEY_PROPS,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002292 [0x1C] = KEY_TUNER, /* KEY_TV/KEY_RADIO */
Dmitry Belimovb34dddb2008-04-23 14:09:08 -03002293 [0x12] = KEY_POWER,
2294
2295 /* 0x01 0x02 0x03 0x0D *
2296 * 1 2 3 Stereo *
2297 * *
2298 * 0x04 0x05 0x06 0x19 *
2299 * 4 5 6 Snapshot *
2300 * *
2301 * 0x07 0x08 0x09 0x10 *
2302 * 7 8 9 Zoom *
2303 * */
2304 [0x01] = KEY_1,
2305 [0x02] = KEY_2,
2306 [0x03] = KEY_3,
2307 [0x0D] = KEY_SETUP, /* Setup key */
2308 [0x04] = KEY_4,
2309 [0x05] = KEY_5,
2310 [0x06] = KEY_6,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002311 [0x19] = KEY_BOOKMARKS, /* Snapshot key */
Dmitry Belimovb34dddb2008-04-23 14:09:08 -03002312 [0x07] = KEY_7,
2313 [0x08] = KEY_8,
2314 [0x09] = KEY_9,
2315 [0x10] = KEY_ZOOM,
2316
2317 /* 0x0A 0x00 0x0B 0x0C *
2318 * RECALL 0 ChannelUp VolumeUp *
2319 * */
2320 [0x0A] = KEY_AGAIN,
2321 [0x00] = KEY_0,
2322 [0x0B] = KEY_CHANNELUP,
2323 [0x0C] = KEY_VOLUMEUP,
2324
2325 /* 0x1B 0x1D 0x15 0x18 *
2326 * Timeshift Record ChannelDown VolumeDown *
2327 * */
2328
2329 [0x1B] = KEY_REWIND,
2330 [0x1D] = KEY_RECORD,
2331 [0x15] = KEY_CHANNELDOWN,
2332 [0x18] = KEY_VOLUMEDOWN,
2333
2334 /* 0x0E 0x1E 0x0F 0x1A *
2335 * Stop Pause Previouse Next *
2336 * */
2337
2338 [0x0E] = KEY_STOP,
2339 [0x1E] = KEY_PAUSE,
2340 [0x0F] = KEY_PREVIOUS,
2341 [0x1A] = KEY_NEXT,
2342
2343};
2344EXPORT_SYMBOL_GPL(ir_codes_behold_columbus);
2345
Adrian Pardinif0ba3562008-02-11 12:40:53 -03002346/*
2347 * Remote control for the Genius TVGO A11MCE
2348 * Adrian Pardini <pardo.bsso@gmail.com>
2349 */
2350IR_KEYTAB_TYPE ir_codes_genius_tvgo_a11mce[IR_KEYTAB_SIZE] = {
2351 /* Keys 0 to 9 */
2352 [0x48] = KEY_0,
2353 [0x09] = KEY_1,
2354 [0x1d] = KEY_2,
2355 [0x1f] = KEY_3,
2356 [0x19] = KEY_4,
2357 [0x1b] = KEY_5,
2358 [0x11] = KEY_6,
2359 [0x17] = KEY_7,
2360 [0x12] = KEY_8,
2361 [0x16] = KEY_9,
2362
2363 [0x54] = KEY_RECORD, /* recording */
2364 [0x06] = KEY_MUTE, /* mute */
2365 [0x10] = KEY_POWER,
2366 [0x40] = KEY_LAST, /* recall */
2367 [0x4c] = KEY_CHANNELUP, /* channel / program + */
2368 [0x00] = KEY_CHANNELDOWN, /* channel / program - */
2369 [0x0d] = KEY_VOLUMEUP,
2370 [0x15] = KEY_VOLUMEDOWN,
2371 [0x4d] = KEY_OK, /* also labeled as Pause */
2372 [0x1c] = KEY_ZOOM, /* full screen and Stop*/
2373 [0x02] = KEY_MODE, /* AV Source or Rewind*/
2374 [0x04] = KEY_LIST, /* -/-- */
2375 /* small arrows above numbers */
2376 [0x1a] = KEY_NEXT, /* also Fast Forward */
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002377 [0x0e] = KEY_PREVIOUS, /* also Rewind */
Adrian Pardinif0ba3562008-02-11 12:40:53 -03002378 /* these are in a rather non standard layout and have
2379 an alternate name written */
2380 [0x1e] = KEY_UP, /* Video Setting */
2381 [0x0a] = KEY_DOWN, /* Video Default */
2382 [0x05] = KEY_LEFT, /* Snapshot */
2383 [0x0c] = KEY_RIGHT, /* Hide Panel */
2384 /* Four buttons without label */
2385 [0x49] = KEY_RED,
2386 [0x0b] = KEY_GREEN,
2387 [0x13] = KEY_YELLOW,
2388 [0x50] = KEY_BLUE,
2389};
2390EXPORT_SYMBOL_GPL(ir_codes_genius_tvgo_a11mce);
Dâniel Fragaba928032008-04-08 19:56:44 -03002391
2392/*
2393 * Remote control for Powercolor Real Angel 330
2394 * Daniel Fraga <fragabr@gmail.com>
2395 */
2396IR_KEYTAB_TYPE ir_codes_powercolor_real_angel[IR_KEYTAB_SIZE] = {
2397 [0x38] = KEY_SWITCHVIDEOMODE, /* switch inputs */
2398 [0x0c] = KEY_MEDIA, /* Turn ON/OFF App */
2399 [0x00] = KEY_0,
2400 [0x01] = KEY_1,
2401 [0x02] = KEY_2,
2402 [0x03] = KEY_3,
2403 [0x04] = KEY_4,
2404 [0x05] = KEY_5,
2405 [0x06] = KEY_6,
2406 [0x07] = KEY_7,
2407 [0x08] = KEY_8,
2408 [0x09] = KEY_9,
2409 [0x0a] = KEY_DIGITS, /* single, double, tripple digit */
2410 [0x29] = KEY_PREVIOUS, /* previous channel */
2411 [0x12] = KEY_BRIGHTNESSUP,
2412 [0x13] = KEY_BRIGHTNESSDOWN,
2413 [0x2b] = KEY_MODE, /* stereo/mono */
2414 [0x2c] = KEY_TEXT, /* teletext */
2415 [0x20] = KEY_UP, /* channel up */
2416 [0x21] = KEY_DOWN, /* channel down */
2417 [0x10] = KEY_RIGHT, /* volume up */
2418 [0x11] = KEY_LEFT, /* volume down */
2419 [0x0d] = KEY_MUTE,
2420 [0x1f] = KEY_RECORD,
2421 [0x17] = KEY_PLAY,
2422 [0x16] = KEY_PAUSE,
2423 [0x0b] = KEY_STOP,
2424 [0x27] = KEY_FASTFORWARD,
2425 [0x26] = KEY_REWIND,
2426 [0x1e] = KEY_SEARCH, /* autoscan */
2427 [0x0e] = KEY_SHUFFLE, /* snapshot */
2428 [0x2d] = KEY_SETUP,
2429 [0x0f] = KEY_SCREEN, /* full screen */
2430 [0x14] = KEY_RADIO, /* FM radio */
2431 [0x25] = KEY_POWER, /* power */
2432};
2433EXPORT_SYMBOL_GPL(ir_codes_powercolor_real_angel);
Tim Farrington6e501a32008-06-15 13:33:42 -03002434
Mauro Carvalho Chehab26d5f3a2008-12-07 13:19:29 -03002435/* Kworld Plus TV Analog Lite PCI IR
2436 Mauro Carvalho Chehab <mchehab@infradead.org>
2437 */
2438IR_KEYTAB_TYPE ir_codes_kworld_plus_tv_analog[IR_KEYTAB_SIZE] = {
2439 [0x0c] = KEY_PROG1, /* Kworld key */
2440 [0x16] = KEY_CLOSECD, /* -> ) */
2441 [0x1d] = KEY_POWER2,
2442
2443 [0x00] = KEY_1,
2444 [0x01] = KEY_2,
2445 [0x02] = KEY_3, /* Two keys have the same code: 3 and left */
2446 [0x03] = KEY_4, /* Two keys have the same code: 3 and right */
2447 [0x04] = KEY_5,
2448 [0x05] = KEY_6,
2449 [0x06] = KEY_7,
2450 [0x07] = KEY_8,
2451 [0x08] = KEY_9,
2452 [0x0a] = KEY_0,
2453
2454 [0x09] = KEY_AGAIN,
2455 [0x14] = KEY_MUTE,
2456
2457 [0x20] = KEY_UP,
2458 [0x21] = KEY_DOWN,
2459 [0x0b] = KEY_ENTER,
2460
2461 [0x10] = KEY_CHANNELUP,
2462 [0x11] = KEY_CHANNELDOWN,
2463
2464 /* Couldn't map key left/key right since those
2465 conflict with '3' and '4' scancodes
2466 I dunno what the original driver does
2467 */
2468
2469 [0x13] = KEY_VOLUMEUP,
2470 [0x12] = KEY_VOLUMEDOWN,
2471
2472 /* The lower part of the IR
2473 There are several duplicated keycodes there.
2474 Most of them conflict with digits.
2475 Add mappings just to the unused scancodes.
2476 Somehow, the original driver has a way to know,
2477 but this doesn't seem to be on some GPIO.
2478 Also, it is not related to the time between keyup
2479 and keydown.
2480 */
2481 [0x19] = KEY_PAUSE, /* Timeshift */
2482 [0x1a] = KEY_STOP,
2483 [0x1b] = KEY_RECORD,
2484
2485 [0x22] = KEY_TEXT,
2486
2487 [0x15] = KEY_AUDIO, /* ((*)) */
2488 [0x0f] = KEY_ZOOM,
2489 [0x1c] = KEY_SHUFFLE, /* snapshot */
2490
2491 [0x18] = KEY_RED, /* B */
2492 [0x23] = KEY_GREEN, /* C */
2493};
2494EXPORT_SYMBOL_GPL(ir_codes_kworld_plus_tv_analog);
2495
Mauro Carvalho Chehab9fc2c5e2009-02-11 14:15:14 -03002496/* Kaiomy TVnPC U2
2497 Mauro Carvalho Chehab <mchehab@infradead.org>
2498 */
2499IR_KEYTAB_TYPE ir_codes_kaiomy[IR_KEYTAB_SIZE] = {
2500 [0x43] = KEY_POWER2,
2501 [0x01] = KEY_LIST,
2502 [0x0b] = KEY_ZOOM,
2503 [0x03] = KEY_POWER,
2504
2505 [0x04] = KEY_1,
2506 [0x08] = KEY_2,
2507 [0x02] = KEY_3,
2508
2509 [0x0f] = KEY_4,
2510 [0x05] = KEY_5,
2511 [0x06] = KEY_6,
2512
2513 [0x0c] = KEY_7,
2514 [0x0d] = KEY_8,
2515 [0x0a] = KEY_9,
2516
2517 [0x11] = KEY_0,
2518
2519 [0x09] = KEY_CHANNELUP,
2520 [0x07] = KEY_CHANNELDOWN,
2521
2522 [0x0e] = KEY_VOLUMEUP,
2523 [0x13] = KEY_VOLUMEDOWN,
2524
2525 [0x10] = KEY_HOME,
2526 [0x12] = KEY_ENTER,
2527
2528 [0x14] = KEY_RECORD,
2529 [0x15] = KEY_STOP,
2530 [0x16] = KEY_PLAY,
2531 [0x17] = KEY_MUTE,
2532
2533 [0x18] = KEY_UP,
2534 [0x19] = KEY_DOWN,
2535 [0x1a] = KEY_LEFT,
2536 [0x1b] = KEY_RIGHT,
2537
2538 [0x1c] = KEY_RED,
2539 [0x1d] = KEY_GREEN,
2540 [0x1e] = KEY_YELLOW,
2541 [0x1f] = KEY_BLUE,
2542};
2543EXPORT_SYMBOL_GPL(ir_codes_kaiomy);
2544
Tim Farrington6e501a32008-06-15 13:33:42 -03002545IR_KEYTAB_TYPE ir_codes_avermedia_a16d[IR_KEYTAB_SIZE] = {
2546 [0x20] = KEY_LIST,
2547 [0x00] = KEY_POWER,
2548 [0x28] = KEY_1,
2549 [0x18] = KEY_2,
2550 [0x38] = KEY_3,
2551 [0x24] = KEY_4,
2552 [0x14] = KEY_5,
2553 [0x34] = KEY_6,
2554 [0x2c] = KEY_7,
2555 [0x1c] = KEY_8,
2556 [0x3c] = KEY_9,
2557 [0x12] = KEY_SUBTITLE,
2558 [0x22] = KEY_0,
2559 [0x32] = KEY_REWIND,
2560 [0x3a] = KEY_SHUFFLE,
2561 [0x02] = KEY_PRINT,
2562 [0x11] = KEY_CHANNELDOWN,
2563 [0x31] = KEY_CHANNELUP,
2564 [0x0c] = KEY_ZOOM,
2565 [0x1e] = KEY_VOLUMEDOWN,
2566 [0x3e] = KEY_VOLUMEUP,
2567 [0x0a] = KEY_MUTE,
2568 [0x04] = KEY_AUDIO,
2569 [0x26] = KEY_RECORD,
2570 [0x06] = KEY_PLAY,
2571 [0x36] = KEY_STOP,
2572 [0x16] = KEY_PAUSE,
2573 [0x2e] = KEY_REWIND,
2574 [0x0e] = KEY_FASTFORWARD,
2575 [0x30] = KEY_TEXT,
2576 [0x21] = KEY_GREEN,
2577 [0x01] = KEY_BLUE,
2578 [0x08] = KEY_EPG,
2579 [0x2a] = KEY_MENU,
2580};
2581EXPORT_SYMBOL_GPL(ir_codes_avermedia_a16d);
Mauro Carvalho Chehabbf1ece62008-06-26 17:03:00 -03002582
2583/* Encore ENLTV-FM v5.3
2584 Mauro Carvalho Chehab <mchehab@infradead.org>
2585 */
2586IR_KEYTAB_TYPE ir_codes_encore_enltv_fm53[IR_KEYTAB_SIZE] = {
2587 [0x10] = KEY_POWER2,
2588 [0x06] = KEY_MUTE,
2589
2590 [0x09] = KEY_1,
2591 [0x1d] = KEY_2,
2592 [0x1f] = KEY_3,
2593 [0x19] = KEY_4,
2594 [0x1b] = KEY_5,
2595 [0x11] = KEY_6,
2596 [0x17] = KEY_7,
2597 [0x12] = KEY_8,
2598 [0x16] = KEY_9,
2599 [0x48] = KEY_0,
2600
2601 [0x04] = KEY_LIST, /* -/-- */
2602 [0x40] = KEY_LAST, /* recall */
2603
2604 [0x02] = KEY_MODE, /* TV/AV */
2605 [0x05] = KEY_SHUFFLE, /* SNAPSHOT */
2606
2607 [0x4c] = KEY_CHANNELUP, /* UP */
2608 [0x00] = KEY_CHANNELDOWN, /* DOWN */
2609 [0x0d] = KEY_VOLUMEUP, /* RIGHT */
2610 [0x15] = KEY_VOLUMEDOWN, /* LEFT */
2611 [0x49] = KEY_ENTER, /* OK */
2612
2613 [0x54] = KEY_RECORD,
2614 [0x4d] = KEY_PLAY, /* pause */
2615
2616 [0x1e] = KEY_UP, /* video setting */
2617 [0x0e] = KEY_RIGHT, /* <- */
2618 [0x1a] = KEY_LEFT, /* -> */
2619
2620 [0x0a] = KEY_DOWN, /* video default */
2621 [0x0c] = KEY_ZOOM, /* hide pannel */
2622 [0x47] = KEY_SLEEP, /* shutdown */
2623};
2624EXPORT_SYMBOL_GPL(ir_codes_encore_enltv_fm53);
Mauro Carvalho Chehab9b000192008-06-26 17:03:00 -03002625
2626/* Zogis Real Audio 220 - 32 keys IR */
2627IR_KEYTAB_TYPE ir_codes_real_audio_220_32_keys[IR_KEYTAB_SIZE] = {
2628 [0x1c] = KEY_RADIO,
2629 [0x12] = KEY_POWER2,
2630
2631 [0x01] = KEY_1,
2632 [0x02] = KEY_2,
2633 [0x03] = KEY_3,
2634 [0x04] = KEY_4,
2635 [0x05] = KEY_5,
2636 [0x06] = KEY_6,
2637 [0x07] = KEY_7,
2638 [0x08] = KEY_8,
2639 [0x09] = KEY_9,
2640 [0x00] = KEY_0,
2641
2642 [0x0c] = KEY_VOLUMEUP,
2643 [0x18] = KEY_VOLUMEDOWN,
2644 [0x0b] = KEY_CHANNELUP,
2645 [0x15] = KEY_CHANNELDOWN,
2646 [0x16] = KEY_ENTER,
2647
2648 [0x11] = KEY_LIST, /* Source */
2649 [0x0d] = KEY_AUDIO, /* stereo */
2650
2651 [0x0f] = KEY_PREVIOUS, /* Prev */
2652 [0x1b] = KEY_PAUSE, /* Timeshift */
2653 [0x1a] = KEY_NEXT, /* Next */
2654
2655 [0x0e] = KEY_STOP,
2656 [0x1f] = KEY_PLAY,
2657 [0x1e] = KEY_PLAYPAUSE, /* Pause */
2658
2659 [0x1d] = KEY_RECORD,
2660 [0x13] = KEY_MUTE,
2661 [0x19] = KEY_SHUFFLE, /* Snapshot */
2662
2663};
2664EXPORT_SYMBOL_GPL(ir_codes_real_audio_220_32_keys);
Devin Heitmueller60245e82008-11-16 08:03:53 -03002665
2666/* ATI TV Wonder HD 600 USB
2667 Devin Heitmueller <devin.heitmueller@gmail.com>
2668 */
2669IR_KEYTAB_TYPE ir_codes_ati_tv_wonder_hd_600[IR_KEYTAB_SIZE] = {
2670 [0x00] = KEY_RECORD, /* Row 1 */
2671 [0x01] = KEY_PLAYPAUSE,
2672 [0x02] = KEY_STOP,
2673 [0x03] = KEY_POWER,
2674 [0x04] = KEY_PREVIOUS, /* Row 2 */
2675 [0x05] = KEY_REWIND,
2676 [0x06] = KEY_FORWARD,
2677 [0x07] = KEY_NEXT,
2678 [0x08] = KEY_EPG, /* Row 3 */
2679 [0x09] = KEY_HOME,
2680 [0x0a] = KEY_MENU,
2681 [0x0b] = KEY_CHANNELUP,
2682 [0x0c] = KEY_BACK, /* Row 4 */
2683 [0x0d] = KEY_UP,
2684 [0x0e] = KEY_INFO,
2685 [0x0f] = KEY_CHANNELDOWN,
2686 [0x10] = KEY_LEFT, /* Row 5 */
2687 [0x11] = KEY_SELECT,
2688 [0x12] = KEY_RIGHT,
2689 [0x13] = KEY_VOLUMEUP,
2690 [0x14] = KEY_LAST, /* Row 6 */
2691 [0x15] = KEY_DOWN,
2692 [0x16] = KEY_MUTE,
2693 [0x17] = KEY_VOLUMEDOWN,
2694};
2695
2696EXPORT_SYMBOL_GPL(ir_codes_ati_tv_wonder_hd_600);
Igor M. Liplianinb72857d2009-02-26 03:49:44 -03002697
2698/* DVBWorld remotes
2699 Igor M. Liplianin <liplianin@me.by>
2700 */
2701IR_KEYTAB_TYPE ir_codes_dm1105_nec[IR_KEYTAB_SIZE] = {
2702 [0x0a] = KEY_Q, /*power*/
2703 [0x0c] = KEY_M, /*mute*/
2704 [0x11] = KEY_1,
2705 [0x12] = KEY_2,
2706 [0x13] = KEY_3,
2707 [0x14] = KEY_4,
2708 [0x15] = KEY_5,
2709 [0x16] = KEY_6,
2710 [0x17] = KEY_7,
2711 [0x18] = KEY_8,
2712 [0x19] = KEY_9,
2713 [0x10] = KEY_0,
2714 [0x1c] = KEY_PAGEUP, /*ch+*/
2715 [0x0f] = KEY_PAGEDOWN, /*ch-*/
2716 [0x1a] = KEY_O, /*vol+*/
2717 [0x0e] = KEY_Z, /*vol-*/
2718 [0x04] = KEY_R, /*rec*/
2719 [0x09] = KEY_D, /*fav*/
2720 [0x08] = KEY_BACKSPACE, /*rewind*/
2721 [0x07] = KEY_A, /*fast*/
2722 [0x0b] = KEY_P, /*pause*/
2723 [0x02] = KEY_ESC, /*cancel*/
2724 [0x03] = KEY_G, /*tab*/
2725 [0x00] = KEY_UP, /*up*/
2726 [0x1f] = KEY_ENTER, /*ok*/
2727 [0x01] = KEY_DOWN, /*down*/
2728 [0x05] = KEY_C, /*cap*/
2729 [0x06] = KEY_S, /*stop*/
2730 [0x40] = KEY_F, /*full*/
2731 [0x1e] = KEY_W, /*tvmode*/
2732 [0x1b] = KEY_B, /*recall*/
2733};
2734EXPORT_SYMBOL_GPL(ir_codes_dm1105_nec);
Devin Heitmuellera4c47302009-06-20 21:34:42 -03002735
Devin Heitmueller8cd9aae2009-08-03 23:56:51 -03002736
2737/* Terratec Cinergy Hybrid T USB XS
2738 Devin Heitmueller <dheitmueller@linuxtv.org>
2739 */
2740IR_KEYTAB_TYPE ir_codes_terratec_cinergy_xs[IR_KEYTAB_SIZE] = {
2741 [0x41] = KEY_HOME,
2742 [0x01] = KEY_POWER,
2743 [0x42] = KEY_MENU,
2744 [0x02] = KEY_1,
2745 [0x03] = KEY_2,
2746 [0x04] = KEY_3,
2747 [0x43] = KEY_SUBTITLE,
2748 [0x05] = KEY_4,
2749 [0x06] = KEY_5,
2750 [0x07] = KEY_6,
2751 [0x44] = KEY_TEXT,
2752 [0x08] = KEY_7,
2753 [0x09] = KEY_8,
2754 [0x0a] = KEY_9,
2755 [0x45] = KEY_DELETE,
2756 [0x0b] = KEY_TUNER,
2757 [0x0c] = KEY_0,
2758 [0x0d] = KEY_MODE,
2759 [0x46] = KEY_TV,
2760 [0x47] = KEY_DVD,
2761 [0x49] = KEY_VIDEO,
2762 [0x4b] = KEY_AUX,
2763 [0x10] = KEY_UP,
2764 [0x11] = KEY_LEFT,
2765 [0x12] = KEY_OK,
2766 [0x13] = KEY_RIGHT,
2767 [0x14] = KEY_DOWN,
2768 [0x0f] = KEY_EPG,
2769 [0x16] = KEY_INFO,
2770 [0x4d] = KEY_BACKSPACE,
2771 [0x1c] = KEY_VOLUMEUP,
2772 [0x4c] = KEY_PLAY,
2773 [0x1b] = KEY_CHANNELUP,
2774 [0x1e] = KEY_VOLUMEDOWN,
2775 [0x1d] = KEY_MUTE,
2776 [0x1f] = KEY_CHANNELDOWN,
2777 [0x17] = KEY_RED,
2778 [0x18] = KEY_GREEN,
2779 [0x19] = KEY_YELLOW,
2780 [0x1a] = KEY_BLUE,
2781 [0x58] = KEY_RECORD,
2782 [0x48] = KEY_STOP,
2783 [0x40] = KEY_PAUSE,
2784 [0x54] = KEY_LAST,
2785 [0x4e] = KEY_REWIND,
2786 [0x4f] = KEY_FASTFORWARD,
2787 [0x5c] = KEY_NEXT,
2788};
2789EXPORT_SYMBOL_GPL(ir_codes_terratec_cinergy_xs);
2790
Devin Heitmuellera4c47302009-06-20 21:34:42 -03002791/* EVGA inDtube
2792 Devin Heitmueller <devin.heitmueller@gmail.com>
2793 */
2794IR_KEYTAB_TYPE ir_codes_evga_indtube[IR_KEYTAB_SIZE] = {
2795 [0x12] = KEY_POWER,
2796 [0x02] = KEY_MODE, /* TV */
2797 [0x14] = KEY_MUTE,
2798 [0x1a] = KEY_CHANNELUP,
2799 [0x16] = KEY_TV2, /* PIP */
2800 [0x1d] = KEY_VOLUMEUP,
2801 [0x05] = KEY_CHANNELDOWN,
2802 [0x0f] = KEY_PLAYPAUSE,
2803 [0x19] = KEY_VOLUMEDOWN,
2804 [0x1c] = KEY_REWIND,
2805 [0x0d] = KEY_RECORD,
2806 [0x18] = KEY_FORWARD,
2807 [0x1e] = KEY_PREVIOUS,
2808 [0x1b] = KEY_STOP,
2809 [0x1f] = KEY_NEXT,
2810 [0x13] = KEY_CAMERA,
2811};
2812EXPORT_SYMBOL_GPL(ir_codes_evga_indtube);
Igor M. Liplianinecfcfec2009-08-13 21:42:21 -03002813
2814IR_KEYTAB_TYPE ir_codes_videomate_s350[IR_KEYTAB_SIZE] = {
2815 [0x00] = KEY_TV,
2816 [0x01] = KEY_DVD,
2817 [0x04] = KEY_RECORD,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002818 [0x05] = KEY_VIDEO, /* TV/Video */
Igor M. Liplianinecfcfec2009-08-13 21:42:21 -03002819 [0x07] = KEY_STOP,
2820 [0x08] = KEY_PLAYPAUSE,
2821 [0x0a] = KEY_REWIND,
2822 [0x0f] = KEY_FASTFORWARD,
2823 [0x10] = KEY_CHANNELUP,
2824 [0x12] = KEY_VOLUMEUP,
2825 [0x13] = KEY_CHANNELDOWN,
2826 [0x14] = KEY_MUTE,
2827 [0x15] = KEY_VOLUMEDOWN,
2828 [0x16] = KEY_1,
2829 [0x17] = KEY_2,
2830 [0x18] = KEY_3,
2831 [0x19] = KEY_4,
2832 [0x1a] = KEY_5,
2833 [0x1b] = KEY_6,
2834 [0x1c] = KEY_7,
2835 [0x1d] = KEY_8,
2836 [0x1e] = KEY_9,
2837 [0x1f] = KEY_0,
2838 [0x21] = KEY_SLEEP,
2839 [0x24] = KEY_ZOOM,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002840 [0x25] = KEY_LAST, /* Recall */
2841 [0x26] = KEY_SUBTITLE, /* CC */
2842 [0x27] = KEY_LANGUAGE, /* MTS */
2843 [0x29] = KEY_CHANNEL, /* SURF */
Igor M. Liplianinecfcfec2009-08-13 21:42:21 -03002844 [0x2b] = KEY_A,
2845 [0x2c] = KEY_B,
Mauro Carvalho Chehab5d353642009-08-27 09:50:21 -03002846 [0x2f] = KEY_SHUFFLE, /* Snapshot */
Igor M. Liplianinecfcfec2009-08-13 21:42:21 -03002847 [0x23] = KEY_RADIO,
2848 [0x02] = KEY_PREVIOUSSONG,
2849 [0x06] = KEY_NEXTSONG,
2850 [0x03] = KEY_EPG,
2851 [0x09] = KEY_SETUP,
2852 [0x22] = KEY_BACKSPACE,
2853 [0x0c] = KEY_UP,
2854 [0x0e] = KEY_DOWN,
2855 [0x0b] = KEY_LEFT,
2856 [0x0d] = KEY_RIGHT,
2857 [0x11] = KEY_ENTER,
2858 [0x20] = KEY_TEXT,
2859};
2860EXPORT_SYMBOL_GPL(ir_codes_videomate_s350);