Commit | Line | Data |
---|---|---|
5af935cc MCC |
1 | /* rc-dvb0700-big.c - Keytable for devices in dvb0700 |
2 | * | |
3 | * Copyright (c) 2010 by Mauro Carvalho Chehab <mchehab@redhat.com> | |
4 | * | |
5 | * TODO: This table is a real mess, as it merges RC codes from several | |
6 | * devices into a big table. It also has both RC-5 and NEC codes inside. | |
7 | * It should be broken into small tables, and the protocols should properly | |
8 | * be indentificated. | |
9 | * | |
10 | * The table were imported from dib0700_devices.c. | |
11 | * | |
12 | * This program is free software; you can redistribute it and/or modify | |
13 | * it under the terms of the GNU General Public License as published by | |
14 | * the Free Software Foundation; either version 2 of the License, or | |
15 | * (at your option) any later version. | |
16 | */ | |
17 | ||
18 | #include <media/rc-map.h> | |
19 | ||
4eebfb0a | 20 | static struct ir_scancode dib0700_nec_table[] = { |
5af935cc MCC |
21 | /* Key codes for the Pixelview SBTVD remote */ |
22 | { 0x8613, KEY_MUTE }, | |
23 | { 0x8612, KEY_POWER }, | |
24 | { 0x8601, KEY_1 }, | |
25 | { 0x8602, KEY_2 }, | |
26 | { 0x8603, KEY_3 }, | |
27 | { 0x8604, KEY_4 }, | |
28 | { 0x8605, KEY_5 }, | |
29 | { 0x8606, KEY_6 }, | |
30 | { 0x8607, KEY_7 }, | |
31 | { 0x8608, KEY_8 }, | |
32 | { 0x8609, KEY_9 }, | |
33 | { 0x8600, KEY_0 }, | |
34 | { 0x860d, KEY_CHANNELUP }, | |
35 | { 0x8619, KEY_CHANNELDOWN }, | |
36 | { 0x8610, KEY_VOLUMEUP }, | |
37 | { 0x860c, KEY_VOLUMEDOWN }, | |
38 | ||
39 | { 0x860a, KEY_CAMERA }, | |
40 | { 0x860b, KEY_ZOOM }, | |
41 | { 0x861b, KEY_BACKSPACE }, | |
42 | { 0x8615, KEY_ENTER }, | |
43 | ||
44 | { 0x861d, KEY_UP }, | |
45 | { 0x861e, KEY_DOWN }, | |
46 | { 0x860e, KEY_LEFT }, | |
47 | { 0x860f, KEY_RIGHT }, | |
48 | ||
49 | { 0x8618, KEY_RECORD }, | |
50 | { 0x861a, KEY_STOP }, | |
51 | ||
52 | /* Key codes for the EvolutePC TVWay+ remote */ | |
53 | { 0x7a00, KEY_MENU }, | |
54 | { 0x7a01, KEY_RECORD }, | |
55 | { 0x7a02, KEY_PLAY }, | |
56 | { 0x7a03, KEY_STOP }, | |
57 | { 0x7a10, KEY_CHANNELUP }, | |
58 | { 0x7a11, KEY_CHANNELDOWN }, | |
59 | { 0x7a12, KEY_VOLUMEUP }, | |
60 | { 0x7a13, KEY_VOLUMEDOWN }, | |
61 | { 0x7a40, KEY_POWER }, | |
62 | { 0x7a41, KEY_MUTE }, | |
63 | ||
64 | /* Key codes for the Elgato EyeTV Diversity silver remote */ | |
65 | { 0x4501, KEY_POWER }, | |
66 | { 0x4502, KEY_MUTE }, | |
67 | { 0x4503, KEY_1 }, | |
68 | { 0x4504, KEY_2 }, | |
69 | { 0x4505, KEY_3 }, | |
70 | { 0x4506, KEY_4 }, | |
71 | { 0x4507, KEY_5 }, | |
72 | { 0x4508, KEY_6 }, | |
73 | { 0x4509, KEY_7 }, | |
74 | { 0x450a, KEY_8 }, | |
75 | { 0x450b, KEY_9 }, | |
76 | { 0x450c, KEY_LAST }, | |
77 | { 0x450d, KEY_0 }, | |
78 | { 0x450e, KEY_ENTER }, | |
79 | { 0x450f, KEY_RED }, | |
80 | { 0x4510, KEY_CHANNELUP }, | |
81 | { 0x4511, KEY_GREEN }, | |
82 | { 0x4512, KEY_VOLUMEDOWN }, | |
83 | { 0x4513, KEY_OK }, | |
84 | { 0x4514, KEY_VOLUMEUP }, | |
85 | { 0x4515, KEY_YELLOW }, | |
86 | { 0x4516, KEY_CHANNELDOWN }, | |
87 | { 0x4517, KEY_BLUE }, | |
88 | { 0x4518, KEY_LEFT }, /* Skip backwards */ | |
89 | { 0x4519, KEY_PLAYPAUSE }, | |
90 | { 0x451a, KEY_RIGHT }, /* Skip forward */ | |
91 | { 0x451b, KEY_REWIND }, | |
92 | { 0x451c, KEY_L }, /* Live */ | |
93 | { 0x451d, KEY_FASTFORWARD }, | |
94 | { 0x451e, KEY_STOP }, /* 'Reveal' for Teletext */ | |
95 | { 0x451f, KEY_MENU }, /* KEY_TEXT for Teletext */ | |
96 | { 0x4540, KEY_RECORD }, /* Font 'Size' for Teletext */ | |
97 | { 0x4541, KEY_SCREEN }, /* Full screen toggle, 'Hold' for Teletext */ | |
98 | { 0x4542, KEY_SELECT }, /* Select video input, 'Select' for Teletext */ | |
99 | }; | |
100 | ||
4eebfb0a | 101 | static struct rc_keymap dib0700_nec_map = { |
5af935cc | 102 | .map = { |
4eebfb0a MCC |
103 | .scan = dib0700_nec_table, |
104 | .size = ARRAY_SIZE(dib0700_nec_table), | |
5af935cc MCC |
105 | .ir_type = IR_TYPE_NEC, |
106 | .name = RC_MAP_DIB0700_NEC_TABLE, | |
107 | } | |
108 | }; | |
109 | ||
110 | static int __init init_rc_map(void) | |
111 | { | |
4eebfb0a | 112 | return ir_register_map(&dib0700_nec_map); |
5af935cc MCC |
113 | } |
114 | ||
115 | static void __exit exit_rc_map(void) | |
116 | { | |
4eebfb0a | 117 | ir_unregister_map(&dib0700_nec_map); |
5af935cc MCC |
118 | } |
119 | ||
120 | module_init(init_rc_map) | |
121 | module_exit(exit_rc_map) | |
122 | ||
123 | MODULE_LICENSE("GPL"); | |
124 | MODULE_AUTHOR("Mauro Carvalho Chehab <mchehab@redhat.com>"); |