diff options
Diffstat (limited to 'drivers/media/dvb/dvb-usb/dib0700_devices.c')
-rw-r--r-- | drivers/media/dvb/dvb-usb/dib0700_devices.c | 100 |
1 files changed, 71 insertions, 29 deletions
diff --git a/drivers/media/dvb/dvb-usb/dib0700_devices.c b/drivers/media/dvb/dvb-usb/dib0700_devices.c index 34eab05afc6..800800a9649 100644 --- a/drivers/media/dvb/dvb-usb/dib0700_devices.c +++ b/drivers/media/dvb/dvb-usb/dib0700_devices.c | |||
@@ -562,7 +562,7 @@ static int dib0700_rc_query(struct dvb_usb_device *d, u32 *event, int *state) | |||
562 | return 0; | 562 | return 0; |
563 | } | 563 | } |
564 | 564 | ||
565 | static struct dvb_usb_rc_key dib0700_rc_keys[] = { | 565 | static struct dvb_usb_rc_key ir_codes_dib0700_table[] = { |
566 | /* Key codes for the tiny Pinnacle remote*/ | 566 | /* Key codes for the tiny Pinnacle remote*/ |
567 | { 0x0700, KEY_MUTE }, | 567 | { 0x0700, KEY_MUTE }, |
568 | { 0x0701, KEY_MENU }, /* Pinnacle logo */ | 568 | { 0x0701, KEY_MENU }, /* Pinnacle logo */ |
@@ -794,6 +794,43 @@ static struct dvb_usb_rc_key dib0700_rc_keys[] = { | |||
794 | { 0x7a13, KEY_VOLUMEDOWN }, | 794 | { 0x7a13, KEY_VOLUMEDOWN }, |
795 | { 0x7a40, KEY_POWER }, | 795 | { 0x7a40, KEY_POWER }, |
796 | { 0x7a41, KEY_MUTE }, | 796 | { 0x7a41, KEY_MUTE }, |
797 | |||
798 | /* Key codes for the Elgato EyeTV Diversity silver remote, | ||
799 | set dvb_usb_dib0700_ir_proto=0 */ | ||
800 | { 0x4501, KEY_POWER }, | ||
801 | { 0x4502, KEY_MUTE }, | ||
802 | { 0x4503, KEY_1 }, | ||
803 | { 0x4504, KEY_2 }, | ||
804 | { 0x4505, KEY_3 }, | ||
805 | { 0x4506, KEY_4 }, | ||
806 | { 0x4507, KEY_5 }, | ||
807 | { 0x4508, KEY_6 }, | ||
808 | { 0x4509, KEY_7 }, | ||
809 | { 0x450a, KEY_8 }, | ||
810 | { 0x450b, KEY_9 }, | ||
811 | { 0x450c, KEY_LAST }, | ||
812 | { 0x450d, KEY_0 }, | ||
813 | { 0x450e, KEY_ENTER }, | ||
814 | { 0x450f, KEY_RED }, | ||
815 | { 0x4510, KEY_CHANNELUP }, | ||
816 | { 0x4511, KEY_GREEN }, | ||
817 | { 0x4512, KEY_VOLUMEDOWN }, | ||
818 | { 0x4513, KEY_OK }, | ||
819 | { 0x4514, KEY_VOLUMEUP }, | ||
820 | { 0x4515, KEY_YELLOW }, | ||
821 | { 0x4516, KEY_CHANNELDOWN }, | ||
822 | { 0x4517, KEY_BLUE }, | ||
823 | { 0x4518, KEY_LEFT }, /* Skip backwards */ | ||
824 | { 0x4519, KEY_PLAYPAUSE }, | ||
825 | { 0x451a, KEY_RIGHT }, /* Skip forward */ | ||
826 | { 0x451b, KEY_REWIND }, | ||
827 | { 0x451c, KEY_L }, /* Live */ | ||
828 | { 0x451d, KEY_FASTFORWARD }, | ||
829 | { 0x451e, KEY_STOP }, /* 'Reveal' for Teletext */ | ||
830 | { 0x451f, KEY_MENU }, /* KEY_TEXT for Teletext */ | ||
831 | { 0x4540, KEY_RECORD }, /* Font 'Size' for Teletext */ | ||
832 | { 0x4541, KEY_SCREEN }, /* Full screen toggle, 'Hold' for Teletext */ | ||
833 | { 0x4542, KEY_SELECT }, /* Select video input, 'Select' for Teletext */ | ||
797 | }; | 834 | }; |
798 | 835 | ||
799 | /* STK7700P: Hauppauge Nova-T Stick, AVerMedia Volar */ | 836 | /* STK7700P: Hauppauge Nova-T Stick, AVerMedia Volar */ |
@@ -2049,6 +2086,7 @@ struct usb_device_id dib0700_usb_id_table[] = { | |||
2049 | /* 65 */{ USB_DEVICE(USB_VID_PINNACLE, USB_PID_PINNACLE_PCTV73ESE) }, | 2086 | /* 65 */{ USB_DEVICE(USB_VID_PINNACLE, USB_PID_PINNACLE_PCTV73ESE) }, |
2050 | { USB_DEVICE(USB_VID_PINNACLE, USB_PID_PINNACLE_PCTV282E) }, | 2087 | { USB_DEVICE(USB_VID_PINNACLE, USB_PID_PINNACLE_PCTV282E) }, |
2051 | { USB_DEVICE(USB_VID_DIBCOM, USB_PID_DIBCOM_STK8096GP) }, | 2088 | { USB_DEVICE(USB_VID_DIBCOM, USB_PID_DIBCOM_STK8096GP) }, |
2089 | { USB_DEVICE(USB_VID_ELGATO, USB_PID_ELGATO_EYETV_DIVERSITY) }, | ||
2052 | { 0 } /* Terminating entry */ | 2090 | { 0 } /* Terminating entry */ |
2053 | }; | 2091 | }; |
2054 | MODULE_DEVICE_TABLE(usb, dib0700_usb_id_table); | 2092 | MODULE_DEVICE_TABLE(usb, dib0700_usb_id_table); |
@@ -2131,8 +2169,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2131 | }, | 2169 | }, |
2132 | 2170 | ||
2133 | .rc_interval = DEFAULT_RC_INTERVAL, | 2171 | .rc_interval = DEFAULT_RC_INTERVAL, |
2134 | .rc_key_map = dib0700_rc_keys, | 2172 | .rc_key_map = ir_codes_dib0700_table, |
2135 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2173 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2136 | .rc_query = dib0700_rc_query | 2174 | .rc_query = dib0700_rc_query |
2137 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2175 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
2138 | 2176 | ||
@@ -2160,8 +2198,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2160 | }, | 2198 | }, |
2161 | 2199 | ||
2162 | .rc_interval = DEFAULT_RC_INTERVAL, | 2200 | .rc_interval = DEFAULT_RC_INTERVAL, |
2163 | .rc_key_map = dib0700_rc_keys, | 2201 | .rc_key_map = ir_codes_dib0700_table, |
2164 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2202 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2165 | .rc_query = dib0700_rc_query | 2203 | .rc_query = dib0700_rc_query |
2166 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2204 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
2167 | 2205 | ||
@@ -2214,8 +2252,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2214 | }, | 2252 | }, |
2215 | 2253 | ||
2216 | .rc_interval = DEFAULT_RC_INTERVAL, | 2254 | .rc_interval = DEFAULT_RC_INTERVAL, |
2217 | .rc_key_map = dib0700_rc_keys, | 2255 | .rc_key_map = ir_codes_dib0700_table, |
2218 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2256 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2219 | .rc_query = dib0700_rc_query | 2257 | .rc_query = dib0700_rc_query |
2220 | 2258 | ||
2221 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2259 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
@@ -2251,8 +2289,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2251 | }, | 2289 | }, |
2252 | 2290 | ||
2253 | .rc_interval = DEFAULT_RC_INTERVAL, | 2291 | .rc_interval = DEFAULT_RC_INTERVAL, |
2254 | .rc_key_map = dib0700_rc_keys, | 2292 | .rc_key_map = ir_codes_dib0700_table, |
2255 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2293 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2256 | .rc_query = dib0700_rc_query | 2294 | .rc_query = dib0700_rc_query |
2257 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2295 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
2258 | 2296 | ||
@@ -2321,8 +2359,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2321 | }, | 2359 | }, |
2322 | 2360 | ||
2323 | .rc_interval = DEFAULT_RC_INTERVAL, | 2361 | .rc_interval = DEFAULT_RC_INTERVAL, |
2324 | .rc_key_map = dib0700_rc_keys, | 2362 | .rc_key_map = ir_codes_dib0700_table, |
2325 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2363 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2326 | .rc_query = dib0700_rc_query | 2364 | .rc_query = dib0700_rc_query |
2327 | 2365 | ||
2328 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2366 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
@@ -2360,8 +2398,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2360 | }, | 2398 | }, |
2361 | 2399 | ||
2362 | .rc_interval = DEFAULT_RC_INTERVAL, | 2400 | .rc_interval = DEFAULT_RC_INTERVAL, |
2363 | .rc_key_map = dib0700_rc_keys, | 2401 | .rc_key_map = ir_codes_dib0700_table, |
2364 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2402 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2365 | .rc_query = dib0700_rc_query | 2403 | .rc_query = dib0700_rc_query |
2366 | 2404 | ||
2367 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2405 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
@@ -2393,7 +2431,7 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2393 | } | 2431 | } |
2394 | }, | 2432 | }, |
2395 | 2433 | ||
2396 | .num_device_descs = 6, | 2434 | .num_device_descs = 7, |
2397 | .devices = { | 2435 | .devices = { |
2398 | { "DiBcom STK7070PD reference design", | 2436 | { "DiBcom STK7070PD reference design", |
2399 | { &dib0700_usb_id_table[17], NULL }, | 2437 | { &dib0700_usb_id_table[17], NULL }, |
@@ -2419,11 +2457,15 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2419 | { "Sony PlayTV", | 2457 | { "Sony PlayTV", |
2420 | { &dib0700_usb_id_table[44], NULL }, | 2458 | { &dib0700_usb_id_table[44], NULL }, |
2421 | { NULL }, | 2459 | { NULL }, |
2422 | } | 2460 | }, |
2461 | { "Elgato EyeTV Diversity", | ||
2462 | { &dib0700_usb_id_table[68], NULL }, | ||
2463 | { NULL }, | ||
2464 | }, | ||
2423 | }, | 2465 | }, |
2424 | .rc_interval = DEFAULT_RC_INTERVAL, | 2466 | .rc_interval = DEFAULT_RC_INTERVAL, |
2425 | .rc_key_map = dib0700_rc_keys, | 2467 | .rc_key_map = ir_codes_dib0700_table, |
2426 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2468 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2427 | .rc_query = dib0700_rc_query | 2469 | .rc_query = dib0700_rc_query |
2428 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2470 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
2429 | 2471 | ||
@@ -2484,8 +2526,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2484 | }, | 2526 | }, |
2485 | }, | 2527 | }, |
2486 | .rc_interval = DEFAULT_RC_INTERVAL, | 2528 | .rc_interval = DEFAULT_RC_INTERVAL, |
2487 | .rc_key_map = dib0700_rc_keys, | 2529 | .rc_key_map = ir_codes_dib0700_table, |
2488 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2530 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2489 | .rc_query = dib0700_rc_query | 2531 | .rc_query = dib0700_rc_query |
2490 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2532 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
2491 | .num_adapters = 1, | 2533 | .num_adapters = 1, |
@@ -2513,8 +2555,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2513 | }, | 2555 | }, |
2514 | }, | 2556 | }, |
2515 | .rc_interval = DEFAULT_RC_INTERVAL, | 2557 | .rc_interval = DEFAULT_RC_INTERVAL, |
2516 | .rc_key_map = dib0700_rc_keys, | 2558 | .rc_key_map = ir_codes_dib0700_table, |
2517 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2559 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2518 | .rc_query = dib0700_rc_query | 2560 | .rc_query = dib0700_rc_query |
2519 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2561 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
2520 | .num_adapters = 1, | 2562 | .num_adapters = 1, |
@@ -2574,8 +2616,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2574 | }, | 2616 | }, |
2575 | }, | 2617 | }, |
2576 | .rc_interval = DEFAULT_RC_INTERVAL, | 2618 | .rc_interval = DEFAULT_RC_INTERVAL, |
2577 | .rc_key_map = dib0700_rc_keys, | 2619 | .rc_key_map = ir_codes_dib0700_table, |
2578 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2620 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2579 | .rc_query = dib0700_rc_query | 2621 | .rc_query = dib0700_rc_query |
2580 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2622 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
2581 | .num_adapters = 1, | 2623 | .num_adapters = 1, |
@@ -2612,8 +2654,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2612 | }, | 2654 | }, |
2613 | 2655 | ||
2614 | .rc_interval = DEFAULT_RC_INTERVAL, | 2656 | .rc_interval = DEFAULT_RC_INTERVAL, |
2615 | .rc_key_map = dib0700_rc_keys, | 2657 | .rc_key_map = ir_codes_dib0700_table, |
2616 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2658 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2617 | .rc_query = dib0700_rc_query | 2659 | .rc_query = dib0700_rc_query |
2618 | 2660 | ||
2619 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2661 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
@@ -2656,8 +2698,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2656 | }, | 2698 | }, |
2657 | 2699 | ||
2658 | .rc_interval = DEFAULT_RC_INTERVAL, | 2700 | .rc_interval = DEFAULT_RC_INTERVAL, |
2659 | .rc_key_map = dib0700_rc_keys, | 2701 | .rc_key_map = ir_codes_dib0700_table, |
2660 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2702 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2661 | .rc_query = dib0700_rc_query | 2703 | .rc_query = dib0700_rc_query |
2662 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, | 2704 | }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, |
2663 | .num_adapters = 1, | 2705 | .num_adapters = 1, |
@@ -2687,8 +2729,8 @@ struct dvb_usb_device_properties dib0700_devices[] = { | |||
2687 | }, | 2729 | }, |
2688 | 2730 | ||
2689 | .rc_interval = DEFAULT_RC_INTERVAL, | 2731 | .rc_interval = DEFAULT_RC_INTERVAL, |
2690 | .rc_key_map = dib0700_rc_keys, | 2732 | .rc_key_map = ir_codes_dib0700_table, |
2691 | .rc_key_map_size = ARRAY_SIZE(dib0700_rc_keys), | 2733 | .rc_key_map_size = ARRAY_SIZE(ir_codes_dib0700_table), |
2692 | .rc_query = dib0700_rc_query | 2734 | .rc_query = dib0700_rc_query |
2693 | }, | 2735 | }, |
2694 | }; | 2736 | }; |