diff options
Diffstat (limited to 'drivers/media/dvb/dvb-usb/af9015.h')
-rw-r--r-- | drivers/media/dvb/dvb-usb/af9015.h | 736 |
1 files changed, 3 insertions, 733 deletions
diff --git a/drivers/media/dvb/dvb-usb/af9015.h b/drivers/media/dvb/dvb-usb/af9015.h index c8e9349742ee..beb3004f00ba 100644 --- a/drivers/media/dvb/dvb-usb/af9015.h +++ b/drivers/media/dvb/dvb-usb/af9015.h | |||
@@ -100,6 +100,9 @@ enum af9015_ir_mode { | |||
100 | 100 | ||
101 | struct af9015_state { | 101 | struct af9015_state { |
102 | struct i2c_adapter i2c_adap; /* I2C adapter for 2nd FE */ | 102 | struct i2c_adapter i2c_adap; /* I2C adapter for 2nd FE */ |
103 | u8 rc_repeat; | ||
104 | u32 rc_keycode; | ||
105 | u8 rc_last[4]; | ||
103 | }; | 106 | }; |
104 | 107 | ||
105 | struct af9015_config { | 108 | struct af9015_config { |
@@ -108,8 +111,6 @@ struct af9015_config { | |||
108 | u16 firmware_size; | 111 | u16 firmware_size; |
109 | u16 firmware_checksum; | 112 | u16 firmware_checksum; |
110 | u32 eeprom_sum; | 113 | u32 eeprom_sum; |
111 | u8 *ir_table; | ||
112 | u16 ir_table_size; | ||
113 | }; | 114 | }; |
114 | 115 | ||
115 | enum af9015_remote { | 116 | enum af9015_remote { |
@@ -121,735 +122,4 @@ enum af9015_remote { | |||
121 | /* 5 */ AF9015_REMOTE_AVERMEDIA_KS, | 122 | /* 5 */ AF9015_REMOTE_AVERMEDIA_KS, |
122 | }; | 123 | }; |
123 | 124 | ||
124 | /* LeadTek - Y04G0051 */ | ||
125 | /* Leadtek WinFast DTV Dongle Gold */ | ||
126 | static struct ir_scancode ir_codes_af9015_table_leadtek[] = { | ||
127 | { 0x001e, KEY_1 }, | ||
128 | { 0x001f, KEY_2 }, | ||
129 | { 0x0020, KEY_3 }, | ||
130 | { 0x0021, KEY_4 }, | ||
131 | { 0x0022, KEY_5 }, | ||
132 | { 0x0023, KEY_6 }, | ||
133 | { 0x0024, KEY_7 }, | ||
134 | { 0x0025, KEY_8 }, | ||
135 | { 0x0026, KEY_9 }, | ||
136 | { 0x0027, KEY_0 }, | ||
137 | { 0x0028, KEY_OK }, | ||
138 | { 0x004f, KEY_RIGHT }, | ||
139 | { 0x0050, KEY_LEFT }, | ||
140 | { 0x0051, KEY_DOWN }, | ||
141 | { 0x0052, KEY_UP }, | ||
142 | { 0x011a, KEY_POWER2 }, | ||
143 | { 0x04b4, KEY_TV }, | ||
144 | { 0x04b3, KEY_RED }, | ||
145 | { 0x04b2, KEY_GREEN }, | ||
146 | { 0x04b1, KEY_YELLOW }, | ||
147 | { 0x04b0, KEY_BLUE }, | ||
148 | { 0x003d, KEY_TEXT }, | ||
149 | { 0x0113, KEY_SLEEP }, | ||
150 | { 0x0010, KEY_MUTE }, | ||
151 | { 0x0105, KEY_ESC }, | ||
152 | { 0x0009, KEY_SCREEN }, | ||
153 | { 0x010f, KEY_MENU }, | ||
154 | { 0x003f, KEY_CHANNEL }, | ||
155 | { 0x0013, KEY_REWIND }, | ||
156 | { 0x0012, KEY_PLAY }, | ||
157 | { 0x0011, KEY_FASTFORWARD }, | ||
158 | { 0x0005, KEY_PREVIOUS }, | ||
159 | { 0x0029, KEY_STOP }, | ||
160 | { 0x002b, KEY_NEXT }, | ||
161 | { 0x0041, KEY_EPG }, | ||
162 | { 0x0019, KEY_VIDEO }, | ||
163 | { 0x0016, KEY_AUDIO }, | ||
164 | { 0x0037, KEY_DOT }, | ||
165 | { 0x002a, KEY_AGAIN }, | ||
166 | { 0x002c, KEY_CAMERA }, | ||
167 | { 0x003c, KEY_NEW }, | ||
168 | { 0x0115, KEY_RECORD }, | ||
169 | { 0x010b, KEY_TIME }, | ||
170 | { 0x0043, KEY_VOLUMEUP }, | ||
171 | { 0x0042, KEY_VOLUMEDOWN }, | ||
172 | { 0x004b, KEY_CHANNELUP }, | ||
173 | { 0x004e, KEY_CHANNELDOWN }, | ||
174 | }; | ||
175 | |||
176 | static u8 af9015_ir_table_leadtek[] = { | ||
177 | 0x03, 0xfc, 0x00, 0xff, 0x1a, 0x01, 0x00, /* KEY_POWER2 */ | ||
178 | 0x03, 0xfc, 0x56, 0xa9, 0xb4, 0x04, 0x00, /* KEY_TV */ | ||
179 | 0x03, 0xfc, 0x4b, 0xb4, 0xb3, 0x04, 0x00, /* KEY_RED */ | ||
180 | 0x03, 0xfc, 0x4c, 0xb3, 0xb2, 0x04, 0x00, /* KEY_GREEN */ | ||
181 | 0x03, 0xfc, 0x4d, 0xb2, 0xb1, 0x04, 0x00, /* KEY_YELLOW */ | ||
182 | 0x03, 0xfc, 0x4e, 0xb1, 0xb0, 0x04, 0x00, /* KEY_BLUE */ | ||
183 | 0x03, 0xfc, 0x1f, 0xe0, 0x3d, 0x00, 0x00, /* KEY_TEXT */ | ||
184 | 0x03, 0xfc, 0x40, 0xbf, 0x13, 0x01, 0x00, /* KEY_SLEEP */ | ||
185 | 0x03, 0xfc, 0x14, 0xeb, 0x10, 0x00, 0x00, /* KEY_MUTE */ | ||
186 | 0x03, 0xfc, 0x49, 0xb6, 0x05, 0x01, 0x00, /* KEY_ESC */ | ||
187 | 0x03, 0xfc, 0x50, 0xaf, 0x29, 0x00, 0x00, /* KEY_STOP (1)*/ | ||
188 | 0x03, 0xfc, 0x0c, 0xf3, 0x52, 0x00, 0x00, /* KEY_UP */ | ||
189 | 0x03, 0xfc, 0x03, 0xfc, 0x09, 0x00, 0x00, /* KEY_SCREEN */ | ||
190 | 0x03, 0xfc, 0x08, 0xf7, 0x50, 0x00, 0x00, /* KEY_LEFT */ | ||
191 | 0x03, 0xfc, 0x13, 0xec, 0x28, 0x00, 0x00, /* KEY_OK (1) */ | ||
192 | 0x03, 0xfc, 0x04, 0xfb, 0x4f, 0x00, 0x00, /* KEY_RIGHT */ | ||
193 | 0x03, 0xfc, 0x4f, 0xb0, 0x0f, 0x01, 0x00, /* KEY_MENU */ | ||
194 | 0x03, 0xfc, 0x10, 0xef, 0x51, 0x00, 0x00, /* KEY_DOWN */ | ||
195 | 0x03, 0xfc, 0x51, 0xae, 0x3f, 0x00, 0x00, /* KEY_CHANNEL */ | ||
196 | 0x03, 0xfc, 0x42, 0xbd, 0x13, 0x00, 0x00, /* KEY_REWIND */ | ||
197 | 0x03, 0xfc, 0x43, 0xbc, 0x12, 0x00, 0x00, /* KEY_PLAY */ | ||
198 | 0x03, 0xfc, 0x44, 0xbb, 0x11, 0x00, 0x00, /* KEY_FASTFORWARD */ | ||
199 | 0x03, 0xfc, 0x52, 0xad, 0x19, 0x00, 0x00, /* KEY_VIDEO (1) */ | ||
200 | 0x03, 0xfc, 0x54, 0xab, 0x05, 0x00, 0x00, /* KEY_PREVIOUS */ | ||
201 | 0x03, 0xfc, 0x46, 0xb9, 0x29, 0x00, 0x00, /* KEY_STOP (2) */ | ||
202 | 0x03, 0xfc, 0x55, 0xaa, 0x2b, 0x00, 0x00, /* KEY_NEXT */ | ||
203 | 0x03, 0xfc, 0x53, 0xac, 0x41, 0x00, 0x00, /* KEY_EPG */ | ||
204 | 0x03, 0xfc, 0x05, 0xfa, 0x1e, 0x00, 0x00, /* KEY_1 */ | ||
205 | 0x03, 0xfc, 0x06, 0xf9, 0x1f, 0x00, 0x00, /* KEY_2 */ | ||
206 | 0x03, 0xfc, 0x07, 0xf8, 0x20, 0x00, 0x00, /* KEY_3 */ | ||
207 | 0x03, 0xfc, 0x1e, 0xe1, 0x19, 0x00, 0x00, /* KEY_VIDEO (2) */ | ||
208 | 0x03, 0xfc, 0x09, 0xf6, 0x21, 0x00, 0x00, /* KEY_4 */ | ||
209 | 0x03, 0xfc, 0x0a, 0xf5, 0x22, 0x00, 0x00, /* KEY_5 */ | ||
210 | 0x03, 0xfc, 0x0b, 0xf4, 0x23, 0x00, 0x00, /* KEY_6 */ | ||
211 | 0x03, 0xfc, 0x1b, 0xe4, 0x16, 0x00, 0x00, /* KEY_AUDIO */ | ||
212 | 0x03, 0xfc, 0x0d, 0xf2, 0x24, 0x00, 0x00, /* KEY_7 */ | ||
213 | 0x03, 0xfc, 0x0e, 0xf1, 0x25, 0x00, 0x00, /* KEY_8 */ | ||
214 | 0x03, 0xfc, 0x0f, 0xf0, 0x26, 0x00, 0x00, /* KEY_9 */ | ||
215 | 0x03, 0xfc, 0x16, 0xe9, 0x28, 0x00, 0x00, /* KEY_OK (2) */ | ||
216 | 0x03, 0xfc, 0x41, 0xbe, 0x37, 0x00, 0x00, /* KEY_DOT */ | ||
217 | 0x03, 0xfc, 0x12, 0xed, 0x27, 0x00, 0x00, /* KEY_0 */ | ||
218 | 0x03, 0xfc, 0x11, 0xee, 0x2a, 0x00, 0x00, /* KEY_AGAIN */ | ||
219 | 0x03, 0xfc, 0x48, 0xb7, 0x2c, 0x00, 0x00, /* KEY_CAMERA */ | ||
220 | 0x03, 0xfc, 0x4a, 0xb5, 0x3c, 0x00, 0x00, /* KEY_NEW */ | ||
221 | 0x03, 0xfc, 0x47, 0xb8, 0x15, 0x01, 0x00, /* KEY_RECORD */ | ||
222 | 0x03, 0xfc, 0x45, 0xba, 0x0b, 0x01, 0x00, /* KEY_TIME */ | ||
223 | 0x03, 0xfc, 0x5e, 0xa1, 0x43, 0x00, 0x00, /* KEY_VOLUMEUP */ | ||
224 | 0x03, 0xfc, 0x5a, 0xa5, 0x42, 0x00, 0x00, /* KEY_VOLUMEDOWN */ | ||
225 | 0x03, 0xfc, 0x5b, 0xa4, 0x4b, 0x00, 0x00, /* KEY_CHANNELUP */ | ||
226 | 0x03, 0xfc, 0x5f, 0xa0, 0x4e, 0x00, 0x00, /* KEY_CHANNELDOWN */ | ||
227 | }; | ||
228 | |||
229 | /* TwinHan AzureWave AD-TU700(704J) */ | ||
230 | static struct ir_scancode ir_codes_af9015_table_twinhan[] = { | ||
231 | { 0x053f, KEY_POWER }, | ||
232 | { 0x0019, KEY_FAVORITES }, /* Favorite List */ | ||
233 | { 0x0004, KEY_TEXT }, /* Teletext */ | ||
234 | { 0x000e, KEY_POWER }, | ||
235 | { 0x000e, KEY_INFO }, /* Preview */ | ||
236 | { 0x0008, KEY_EPG }, /* Info/EPG */ | ||
237 | { 0x000f, KEY_LIST }, /* Record List */ | ||
238 | { 0x001e, KEY_1 }, | ||
239 | { 0x001f, KEY_2 }, | ||
240 | { 0x0020, KEY_3 }, | ||
241 | { 0x0021, KEY_4 }, | ||
242 | { 0x0022, KEY_5 }, | ||
243 | { 0x0023, KEY_6 }, | ||
244 | { 0x0024, KEY_7 }, | ||
245 | { 0x0025, KEY_8 }, | ||
246 | { 0x0026, KEY_9 }, | ||
247 | { 0x0027, KEY_0 }, | ||
248 | { 0x0029, KEY_CANCEL }, /* Cancel */ | ||
249 | { 0x004c, KEY_CLEAR }, /* Clear */ | ||
250 | { 0x002a, KEY_BACK }, /* Back */ | ||
251 | { 0x002b, KEY_TAB }, /* Tab */ | ||
252 | { 0x0052, KEY_UP }, /* up arrow */ | ||
253 | { 0x0051, KEY_DOWN }, /* down arrow */ | ||
254 | { 0x004f, KEY_RIGHT }, /* right arrow */ | ||
255 | { 0x0050, KEY_LEFT }, /* left arrow */ | ||
256 | { 0x0028, KEY_ENTER }, /* Enter / ok */ | ||
257 | { 0x0252, KEY_VOLUMEUP }, | ||
258 | { 0x0251, KEY_VOLUMEDOWN }, | ||
259 | { 0x004e, KEY_CHANNELDOWN }, | ||
260 | { 0x004b, KEY_CHANNELUP }, | ||
261 | { 0x004a, KEY_RECORD }, | ||
262 | { 0x0111, KEY_PLAY }, | ||
263 | { 0x0017, KEY_PAUSE }, | ||
264 | { 0x000c, KEY_REWIND }, /* FR << */ | ||
265 | { 0x0011, KEY_FASTFORWARD }, /* FF >> */ | ||
266 | { 0x0115, KEY_PREVIOUS }, /* Replay */ | ||
267 | { 0x010e, KEY_NEXT }, /* Skip */ | ||
268 | { 0x0013, KEY_CAMERA }, /* Capture */ | ||
269 | { 0x010f, KEY_LANGUAGE }, /* SAP */ | ||
270 | { 0x0113, KEY_TV2 }, /* PIP */ | ||
271 | { 0x001d, KEY_ZOOM }, /* Full Screen */ | ||
272 | { 0x0117, KEY_SUBTITLE }, /* Subtitle / CC */ | ||
273 | { 0x0010, KEY_MUTE }, | ||
274 | { 0x0119, KEY_AUDIO }, /* L/R */ /* TODO better event */ | ||
275 | { 0x0116, KEY_SLEEP }, /* Hibernate */ | ||
276 | { 0x0116, KEY_SWITCHVIDEOMODE }, | ||
277 | /* A/V */ /* TODO does not work */ | ||
278 | { 0x0006, KEY_AGAIN }, /* Recall */ | ||
279 | { 0x0116, KEY_KPPLUS }, /* Zoom+ */ /* TODO does not work */ | ||
280 | { 0x0116, KEY_KPMINUS }, /* Zoom- */ /* TODO does not work */ | ||
281 | { 0x0215, KEY_RED }, | ||
282 | { 0x020a, KEY_GREEN }, | ||
283 | { 0x021c, KEY_YELLOW }, | ||
284 | { 0x0205, KEY_BLUE }, | ||
285 | }; | ||
286 | |||
287 | static u8 af9015_ir_table_twinhan[] = { | ||
288 | 0x00, 0xff, 0x16, 0xe9, 0x3f, 0x05, 0x00, | ||
289 | 0x00, 0xff, 0x07, 0xf8, 0x16, 0x01, 0x00, | ||
290 | 0x00, 0xff, 0x14, 0xeb, 0x11, 0x01, 0x00, | ||
291 | 0x00, 0xff, 0x1a, 0xe5, 0x4d, 0x00, 0x00, | ||
292 | 0x00, 0xff, 0x4c, 0xb3, 0x17, 0x00, 0x00, | ||
293 | 0x00, 0xff, 0x12, 0xed, 0x11, 0x00, 0x00, | ||
294 | 0x00, 0xff, 0x40, 0xbf, 0x0c, 0x00, 0x00, | ||
295 | 0x00, 0xff, 0x11, 0xee, 0x4a, 0x00, 0x00, | ||
296 | 0x00, 0xff, 0x54, 0xab, 0x13, 0x00, 0x00, | ||
297 | 0x00, 0xff, 0x41, 0xbe, 0x15, 0x01, 0x00, | ||
298 | 0x00, 0xff, 0x42, 0xbd, 0x0e, 0x01, 0x00, | ||
299 | 0x00, 0xff, 0x43, 0xbc, 0x17, 0x01, 0x00, | ||
300 | 0x00, 0xff, 0x50, 0xaf, 0x0f, 0x01, 0x00, | ||
301 | 0x00, 0xff, 0x4d, 0xb2, 0x1d, 0x00, 0x00, | ||
302 | 0x00, 0xff, 0x47, 0xb8, 0x13, 0x01, 0x00, | ||
303 | 0x00, 0xff, 0x05, 0xfa, 0x4b, 0x00, 0x00, | ||
304 | 0x00, 0xff, 0x02, 0xfd, 0x4e, 0x00, 0x00, | ||
305 | 0x00, 0xff, 0x0e, 0xf1, 0x06, 0x00, 0x00, | ||
306 | 0x00, 0xff, 0x1e, 0xe1, 0x52, 0x02, 0x00, | ||
307 | 0x00, 0xff, 0x0a, 0xf5, 0x51, 0x02, 0x00, | ||
308 | 0x00, 0xff, 0x10, 0xef, 0x10, 0x00, 0x00, | ||
309 | 0x00, 0xff, 0x49, 0xb6, 0x19, 0x01, 0x00, | ||
310 | 0x00, 0xff, 0x15, 0xea, 0x27, 0x00, 0x00, | ||
311 | 0x00, 0xff, 0x03, 0xfc, 0x1e, 0x00, 0x00, | ||
312 | 0x00, 0xff, 0x01, 0xfe, 0x1f, 0x00, 0x00, | ||
313 | 0x00, 0xff, 0x06, 0xf9, 0x20, 0x00, 0x00, | ||
314 | 0x00, 0xff, 0x09, 0xf6, 0x21, 0x00, 0x00, | ||
315 | 0x00, 0xff, 0x1d, 0xe2, 0x22, 0x00, 0x00, | ||
316 | 0x00, 0xff, 0x1f, 0xe0, 0x23, 0x00, 0x00, | ||
317 | 0x00, 0xff, 0x0d, 0xf2, 0x24, 0x00, 0x00, | ||
318 | 0x00, 0xff, 0x19, 0xe6, 0x25, 0x00, 0x00, | ||
319 | 0x00, 0xff, 0x1b, 0xe4, 0x26, 0x00, 0x00, | ||
320 | 0x00, 0xff, 0x00, 0xff, 0x2b, 0x00, 0x00, | ||
321 | 0x00, 0xff, 0x4a, 0xb5, 0x4c, 0x00, 0x00, | ||
322 | 0x00, 0xff, 0x4b, 0xb4, 0x52, 0x00, 0x00, | ||
323 | 0x00, 0xff, 0x51, 0xae, 0x51, 0x00, 0x00, | ||
324 | 0x00, 0xff, 0x52, 0xad, 0x4f, 0x00, 0x00, | ||
325 | 0x00, 0xff, 0x4e, 0xb1, 0x50, 0x00, 0x00, | ||
326 | 0x00, 0xff, 0x0c, 0xf3, 0x29, 0x00, 0x00, | ||
327 | 0x00, 0xff, 0x4f, 0xb0, 0x28, 0x00, 0x00, | ||
328 | 0x00, 0xff, 0x13, 0xec, 0x2a, 0x00, 0x00, | ||
329 | 0x00, 0xff, 0x17, 0xe8, 0x19, 0x00, 0x00, | ||
330 | 0x00, 0xff, 0x04, 0xfb, 0x0f, 0x00, 0x00, | ||
331 | 0x00, 0xff, 0x48, 0xb7, 0x0e, 0x00, 0x00, | ||
332 | 0x00, 0xff, 0x0f, 0xf0, 0x04, 0x00, 0x00, | ||
333 | 0x00, 0xff, 0x1c, 0xe3, 0x08, 0x00, 0x00, | ||
334 | 0x00, 0xff, 0x18, 0xe7, 0x15, 0x02, 0x00, | ||
335 | 0x00, 0xff, 0x53, 0xac, 0x0a, 0x02, 0x00, | ||
336 | 0x00, 0xff, 0x5e, 0xa1, 0x1c, 0x02, 0x00, | ||
337 | 0x00, 0xff, 0x5f, 0xa0, 0x05, 0x02, 0x00, | ||
338 | }; | ||
339 | |||
340 | /* A-Link DTU(m) */ | ||
341 | static struct ir_scancode ir_codes_af9015_table_a_link[] = { | ||
342 | { 0x001e, KEY_1 }, | ||
343 | { 0x001f, KEY_2 }, | ||
344 | { 0x0020, KEY_3 }, | ||
345 | { 0x0021, KEY_4 }, | ||
346 | { 0x0022, KEY_5 }, | ||
347 | { 0x0023, KEY_6 }, | ||
348 | { 0x0024, KEY_7 }, | ||
349 | { 0x0025, KEY_8 }, | ||
350 | { 0x0026, KEY_9 }, | ||
351 | { 0x0027, KEY_0 }, | ||
352 | { 0x002e, KEY_CHANNELUP }, | ||
353 | { 0x002d, KEY_CHANNELDOWN }, | ||
354 | { 0x0428, KEY_ZOOM }, | ||
355 | { 0x0041, KEY_MUTE }, | ||
356 | { 0x0042, KEY_VOLUMEDOWN }, | ||
357 | { 0x0043, KEY_VOLUMEUP }, | ||
358 | { 0x0044, KEY_GOTO }, /* jump */ | ||
359 | { 0x0545, KEY_POWER }, | ||
360 | }; | ||
361 | |||
362 | static u8 af9015_ir_table_a_link[] = { | ||
363 | 0x08, 0xf7, 0x12, 0xed, 0x45, 0x05, 0x00, /* power */ | ||
364 | 0x08, 0xf7, 0x1a, 0xe5, 0x41, 0x00, 0x00, /* mute */ | ||
365 | 0x08, 0xf7, 0x01, 0xfe, 0x1e, 0x00, 0x00, /* 1 */ | ||
366 | 0x08, 0xf7, 0x1c, 0xe3, 0x21, 0x00, 0x00, /* 4 */ | ||
367 | 0x08, 0xf7, 0x03, 0xfc, 0x24, 0x00, 0x00, /* 7 */ | ||
368 | 0x08, 0xf7, 0x05, 0xfa, 0x28, 0x04, 0x00, /* zoom */ | ||
369 | 0x08, 0xf7, 0x00, 0xff, 0x43, 0x00, 0x00, /* volume up */ | ||
370 | 0x08, 0xf7, 0x16, 0xe9, 0x42, 0x00, 0x00, /* volume down */ | ||
371 | 0x08, 0xf7, 0x0f, 0xf0, 0x1f, 0x00, 0x00, /* 2 */ | ||
372 | 0x08, 0xf7, 0x0d, 0xf2, 0x22, 0x00, 0x00, /* 5 */ | ||
373 | 0x08, 0xf7, 0x1b, 0xe4, 0x25, 0x00, 0x00, /* 8 */ | ||
374 | 0x08, 0xf7, 0x06, 0xf9, 0x27, 0x00, 0x00, /* 0 */ | ||
375 | 0x08, 0xf7, 0x14, 0xeb, 0x2e, 0x00, 0x00, /* channel up */ | ||
376 | 0x08, 0xf7, 0x1d, 0xe2, 0x2d, 0x00, 0x00, /* channel down */ | ||
377 | 0x08, 0xf7, 0x02, 0xfd, 0x20, 0x00, 0x00, /* 3 */ | ||
378 | 0x08, 0xf7, 0x18, 0xe7, 0x23, 0x00, 0x00, /* 6 */ | ||
379 | 0x08, 0xf7, 0x04, 0xfb, 0x26, 0x00, 0x00, /* 9 */ | ||
380 | 0x08, 0xf7, 0x07, 0xf8, 0x44, 0x00, 0x00, /* jump */ | ||
381 | }; | ||
382 | |||
383 | /* MSI DIGIVOX mini II V3.0 */ | ||
384 | static struct ir_scancode ir_codes_af9015_table_msi[] = { | ||
385 | { 0x001e, KEY_1 }, | ||
386 | { 0x001f, KEY_2 }, | ||
387 | { 0x0020, KEY_3 }, | ||
388 | { 0x0021, KEY_4 }, | ||
389 | { 0x0022, KEY_5 }, | ||
390 | { 0x0023, KEY_6 }, | ||
391 | { 0x0024, KEY_7 }, | ||
392 | { 0x0025, KEY_8 }, | ||
393 | { 0x0026, KEY_9 }, | ||
394 | { 0x0027, KEY_0 }, | ||
395 | { 0x030f, KEY_CHANNELUP }, | ||
396 | { 0x030e, KEY_CHANNELDOWN }, | ||
397 | { 0x0042, KEY_VOLUMEDOWN }, | ||
398 | { 0x0043, KEY_VOLUMEUP }, | ||
399 | { 0x0545, KEY_POWER }, | ||
400 | { 0x0052, KEY_UP }, /* up */ | ||
401 | { 0x0051, KEY_DOWN }, /* down */ | ||
402 | { 0x0028, KEY_ENTER }, | ||
403 | }; | ||
404 | |||
405 | static u8 af9015_ir_table_msi[] = { | ||
406 | 0x03, 0xfc, 0x17, 0xe8, 0x45, 0x05, 0x00, /* power */ | ||
407 | 0x03, 0xfc, 0x0d, 0xf2, 0x51, 0x00, 0x00, /* down */ | ||
408 | 0x03, 0xfc, 0x03, 0xfc, 0x52, 0x00, 0x00, /* up */ | ||
409 | 0x03, 0xfc, 0x1a, 0xe5, 0x1e, 0x00, 0x00, /* 1 */ | ||
410 | 0x03, 0xfc, 0x02, 0xfd, 0x1f, 0x00, 0x00, /* 2 */ | ||
411 | 0x03, 0xfc, 0x04, 0xfb, 0x20, 0x00, 0x00, /* 3 */ | ||
412 | 0x03, 0xfc, 0x1c, 0xe3, 0x21, 0x00, 0x00, /* 4 */ | ||
413 | 0x03, 0xfc, 0x08, 0xf7, 0x22, 0x00, 0x00, /* 5 */ | ||
414 | 0x03, 0xfc, 0x1d, 0xe2, 0x23, 0x00, 0x00, /* 6 */ | ||
415 | 0x03, 0xfc, 0x11, 0xee, 0x24, 0x00, 0x00, /* 7 */ | ||
416 | 0x03, 0xfc, 0x0b, 0xf4, 0x25, 0x00, 0x00, /* 8 */ | ||
417 | 0x03, 0xfc, 0x10, 0xef, 0x26, 0x00, 0x00, /* 9 */ | ||
418 | 0x03, 0xfc, 0x09, 0xf6, 0x27, 0x00, 0x00, /* 0 */ | ||
419 | 0x03, 0xfc, 0x14, 0xeb, 0x43, 0x00, 0x00, /* volume up */ | ||
420 | 0x03, 0xfc, 0x1f, 0xe0, 0x42, 0x00, 0x00, /* volume down */ | ||
421 | 0x03, 0xfc, 0x15, 0xea, 0x0f, 0x03, 0x00, /* channel up */ | ||
422 | 0x03, 0xfc, 0x05, 0xfa, 0x0e, 0x03, 0x00, /* channel down */ | ||
423 | 0x03, 0xfc, 0x16, 0xe9, 0x28, 0x00, 0x00, /* enter */ | ||
424 | }; | ||
425 | |||
426 | /* MYGICTV U718 */ | ||
427 | static struct ir_scancode ir_codes_af9015_table_mygictv[] = { | ||
428 | { 0x003d, KEY_SWITCHVIDEOMODE }, | ||
429 | /* TV / AV */ | ||
430 | { 0x0545, KEY_POWER }, | ||
431 | { 0x001e, KEY_1 }, | ||
432 | { 0x001f, KEY_2 }, | ||
433 | { 0x0020, KEY_3 }, | ||
434 | { 0x0021, KEY_4 }, | ||
435 | { 0x0022, KEY_5 }, | ||
436 | { 0x0023, KEY_6 }, | ||
437 | { 0x0024, KEY_7 }, | ||
438 | { 0x0025, KEY_8 }, | ||
439 | { 0x0026, KEY_9 }, | ||
440 | { 0x0027, KEY_0 }, | ||
441 | { 0x0041, KEY_MUTE }, | ||
442 | { 0x002a, KEY_ESC }, /* Esc */ | ||
443 | { 0x002e, KEY_CHANNELUP }, | ||
444 | { 0x002d, KEY_CHANNELDOWN }, | ||
445 | { 0x0042, KEY_VOLUMEDOWN }, | ||
446 | { 0x0043, KEY_VOLUMEUP }, | ||
447 | { 0x0052, KEY_UP }, /* up arrow */ | ||
448 | { 0x0051, KEY_DOWN }, /* down arrow */ | ||
449 | { 0x004f, KEY_RIGHT }, /* right arrow */ | ||
450 | { 0x0050, KEY_LEFT }, /* left arrow */ | ||
451 | { 0x0028, KEY_ENTER }, /* ok */ | ||
452 | { 0x0115, KEY_RECORD }, | ||
453 | { 0x0313, KEY_PLAY }, | ||
454 | { 0x0113, KEY_PAUSE }, | ||
455 | { 0x0116, KEY_STOP }, | ||
456 | { 0x0307, KEY_REWIND }, /* FR << */ | ||
457 | { 0x0309, KEY_FASTFORWARD }, /* FF >> */ | ||
458 | { 0x003b, KEY_TIME }, /* TimeShift */ | ||
459 | { 0x003e, KEY_CAMERA }, /* Snapshot */ | ||
460 | { 0x0316, KEY_CYCLEWINDOWS }, /* yellow, min / max */ | ||
461 | { 0x0000, KEY_ZOOM }, /* 'select' (?) */ | ||
462 | { 0x0316, KEY_SHUFFLE }, /* Shuffle */ | ||
463 | { 0x0345, KEY_POWER }, | ||
464 | }; | ||
465 | |||
466 | static u8 af9015_ir_table_mygictv[] = { | ||
467 | 0x02, 0xbd, 0x0c, 0xf3, 0x3d, 0x00, 0x00, /* TV / AV */ | ||
468 | 0x02, 0xbd, 0x14, 0xeb, 0x45, 0x05, 0x00, /* power */ | ||
469 | 0x02, 0xbd, 0x00, 0xff, 0x1e, 0x00, 0x00, /* 1 */ | ||
470 | 0x02, 0xbd, 0x01, 0xfe, 0x1f, 0x00, 0x00, /* 2 */ | ||
471 | 0x02, 0xbd, 0x02, 0xfd, 0x20, 0x00, 0x00, /* 3 */ | ||
472 | 0x02, 0xbd, 0x03, 0xfc, 0x21, 0x00, 0x00, /* 4 */ | ||
473 | 0x02, 0xbd, 0x04, 0xfb, 0x22, 0x00, 0x00, /* 5 */ | ||
474 | 0x02, 0xbd, 0x05, 0xfa, 0x23, 0x00, 0x00, /* 6 */ | ||
475 | 0x02, 0xbd, 0x06, 0xf9, 0x24, 0x00, 0x00, /* 7 */ | ||
476 | 0x02, 0xbd, 0x07, 0xf8, 0x25, 0x00, 0x00, /* 8 */ | ||
477 | 0x02, 0xbd, 0x08, 0xf7, 0x26, 0x00, 0x00, /* 9 */ | ||
478 | 0x02, 0xbd, 0x09, 0xf6, 0x27, 0x00, 0x00, /* 0 */ | ||
479 | 0x02, 0xbd, 0x0a, 0xf5, 0x41, 0x00, 0x00, /* mute */ | ||
480 | 0x02, 0xbd, 0x1c, 0xe3, 0x2a, 0x00, 0x00, /* esc */ | ||
481 | 0x02, 0xbd, 0x1f, 0xe0, 0x43, 0x00, 0x00, /* volume up */ | ||
482 | 0x02, 0xbd, 0x12, 0xed, 0x52, 0x00, 0x00, /* up arrow */ | ||
483 | 0x02, 0xbd, 0x11, 0xee, 0x50, 0x00, 0x00, /* left arrow */ | ||
484 | 0x02, 0xbd, 0x15, 0xea, 0x28, 0x00, 0x00, /* ok */ | ||
485 | 0x02, 0xbd, 0x10, 0xef, 0x4f, 0x00, 0x00, /* right arrow */ | ||
486 | 0x02, 0xbd, 0x13, 0xec, 0x51, 0x00, 0x00, /* down arrow */ | ||
487 | 0x02, 0xbd, 0x0e, 0xf1, 0x42, 0x00, 0x00, /* volume down */ | ||
488 | 0x02, 0xbd, 0x19, 0xe6, 0x15, 0x01, 0x00, /* record */ | ||
489 | 0x02, 0xbd, 0x1e, 0xe1, 0x13, 0x03, 0x00, /* play */ | ||
490 | 0x02, 0xbd, 0x16, 0xe9, 0x16, 0x01, 0x00, /* stop */ | ||
491 | 0x02, 0xbd, 0x0b, 0xf4, 0x28, 0x04, 0x00, /* yellow, min / max */ | ||
492 | 0x02, 0xbd, 0x0f, 0xf0, 0x3b, 0x00, 0x00, /* time shift */ | ||
493 | 0x02, 0xbd, 0x18, 0xe7, 0x2e, 0x00, 0x00, /* channel up */ | ||
494 | 0x02, 0xbd, 0x1a, 0xe5, 0x2d, 0x00, 0x00, /* channel down */ | ||
495 | 0x02, 0xbd, 0x17, 0xe8, 0x3e, 0x00, 0x00, /* snapshot */ | ||
496 | 0x02, 0xbd, 0x40, 0xbf, 0x13, 0x01, 0x00, /* pause */ | ||
497 | 0x02, 0xbd, 0x41, 0xbe, 0x09, 0x03, 0x00, /* FF >> */ | ||
498 | 0x02, 0xbd, 0x42, 0xbd, 0x07, 0x03, 0x00, /* FR << */ | ||
499 | 0x02, 0xbd, 0x43, 0xbc, 0x00, 0x00, 0x00, /* 'select' (?) */ | ||
500 | 0x02, 0xbd, 0x44, 0xbb, 0x16, 0x03, 0x00, /* shuffle */ | ||
501 | 0x02, 0xbd, 0x45, 0xba, 0x45, 0x03, 0x00, /* power */ | ||
502 | }; | ||
503 | |||
504 | /* KWorld PlusTV Dual DVB-T Stick (DVB-T 399U) */ | ||
505 | static u8 af9015_ir_table_kworld[] = { | ||
506 | 0x86, 0x6b, 0x0c, 0xf3, 0x2e, 0x07, 0x00, | ||
507 | 0x86, 0x6b, 0x16, 0xe9, 0x2d, 0x07, 0x00, | ||
508 | 0x86, 0x6b, 0x1d, 0xe2, 0x37, 0x07, 0x00, | ||
509 | 0x86, 0x6b, 0x00, 0xff, 0x1e, 0x07, 0x00, | ||
510 | 0x86, 0x6b, 0x01, 0xfe, 0x1f, 0x07, 0x00, | ||
511 | 0x86, 0x6b, 0x02, 0xfd, 0x20, 0x07, 0x00, | ||
512 | 0x86, 0x6b, 0x03, 0xfc, 0x21, 0x07, 0x00, | ||
513 | 0x86, 0x6b, 0x04, 0xfb, 0x22, 0x07, 0x00, | ||
514 | 0x86, 0x6b, 0x05, 0xfa, 0x23, 0x07, 0x00, | ||
515 | 0x86, 0x6b, 0x06, 0xf9, 0x24, 0x07, 0x00, | ||
516 | 0x86, 0x6b, 0x07, 0xf8, 0x25, 0x07, 0x00, | ||
517 | 0x86, 0x6b, 0x08, 0xf7, 0x26, 0x07, 0x00, | ||
518 | 0x86, 0x6b, 0x09, 0xf6, 0x4d, 0x07, 0x00, | ||
519 | 0x86, 0x6b, 0x0a, 0xf5, 0x4e, 0x07, 0x00, | ||
520 | 0x86, 0x6b, 0x14, 0xeb, 0x4f, 0x07, 0x00, | ||
521 | 0x86, 0x6b, 0x1e, 0xe1, 0x50, 0x07, 0x00, | ||
522 | 0x86, 0x6b, 0x17, 0xe8, 0x52, 0x07, 0x00, | ||
523 | 0x86, 0x6b, 0x1f, 0xe0, 0x51, 0x07, 0x00, | ||
524 | 0x86, 0x6b, 0x0e, 0xf1, 0x0b, 0x07, 0x00, | ||
525 | 0x86, 0x6b, 0x20, 0xdf, 0x0c, 0x07, 0x00, | ||
526 | 0x86, 0x6b, 0x42, 0xbd, 0x0d, 0x07, 0x00, | ||
527 | 0x86, 0x6b, 0x0b, 0xf4, 0x0e, 0x07, 0x00, | ||
528 | 0x86, 0x6b, 0x43, 0xbc, 0x0f, 0x07, 0x00, | ||
529 | 0x86, 0x6b, 0x10, 0xef, 0x10, 0x07, 0x00, | ||
530 | 0x86, 0x6b, 0x21, 0xde, 0x11, 0x07, 0x00, | ||
531 | 0x86, 0x6b, 0x13, 0xec, 0x12, 0x07, 0x00, | ||
532 | 0x86, 0x6b, 0x11, 0xee, 0x13, 0x07, 0x00, | ||
533 | 0x86, 0x6b, 0x12, 0xed, 0x14, 0x07, 0x00, | ||
534 | 0x86, 0x6b, 0x19, 0xe6, 0x15, 0x07, 0x00, | ||
535 | 0x86, 0x6b, 0x1a, 0xe5, 0x16, 0x07, 0x00, | ||
536 | 0x86, 0x6b, 0x1b, 0xe4, 0x17, 0x07, 0x00, | ||
537 | 0x86, 0x6b, 0x4b, 0xb4, 0x18, 0x07, 0x00, | ||
538 | 0x86, 0x6b, 0x40, 0xbf, 0x19, 0x07, 0x00, | ||
539 | 0x86, 0x6b, 0x44, 0xbb, 0x1a, 0x07, 0x00, | ||
540 | 0x86, 0x6b, 0x41, 0xbe, 0x1b, 0x07, 0x00, | ||
541 | 0x86, 0x6b, 0x22, 0xdd, 0x1c, 0x07, 0x00, | ||
542 | 0x86, 0x6b, 0x15, 0xea, 0x1d, 0x07, 0x00, | ||
543 | 0x86, 0x6b, 0x0f, 0xf0, 0x3f, 0x07, 0x00, | ||
544 | 0x86, 0x6b, 0x1c, 0xe3, 0x40, 0x07, 0x00, | ||
545 | 0x86, 0x6b, 0x4a, 0xb5, 0x41, 0x07, 0x00, | ||
546 | 0x86, 0x6b, 0x48, 0xb7, 0x42, 0x07, 0x00, | ||
547 | 0x86, 0x6b, 0x49, 0xb6, 0x43, 0x07, 0x00, | ||
548 | 0x86, 0x6b, 0x18, 0xe7, 0x44, 0x07, 0x00, | ||
549 | 0x86, 0x6b, 0x23, 0xdc, 0x45, 0x07, 0x00, | ||
550 | }; | ||
551 | |||
552 | /* AverMedia Volar X */ | ||
553 | static struct ir_scancode ir_codes_af9015_table_avermedia[] = { | ||
554 | { 0x053d, KEY_PROG1 }, /* SOURCE */ | ||
555 | { 0x0512, KEY_POWER }, /* POWER */ | ||
556 | { 0x051e, KEY_1 }, /* 1 */ | ||
557 | { 0x051f, KEY_2 }, /* 2 */ | ||
558 | { 0x0520, KEY_3 }, /* 3 */ | ||
559 | { 0x0521, KEY_4 }, /* 4 */ | ||
560 | { 0x0522, KEY_5 }, /* 5 */ | ||
561 | { 0x0523, KEY_6 }, /* 6 */ | ||
562 | { 0x0524, KEY_7 }, /* 7 */ | ||
563 | { 0x0525, KEY_8 }, /* 8 */ | ||
564 | { 0x0526, KEY_9 }, /* 9 */ | ||
565 | { 0x053f, KEY_LEFT }, /* L / DISPLAY */ | ||
566 | { 0x0527, KEY_0 }, /* 0 */ | ||
567 | { 0x050f, KEY_RIGHT }, /* R / CH RTN */ | ||
568 | { 0x0518, KEY_PROG2 }, /* SNAP SHOT */ | ||
569 | { 0x051c, KEY_PROG3 }, /* 16-CH PREV */ | ||
570 | { 0x052d, KEY_VOLUMEDOWN }, /* VOL DOWN */ | ||
571 | { 0x053e, KEY_ZOOM }, /* FULL SCREEN */ | ||
572 | { 0x052e, KEY_VOLUMEUP }, /* VOL UP */ | ||
573 | { 0x0510, KEY_MUTE }, /* MUTE */ | ||
574 | { 0x0504, KEY_AUDIO }, /* AUDIO */ | ||
575 | { 0x0515, KEY_RECORD }, /* RECORD */ | ||
576 | { 0x0511, KEY_PLAY }, /* PLAY */ | ||
577 | { 0x0516, KEY_STOP }, /* STOP */ | ||
578 | { 0x050c, KEY_PLAYPAUSE }, /* TIMESHIFT / PAUSE */ | ||
579 | { 0x0505, KEY_BACK }, /* << / RED */ | ||
580 | { 0x0509, KEY_FORWARD }, /* >> / YELLOW */ | ||
581 | { 0x0517, KEY_TEXT }, /* TELETEXT */ | ||
582 | { 0x050a, KEY_EPG }, /* EPG */ | ||
583 | { 0x0513, KEY_MENU }, /* MENU */ | ||
584 | |||
585 | { 0x050e, KEY_CHANNELUP }, /* CH UP */ | ||
586 | { 0x050d, KEY_CHANNELDOWN }, /* CH DOWN */ | ||
587 | { 0x0519, KEY_FIRST }, /* |<< / GREEN */ | ||
588 | { 0x0508, KEY_LAST }, /* >>| / BLUE */ | ||
589 | }; | ||
590 | |||
591 | static u8 af9015_ir_table_avermedia[] = { | ||
592 | 0x02, 0xfd, 0x00, 0xff, 0x12, 0x05, 0x00, | ||
593 | 0x02, 0xfd, 0x01, 0xfe, 0x3d, 0x05, 0x00, | ||
594 | 0x02, 0xfd, 0x03, 0xfc, 0x17, 0x05, 0x00, | ||
595 | 0x02, 0xfd, 0x04, 0xfb, 0x0a, 0x05, 0x00, | ||
596 | 0x02, 0xfd, 0x05, 0xfa, 0x1e, 0x05, 0x00, | ||
597 | 0x02, 0xfd, 0x06, 0xf9, 0x1f, 0x05, 0x00, | ||
598 | 0x02, 0xfd, 0x07, 0xf8, 0x20, 0x05, 0x00, | ||
599 | 0x02, 0xfd, 0x09, 0xf6, 0x21, 0x05, 0x00, | ||
600 | 0x02, 0xfd, 0x0a, 0xf5, 0x22, 0x05, 0x00, | ||
601 | 0x02, 0xfd, 0x0b, 0xf4, 0x23, 0x05, 0x00, | ||
602 | 0x02, 0xfd, 0x0d, 0xf2, 0x24, 0x05, 0x00, | ||
603 | 0x02, 0xfd, 0x0e, 0xf1, 0x25, 0x05, 0x00, | ||
604 | 0x02, 0xfd, 0x0f, 0xf0, 0x26, 0x05, 0x00, | ||
605 | 0x02, 0xfd, 0x11, 0xee, 0x27, 0x05, 0x00, | ||
606 | 0x02, 0xfd, 0x08, 0xf7, 0x04, 0x05, 0x00, | ||
607 | 0x02, 0xfd, 0x0c, 0xf3, 0x3e, 0x05, 0x00, | ||
608 | 0x02, 0xfd, 0x10, 0xef, 0x1c, 0x05, 0x00, | ||
609 | 0x02, 0xfd, 0x12, 0xed, 0x3f, 0x05, 0x00, | ||
610 | 0x02, 0xfd, 0x13, 0xec, 0x0f, 0x05, 0x00, | ||
611 | 0x02, 0xfd, 0x14, 0xeb, 0x10, 0x05, 0x00, | ||
612 | 0x02, 0xfd, 0x15, 0xea, 0x13, 0x05, 0x00, | ||
613 | 0x02, 0xfd, 0x17, 0xe8, 0x18, 0x05, 0x00, | ||
614 | 0x02, 0xfd, 0x18, 0xe7, 0x11, 0x05, 0x00, | ||
615 | 0x02, 0xfd, 0x19, 0xe6, 0x15, 0x05, 0x00, | ||
616 | 0x02, 0xfd, 0x1a, 0xe5, 0x0c, 0x05, 0x00, | ||
617 | 0x02, 0xfd, 0x1b, 0xe4, 0x16, 0x05, 0x00, | ||
618 | 0x02, 0xfd, 0x1c, 0xe3, 0x09, 0x05, 0x00, | ||
619 | 0x02, 0xfd, 0x1d, 0xe2, 0x05, 0x05, 0x00, | ||
620 | 0x02, 0xfd, 0x1e, 0xe1, 0x2d, 0x05, 0x00, | ||
621 | 0x02, 0xfd, 0x1f, 0xe0, 0x2e, 0x05, 0x00, | ||
622 | 0x03, 0xfc, 0x00, 0xff, 0x08, 0x05, 0x00, | ||
623 | 0x03, 0xfc, 0x01, 0xfe, 0x19, 0x05, 0x00, | ||
624 | 0x03, 0xfc, 0x02, 0xfd, 0x0d, 0x05, 0x00, | ||
625 | 0x03, 0xfc, 0x03, 0xfc, 0x0e, 0x05, 0x00, | ||
626 | }; | ||
627 | |||
628 | static u8 af9015_ir_table_avermedia_ks[] = { | ||
629 | 0x05, 0xfa, 0x01, 0xfe, 0x12, 0x05, 0x00, | ||
630 | 0x05, 0xfa, 0x02, 0xfd, 0x0e, 0x05, 0x00, | ||
631 | 0x05, 0xfa, 0x03, 0xfc, 0x0d, 0x05, 0x00, | ||
632 | 0x05, 0xfa, 0x04, 0xfb, 0x2e, 0x05, 0x00, | ||
633 | 0x05, 0xfa, 0x05, 0xfa, 0x2d, 0x05, 0x00, | ||
634 | 0x05, 0xfa, 0x06, 0xf9, 0x10, 0x05, 0x00, | ||
635 | 0x05, 0xfa, 0x07, 0xf8, 0x0f, 0x05, 0x00, | ||
636 | 0x05, 0xfa, 0x08, 0xf7, 0x3d, 0x05, 0x00, | ||
637 | 0x05, 0xfa, 0x09, 0xf6, 0x1e, 0x05, 0x00, | ||
638 | 0x05, 0xfa, 0x0a, 0xf5, 0x1f, 0x05, 0x00, | ||
639 | 0x05, 0xfa, 0x0b, 0xf4, 0x20, 0x05, 0x00, | ||
640 | 0x05, 0xfa, 0x0c, 0xf3, 0x21, 0x05, 0x00, | ||
641 | 0x05, 0xfa, 0x0d, 0xf2, 0x22, 0x05, 0x00, | ||
642 | 0x05, 0xfa, 0x0e, 0xf1, 0x23, 0x05, 0x00, | ||
643 | 0x05, 0xfa, 0x0f, 0xf0, 0x24, 0x05, 0x00, | ||
644 | 0x05, 0xfa, 0x10, 0xef, 0x25, 0x05, 0x00, | ||
645 | 0x05, 0xfa, 0x11, 0xee, 0x26, 0x05, 0x00, | ||
646 | 0x05, 0xfa, 0x12, 0xed, 0x27, 0x05, 0x00, | ||
647 | 0x05, 0xfa, 0x13, 0xec, 0x04, 0x05, 0x00, | ||
648 | 0x05, 0xfa, 0x15, 0xea, 0x0a, 0x05, 0x00, | ||
649 | 0x05, 0xfa, 0x16, 0xe9, 0x11, 0x05, 0x00, | ||
650 | 0x05, 0xfa, 0x17, 0xe8, 0x15, 0x05, 0x00, | ||
651 | 0x05, 0xfa, 0x18, 0xe7, 0x16, 0x05, 0x00, | ||
652 | 0x05, 0xfa, 0x1c, 0xe3, 0x05, 0x05, 0x00, | ||
653 | 0x05, 0xfa, 0x1d, 0xe2, 0x09, 0x05, 0x00, | ||
654 | 0x05, 0xfa, 0x4d, 0xb2, 0x3f, 0x05, 0x00, | ||
655 | 0x05, 0xfa, 0x56, 0xa9, 0x3e, 0x05, 0x00 | ||
656 | }; | ||
657 | |||
658 | /* Digittrade DVB-T USB Stick */ | ||
659 | static struct ir_scancode ir_codes_af9015_table_digittrade[] = { | ||
660 | { 0x010f, KEY_LAST }, /* RETURN */ | ||
661 | { 0x0517, KEY_TEXT }, /* TELETEXT */ | ||
662 | { 0x0108, KEY_EPG }, /* EPG */ | ||
663 | { 0x0513, KEY_POWER }, /* POWER */ | ||
664 | { 0x0109, KEY_ZOOM }, /* FULLSCREEN */ | ||
665 | { 0x0040, KEY_AUDIO }, /* DUAL SOUND */ | ||
666 | { 0x002c, KEY_PRINT }, /* SNAPSHOT */ | ||
667 | { 0x0516, KEY_SUBTITLE }, /* SUBTITLE */ | ||
668 | { 0x0052, KEY_CHANNELUP }, /* CH Up */ | ||
669 | { 0x0051, KEY_CHANNELDOWN },/* Ch Dn */ | ||
670 | { 0x0057, KEY_VOLUMEUP }, /* Vol Up */ | ||
671 | { 0x0056, KEY_VOLUMEDOWN }, /* Vol Dn */ | ||
672 | { 0x0110, KEY_MUTE }, /* MUTE */ | ||
673 | { 0x0027, KEY_0 }, | ||
674 | { 0x001e, KEY_1 }, | ||
675 | { 0x001f, KEY_2 }, | ||
676 | { 0x0020, KEY_3 }, | ||
677 | { 0x0021, KEY_4 }, | ||
678 | { 0x0022, KEY_5 }, | ||
679 | { 0x0023, KEY_6 }, | ||
680 | { 0x0024, KEY_7 }, | ||
681 | { 0x0025, KEY_8 }, | ||
682 | { 0x0026, KEY_9 }, | ||
683 | { 0x0117, KEY_PLAYPAUSE }, /* TIMESHIFT */ | ||
684 | { 0x0115, KEY_RECORD }, /* RECORD */ | ||
685 | { 0x0313, KEY_PLAY }, /* PLAY */ | ||
686 | { 0x0116, KEY_STOP }, /* STOP */ | ||
687 | { 0x0113, KEY_PAUSE }, /* PAUSE */ | ||
688 | }; | ||
689 | |||
690 | static u8 af9015_ir_table_digittrade[] = { | ||
691 | 0x00, 0xff, 0x06, 0xf9, 0x13, 0x05, 0x00, | ||
692 | 0x00, 0xff, 0x4d, 0xb2, 0x17, 0x01, 0x00, | ||
693 | 0x00, 0xff, 0x1f, 0xe0, 0x2c, 0x00, 0x00, | ||
694 | 0x00, 0xff, 0x0a, 0xf5, 0x15, 0x01, 0x00, | ||
695 | 0x00, 0xff, 0x0e, 0xf1, 0x16, 0x01, 0x00, | ||
696 | 0x00, 0xff, 0x09, 0xf6, 0x09, 0x01, 0x00, | ||
697 | 0x00, 0xff, 0x01, 0xfe, 0x08, 0x01, 0x00, | ||
698 | 0x00, 0xff, 0x05, 0xfa, 0x10, 0x01, 0x00, | ||
699 | 0x00, 0xff, 0x02, 0xfd, 0x56, 0x00, 0x00, | ||
700 | 0x00, 0xff, 0x40, 0xbf, 0x57, 0x00, 0x00, | ||
701 | 0x00, 0xff, 0x19, 0xe6, 0x52, 0x00, 0x00, | ||
702 | 0x00, 0xff, 0x17, 0xe8, 0x51, 0x00, 0x00, | ||
703 | 0x00, 0xff, 0x10, 0xef, 0x0f, 0x01, 0x00, | ||
704 | 0x00, 0xff, 0x54, 0xab, 0x27, 0x00, 0x00, | ||
705 | 0x00, 0xff, 0x1b, 0xe4, 0x1e, 0x00, 0x00, | ||
706 | 0x00, 0xff, 0x11, 0xee, 0x1f, 0x00, 0x00, | ||
707 | 0x00, 0xff, 0x15, 0xea, 0x20, 0x00, 0x00, | ||
708 | 0x00, 0xff, 0x12, 0xed, 0x21, 0x00, 0x00, | ||
709 | 0x00, 0xff, 0x16, 0xe9, 0x22, 0x00, 0x00, | ||
710 | 0x00, 0xff, 0x4c, 0xb3, 0x23, 0x00, 0x00, | ||
711 | 0x00, 0xff, 0x48, 0xb7, 0x24, 0x00, 0x00, | ||
712 | 0x00, 0xff, 0x04, 0xfb, 0x25, 0x00, 0x00, | ||
713 | 0x00, 0xff, 0x00, 0xff, 0x26, 0x00, 0x00, | ||
714 | 0x00, 0xff, 0x1e, 0xe1, 0x13, 0x03, 0x00, | ||
715 | 0x00, 0xff, 0x1a, 0xe5, 0x13, 0x01, 0x00, | ||
716 | 0x00, 0xff, 0x03, 0xfc, 0x17, 0x05, 0x00, | ||
717 | 0x00, 0xff, 0x0d, 0xf2, 0x16, 0x05, 0x00, | ||
718 | 0x00, 0xff, 0x1d, 0xe2, 0x40, 0x00, 0x00, | ||
719 | }; | ||
720 | |||
721 | /* TREKSTOR DVB-T USB Stick */ | ||
722 | static struct ir_scancode ir_codes_af9015_table_trekstor[] = { | ||
723 | { 0x0704, KEY_AGAIN }, /* Home */ | ||
724 | { 0x0705, KEY_MUTE }, /* Mute */ | ||
725 | { 0x0706, KEY_UP }, /* Up */ | ||
726 | { 0x0707, KEY_DOWN }, /* Down */ | ||
727 | { 0x0709, KEY_RIGHT }, /* Right */ | ||
728 | { 0x070a, KEY_ENTER }, /* OK */ | ||
729 | { 0x070b, KEY_FASTFORWARD }, /* Fast forward */ | ||
730 | { 0x070c, KEY_REWIND }, /* Rewind */ | ||
731 | { 0x070d, KEY_PLAY }, /* Play/Pause */ | ||
732 | { 0x070e, KEY_VOLUMEUP }, /* Volume + */ | ||
733 | { 0x070f, KEY_VOLUMEDOWN }, /* Volume - */ | ||
734 | { 0x0710, KEY_RECORD }, /* Record */ | ||
735 | { 0x0711, KEY_STOP }, /* Stop */ | ||
736 | { 0x0712, KEY_ZOOM }, /* TV */ | ||
737 | { 0x0713, KEY_EPG }, /* Info/EPG */ | ||
738 | { 0x0714, KEY_CHANNELDOWN }, /* Channel - */ | ||
739 | { 0x0715, KEY_CHANNELUP }, /* Channel + */ | ||
740 | { 0x071e, KEY_1 }, | ||
741 | { 0x071f, KEY_2 }, | ||
742 | { 0x0720, KEY_3 }, | ||
743 | { 0x0721, KEY_4 }, | ||
744 | { 0x0722, KEY_5 }, | ||
745 | { 0x0723, KEY_6 }, | ||
746 | { 0x0724, KEY_7 }, | ||
747 | { 0x0725, KEY_8 }, | ||
748 | { 0x0726, KEY_9 }, | ||
749 | { 0x0708, KEY_LEFT }, /* LEFT */ | ||
750 | { 0x0727, KEY_0 }, | ||
751 | }; | ||
752 | |||
753 | static u8 af9015_ir_table_trekstor[] = { | ||
754 | 0x00, 0xff, 0x86, 0x79, 0x04, 0x07, 0x00, | ||
755 | 0x00, 0xff, 0x85, 0x7a, 0x05, 0x07, 0x00, | ||
756 | 0x00, 0xff, 0x87, 0x78, 0x06, 0x07, 0x00, | ||
757 | 0x00, 0xff, 0x8c, 0x73, 0x07, 0x07, 0x00, | ||
758 | 0x00, 0xff, 0x89, 0x76, 0x09, 0x07, 0x00, | ||
759 | 0x00, 0xff, 0x88, 0x77, 0x0a, 0x07, 0x00, | ||
760 | 0x00, 0xff, 0x8a, 0x75, 0x0b, 0x07, 0x00, | ||
761 | 0x00, 0xff, 0x9e, 0x61, 0x0c, 0x07, 0x00, | ||
762 | 0x00, 0xff, 0x8d, 0x72, 0x0d, 0x07, 0x00, | ||
763 | 0x00, 0xff, 0x8b, 0x74, 0x0e, 0x07, 0x00, | ||
764 | 0x00, 0xff, 0x9b, 0x64, 0x0f, 0x07, 0x00, | ||
765 | 0x00, 0xff, 0x9d, 0x62, 0x10, 0x07, 0x00, | ||
766 | 0x00, 0xff, 0x8e, 0x71, 0x11, 0x07, 0x00, | ||
767 | 0x00, 0xff, 0x9c, 0x63, 0x12, 0x07, 0x00, | ||
768 | 0x00, 0xff, 0x8f, 0x70, 0x13, 0x07, 0x00, | ||
769 | 0x00, 0xff, 0x93, 0x6c, 0x14, 0x07, 0x00, | ||
770 | 0x00, 0xff, 0x97, 0x68, 0x15, 0x07, 0x00, | ||
771 | 0x00, 0xff, 0x92, 0x6d, 0x1e, 0x07, 0x00, | ||
772 | 0x00, 0xff, 0x96, 0x69, 0x1f, 0x07, 0x00, | ||
773 | 0x00, 0xff, 0x9a, 0x65, 0x20, 0x07, 0x00, | ||
774 | 0x00, 0xff, 0x91, 0x6e, 0x21, 0x07, 0x00, | ||
775 | 0x00, 0xff, 0x95, 0x6a, 0x22, 0x07, 0x00, | ||
776 | 0x00, 0xff, 0x99, 0x66, 0x23, 0x07, 0x00, | ||
777 | 0x00, 0xff, 0x90, 0x6f, 0x24, 0x07, 0x00, | ||
778 | 0x00, 0xff, 0x94, 0x6b, 0x25, 0x07, 0x00, | ||
779 | 0x00, 0xff, 0x98, 0x67, 0x26, 0x07, 0x00, | ||
780 | 0x00, 0xff, 0x9f, 0x60, 0x08, 0x07, 0x00, | ||
781 | 0x00, 0xff, 0x84, 0x7b, 0x27, 0x07, 0x00, | ||
782 | }; | ||
783 | |||
784 | /* MSI DIGIVOX mini III */ | ||
785 | static struct ir_scancode ir_codes_af9015_table_msi_digivox_iii[] = { | ||
786 | { 0x0713, KEY_POWER }, /* [red power button] */ | ||
787 | { 0x073b, KEY_VIDEO }, /* Source */ | ||
788 | { 0x073e, KEY_ZOOM }, /* Zoom */ | ||
789 | { 0x070b, KEY_POWER2 }, /* ShutDown */ | ||
790 | { 0x071e, KEY_1 }, | ||
791 | { 0x071f, KEY_2 }, | ||
792 | { 0x0720, KEY_3 }, | ||
793 | { 0x0721, KEY_4 }, | ||
794 | { 0x0722, KEY_5 }, | ||
795 | { 0x0723, KEY_6 }, | ||
796 | { 0x0724, KEY_7 }, | ||
797 | { 0x0725, KEY_8 }, | ||
798 | { 0x0726, KEY_9 }, | ||
799 | { 0x0727, KEY_0 }, | ||
800 | { 0x0752, KEY_CHANNELUP }, /* CH+ */ | ||
801 | { 0x0751, KEY_CHANNELDOWN }, /* CH- */ | ||
802 | { 0x0750, KEY_VOLUMEUP }, /* Vol+ */ | ||
803 | { 0x074f, KEY_VOLUMEDOWN }, /* Vol- */ | ||
804 | { 0x0705, KEY_ESC }, /* [back up arrow] */ | ||
805 | { 0x0708, KEY_OK }, /* [enter arrow] */ | ||
806 | { 0x073f, KEY_RECORD }, /* Rec */ | ||
807 | { 0x0716, KEY_STOP }, /* Stop */ | ||
808 | { 0x072a, KEY_PLAY }, /* Play */ | ||
809 | { 0x073c, KEY_MUTE }, /* Mute */ | ||
810 | { 0x0718, KEY_UP }, | ||
811 | { 0x0707, KEY_DOWN }, | ||
812 | { 0x070f, KEY_LEFT }, | ||
813 | { 0x0715, KEY_RIGHT }, | ||
814 | { 0x0736, KEY_RED }, | ||
815 | { 0x0737, KEY_GREEN }, | ||
816 | { 0x072d, KEY_YELLOW }, | ||
817 | { 0x072e, KEY_BLUE }, | ||
818 | }; | ||
819 | |||
820 | static u8 af9015_ir_table_msi_digivox_iii[] = { | ||
821 | 0x61, 0xd6, 0x43, 0xbc, 0x13, 0x07, 0x00, /* KEY_POWER */ | ||
822 | 0x61, 0xd6, 0x01, 0xfe, 0x3b, 0x07, 0x00, /* KEY_VIDEO */ | ||
823 | 0x61, 0xd6, 0x0b, 0xf4, 0x3e, 0x07, 0x00, /* KEY_ZOOM */ | ||
824 | 0x61, 0xd6, 0x03, 0xfc, 0x0b, 0x07, 0x00, /* KEY_POWER2 */ | ||
825 | 0x61, 0xd6, 0x04, 0xfb, 0x1e, 0x07, 0x00, /* KEY_1 */ | ||
826 | 0x61, 0xd6, 0x08, 0xf7, 0x1f, 0x07, 0x00, /* KEY_2 */ | ||
827 | 0x61, 0xd6, 0x02, 0xfd, 0x20, 0x07, 0x00, /* KEY_3 */ | ||
828 | 0x61, 0xd6, 0x0f, 0xf0, 0x21, 0x07, 0x00, /* KEY_4 */ | ||
829 | 0x61, 0xd6, 0x05, 0xfa, 0x22, 0x07, 0x00, /* KEY_5 */ | ||
830 | 0x61, 0xd6, 0x06, 0xf9, 0x23, 0x07, 0x00, /* KEY_6 */ | ||
831 | 0x61, 0xd6, 0x0c, 0xf3, 0x24, 0x07, 0x00, /* KEY_7 */ | ||
832 | 0x61, 0xd6, 0x0d, 0xf2, 0x25, 0x07, 0x00, /* KEY_8 */ | ||
833 | 0x61, 0xd6, 0x0a, 0xf5, 0x26, 0x07, 0x00, /* KEY_9 */ | ||
834 | 0x61, 0xd6, 0x11, 0xee, 0x27, 0x07, 0x00, /* KEY_0 */ | ||
835 | 0x61, 0xd6, 0x09, 0xf6, 0x52, 0x07, 0x00, /* KEY_CHANNELUP */ | ||
836 | 0x61, 0xd6, 0x07, 0xf8, 0x51, 0x07, 0x00, /* KEY_CHANNELDOWN */ | ||
837 | 0x61, 0xd6, 0x0e, 0xf1, 0x50, 0x07, 0x00, /* KEY_VOLUMEUP */ | ||
838 | 0x61, 0xd6, 0x13, 0xec, 0x4f, 0x07, 0x00, /* KEY_VOLUMEDOWN */ | ||
839 | 0x61, 0xd6, 0x10, 0xef, 0x05, 0x07, 0x00, /* KEY_ESC */ | ||
840 | 0x61, 0xd6, 0x12, 0xed, 0x08, 0x07, 0x00, /* KEY_OK */ | ||
841 | 0x61, 0xd6, 0x14, 0xeb, 0x3f, 0x07, 0x00, /* KEY_RECORD */ | ||
842 | 0x61, 0xd6, 0x15, 0xea, 0x16, 0x07, 0x00, /* KEY_STOP */ | ||
843 | 0x61, 0xd6, 0x16, 0xe9, 0x2a, 0x07, 0x00, /* KEY_PLAY */ | ||
844 | 0x61, 0xd6, 0x17, 0xe8, 0x3c, 0x07, 0x00, /* KEY_MUTE */ | ||
845 | 0x61, 0xd6, 0x18, 0xe7, 0x18, 0x07, 0x00, /* KEY_UP */ | ||
846 | 0x61, 0xd6, 0x19, 0xe6, 0x07, 0x07, 0x00, /* KEY_DOWN */ | ||
847 | 0x61, 0xd6, 0x1a, 0xe5, 0x0f, 0x07, 0x00, /* KEY_LEFT */ | ||
848 | 0x61, 0xd6, 0x1b, 0xe4, 0x15, 0x07, 0x00, /* KEY_RIGHT */ | ||
849 | 0x61, 0xd6, 0x1c, 0xe3, 0x36, 0x07, 0x00, /* KEY_RED */ | ||
850 | 0x61, 0xd6, 0x1d, 0xe2, 0x37, 0x07, 0x00, /* KEY_GREEN */ | ||
851 | 0x61, 0xd6, 0x1e, 0xe1, 0x2d, 0x07, 0x00, /* KEY_YELLOW */ | ||
852 | 0x61, 0xd6, 0x1f, 0xe0, 0x2e, 0x07, 0x00, /* KEY_BLUE */ | ||
853 | }; | ||
854 | |||
855 | #endif | 125 | #endif |