1 /* rc-dvb0700-big.c - Keytable for devices in dvb0700
3 * Copyright (c) 2010 by Mauro Carvalho Chehab <mchehab@redhat.com>
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
10 * The table were imported from dib0700_devices.c.
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.
18 #include <media/rc-map.h>
19 #include <linux/module.h>
21 static struct rc_map_table dib0700_rc5_table
[] = {
22 /* Key codes for the tiny Pinnacle remote*/
24 { 0x0701, KEY_MENU
}, /* Pinnacle logo */
25 { 0x0739, KEY_POWER
},
26 { 0x0703, KEY_VOLUMEUP
},
27 { 0x0709, KEY_VOLUMEDOWN
},
28 { 0x0706, KEY_CHANNELUP
},
29 { 0x070c, KEY_CHANNELDOWN
},
40 { 0x0724, KEY_SCREEN
}, /* 'Square' key */
41 { 0x072a, KEY_TEXT
}, /* 'T' key */
42 { 0x072d, KEY_REWIND
},
44 { 0x0733, KEY_FASTFORWARD
},
45 { 0x0736, KEY_RECORD
},
47 { 0x073f, KEY_CANCEL
}, /* '?' key */
49 /* Key codes for the Terratec Cinergy DT XS Diversity, similar to cinergyT2.c */
50 { 0xeb01, KEY_POWER
},
60 { 0xeb0b, KEY_VIDEO
},
62 { 0xeb0d, KEY_REFRESH
},
67 { 0xeb13, KEY_RIGHT
},
71 { 0xeb18, KEY_GREEN
},
72 { 0xeb19, KEY_YELLOW
},
74 { 0xeb1b, KEY_CHANNELUP
},
75 { 0xeb1c, KEY_VOLUMEUP
},
77 { 0xeb1e, KEY_VOLUMEDOWN
},
78 { 0xeb1f, KEY_CHANNELDOWN
},
79 { 0xeb40, KEY_PAUSE
},
81 { 0xeb42, KEY_MENU
}, /* DVD Menu */
82 { 0xeb43, KEY_SUBTITLE
},
83 { 0xeb44, KEY_TEXT
}, /* Teletext */
84 { 0xeb45, KEY_DELETE
},
88 { 0xeb49, KEY_VIDEO
},
89 { 0xeb4a, KEY_AUDIO
}, /* Music */
90 { 0xeb4b, KEY_SCREEN
}, /* Pic */
93 { 0xeb4e, KEY_REWIND
},
94 { 0xeb4f, KEY_FASTFORWARD
},
95 { 0xeb54, KEY_PREVIOUS
},
96 { 0xeb58, KEY_RECORD
},
99 /* Key codes for the Haupauge WinTV Nova-TD, copied from nova-t-usb2.c (Nova-T USB2) */
110 { 0x1e0a, KEY_KPASTERISK
},
112 { 0x1e0c, KEY_RADIO
},
113 { 0x1e0d, KEY_MENU
},
114 { 0x1e0e, KEY_GRAVE
}, /* # */
115 { 0x1e0f, KEY_MUTE
},
116 { 0x1e10, KEY_VOLUMEUP
},
117 { 0x1e11, KEY_VOLUMEDOWN
},
118 { 0x1e12, KEY_CHANNEL
},
120 { 0x1e15, KEY_DOWN
},
121 { 0x1e16, KEY_LEFT
},
122 { 0x1e17, KEY_RIGHT
},
123 { 0x1e18, KEY_VIDEO
},
124 { 0x1e19, KEY_AUDIO
},
125 { 0x1e1a, KEY_MEDIA
},
128 { 0x1e1e, KEY_NEXT
},
129 { 0x1e1f, KEY_BACK
},
130 { 0x1e20, KEY_CHANNELUP
},
131 { 0x1e21, KEY_CHANNELDOWN
},
132 { 0x1e24, KEY_LAST
}, /* Skip backwards */
135 { 0x1e2e, KEY_GREEN
},
136 { 0x1e30, KEY_PAUSE
},
137 { 0x1e32, KEY_REWIND
},
138 { 0x1e34, KEY_FASTFORWARD
},
139 { 0x1e35, KEY_PLAY
},
140 { 0x1e36, KEY_STOP
},
141 { 0x1e37, KEY_RECORD
},
142 { 0x1e38, KEY_YELLOW
},
143 { 0x1e3b, KEY_GOTO
},
144 { 0x1e3d, KEY_POWER
},
146 /* Key codes for the Leadtek Winfast DTV Dongle */
147 { 0x0042, KEY_POWER
},
148 { 0x077c, KEY_TUNER
},
149 { 0x0f4e, KEY_PRINT
}, /* PREVIEW */
150 { 0x0840, KEY_SCREEN
}, /* full screen toggle*/
151 { 0x0f71, KEY_DOT
}, /* frequency */
162 { 0x0e4e, KEY_CLEAR
},
163 { 0x047c, KEY_CHANNEL
}, /* show channel number */
164 { 0x0f41, KEY_LAST
}, /* recall */
165 { 0x0342, KEY_MUTE
},
166 { 0x064c, KEY_RESERVED
}, /* PIP button*/
167 { 0x0172, KEY_SHUFFLE
}, /* SNAPSHOT */
168 { 0x0c4e, KEY_PLAYPAUSE
}, /* TIMESHIFT */
169 { 0x0b70, KEY_RECORD
},
170 { 0x037d, KEY_VOLUMEUP
},
171 { 0x017d, KEY_VOLUMEDOWN
},
172 { 0x0242, KEY_CHANNELUP
},
173 { 0x007d, KEY_CHANNELDOWN
},
175 /* Key codes for Nova-TD "credit card" remote control. */
186 { 0x1d0a, KEY_TEXT
},
187 { 0x1d0d, KEY_MENU
},
188 { 0x1d0f, KEY_MUTE
},
189 { 0x1d10, KEY_VOLUMEUP
},
190 { 0x1d11, KEY_VOLUMEDOWN
},
191 { 0x1d12, KEY_CHANNEL
},
193 { 0x1d15, KEY_DOWN
},
194 { 0x1d16, KEY_LEFT
},
195 { 0x1d17, KEY_RIGHT
},
197 { 0x1d1e, KEY_NEXT
},
198 { 0x1d1f, KEY_BACK
},
199 { 0x1d20, KEY_CHANNELUP
},
200 { 0x1d21, KEY_CHANNELDOWN
},
201 { 0x1d24, KEY_LAST
},
203 { 0x1d30, KEY_PAUSE
},
204 { 0x1d32, KEY_REWIND
},
205 { 0x1d34, KEY_FASTFORWARD
},
206 { 0x1d35, KEY_PLAY
},
207 { 0x1d36, KEY_STOP
},
208 { 0x1d37, KEY_RECORD
},
209 { 0x1d3b, KEY_GOTO
},
210 { 0x1d3d, KEY_POWER
},
213 static struct rc_map_list dib0700_rc5_map
= {
215 .scan
= dib0700_rc5_table
,
216 .size
= ARRAY_SIZE(dib0700_rc5_table
),
217 .rc_type
= RC_TYPE_RC5
,
218 .name
= RC_MAP_DIB0700_RC5_TABLE
,
222 static int __init
init_rc_map(void)
224 return rc_map_register(&dib0700_rc5_map
);
227 static void __exit
exit_rc_map(void)
229 rc_map_unregister(&dib0700_rc5_map
);
232 module_init(init_rc_map
)
233 module_exit(exit_rc_map
)
235 MODULE_LICENSE("GPL");
236 MODULE_AUTHOR("Mauro Carvalho Chehab <mchehab@redhat.com>");