aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJose Alberto Reguero <jareguero@telefonica.net>2008-11-04 09:38:01 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-12-29 14:53:27 -0500
commitc78de71ca382e18885907bff246cba496e8b0988 (patch)
tree826a874513f4072d01a0d43fe5c733f198eb2c8d
parent2499abe710a86084eee1c0d5662ebd43c261350d (diff)
V4L/DVB (9525): af9015: add support for AverMedia Volar X remote.
This patch add support for AverMedia Volar X remote. Signed-off-by: Jose Alberto Reguero <jareguero@telefonica.net> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/dvb/dvb-usb/af9015.c10
-rw-r--r--drivers/media/dvb/dvb-usb/af9015.h76
2 files changed, 86 insertions, 0 deletions
diff --git a/drivers/media/dvb/dvb-usb/af9015.c b/drivers/media/dvb/dvb-usb/af9015.c
index e9ab0249d133..d8887b745612 100644
--- a/drivers/media/dvb/dvb-usb/af9015.c
+++ b/drivers/media/dvb/dvb-usb/af9015.c
@@ -800,6 +800,16 @@ static int af9015_read_config(struct usb_device *udev)
800 ARRAY_SIZE(af9015_ir_table_msi); 800 ARRAY_SIZE(af9015_ir_table_msi);
801 } 801 }
802 break; 802 break;
803 case USB_VID_AVERMEDIA:
804 af9015_properties[i].rc_key_map =
805 af9015_rc_keys_avermedia;
806 af9015_properties[i].rc_key_map_size =
807 ARRAY_SIZE(af9015_rc_keys_avermedia);
808 af9015_config.ir_table =
809 af9015_ir_table_avermedia;
810 af9015_config.ir_table_size =
811 ARRAY_SIZE(af9015_ir_table_avermedia);
812 break;
803 } 813 }
804 } 814 }
805 } 815 }
diff --git a/drivers/media/dvb/dvb-usb/af9015.h b/drivers/media/dvb/dvb-usb/af9015.h
index 6c3c97293316..1ab86cc6c015 100644
--- a/drivers/media/dvb/dvb-usb/af9015.h
+++ b/drivers/media/dvb/dvb-usb/af9015.h
@@ -520,4 +520,80 @@ static u8 af9015_ir_table_kworld[] = {
520 0x86, 0x6b, 0x23, 0xdc, 0x45, 0x07, 0x00, 520 0x86, 0x6b, 0x23, 0xdc, 0x45, 0x07, 0x00,
521}; 521};
522 522
523/* AverMedia Volar X */
524static struct dvb_usb_rc_key af9015_rc_keys_avermedia[] = {
525 { 0x05, 0x3d, KEY_PROG1 }, /* SOURCE */
526 { 0x05, 0x12, KEY_POWER }, /* POWER */
527 { 0x05, 0x1e, KEY_1 }, /* 1 */
528 { 0x05, 0x1f, KEY_2 }, /* 2 */
529 { 0x05, 0x20, KEY_3 }, /* 3 */
530 { 0x05, 0x21, KEY_4 }, /* 4 */
531 { 0x05, 0x22, KEY_5 }, /* 5 */
532 { 0x05, 0x23, KEY_6 }, /* 6 */
533 { 0x05, 0x24, KEY_7 }, /* 7 */
534 { 0x05, 0x25, KEY_8 }, /* 8 */
535 { 0x05, 0x26, KEY_9 }, /* 9 */
536 { 0x05, 0x3f, KEY_LEFT }, /* L / DISPLAY */
537 { 0x05, 0x27, KEY_0 }, /* 0 */
538 { 0x05, 0x0f, KEY_RIGHT }, /* R / CH RTN */
539 { 0x05, 0x18, KEY_PROG2 }, /* SNAP SHOT */
540 { 0x05, 0x1c, KEY_PROG3 }, /* 16-CH PREV */
541 { 0x05, 0x2d, KEY_VOLUMEDOWN }, /* VOL DOWN */
542 { 0x05, 0x3e, KEY_ZOOM }, /* FULL SCREEN */
543 { 0x05, 0x2e, KEY_VOLUMEUP }, /* VOL UP */
544 { 0x05, 0x10, KEY_MUTE }, /* MUTE */
545 { 0x05, 0x04, KEY_AUDIO }, /* AUDIO */
546 { 0x05, 0x15, KEY_RECORD }, /* RECORD */
547 { 0x05, 0x11, KEY_PLAY }, /* PLAY */
548 { 0x05, 0x16, KEY_STOP }, /* STOP */
549 { 0x05, 0x0c, KEY_PLAYPAUSE }, /* TIMESHIFT / PAUSE */
550 { 0x05, 0x05, KEY_BACK }, /* << / RED */
551 { 0x05, 0x09, KEY_FORWARD }, /* >> / YELLOW */
552 { 0x05, 0x17, KEY_TEXT }, /* TELETEXT */
553 { 0x05, 0x0a, KEY_EPG }, /* EPG */
554 { 0x05, 0x13, KEY_MENU }, /* MENU */
555
556 { 0x05, 0x0e, KEY_CHANNELUP }, /* CH UP */
557 { 0x05, 0x0d, KEY_CHANNELDOWN }, /* CH DOWN */
558 { 0x05, 0x19, KEY_FIRST }, /* |<< / GREEN */
559 { 0x05, 0x08, KEY_LAST }, /* >>| / BLUE */
560};
561
562static u8 af9015_ir_table_avermedia[] = {
563 0x02, 0xfd, 0x00, 0xff, 0x12, 0x05, 0x00,
564 0x02, 0xfd, 0x01, 0xfe, 0x3d, 0x05, 0x00,
565 0x02, 0xfd, 0x03, 0xfc, 0x17, 0x05, 0x00,
566 0x02, 0xfd, 0x04, 0xfb, 0x0a, 0x05, 0x00,
567 0x02, 0xfd, 0x05, 0xfa, 0x1e, 0x05, 0x00,
568 0x02, 0xfd, 0x06, 0xf9, 0x1f, 0x05, 0x00,
569 0x02, 0xfd, 0x07, 0xf8, 0x20, 0x05, 0x00,
570 0x02, 0xfd, 0x09, 0xf6, 0x21, 0x05, 0x00,
571 0x02, 0xfd, 0x0a, 0xf5, 0x22, 0x05, 0x00,
572 0x02, 0xfd, 0x0b, 0xf4, 0x23, 0x05, 0x00,
573 0x02, 0xfd, 0x0d, 0xf2, 0x24, 0x05, 0x00,
574 0x02, 0xfd, 0x0e, 0xf1, 0x25, 0x05, 0x00,
575 0x02, 0xfd, 0x0f, 0xf0, 0x26, 0x05, 0x00,
576 0x02, 0xfd, 0x11, 0xee, 0x27, 0x05, 0x00,
577 0x02, 0xfd, 0x08, 0xf7, 0x04, 0x05, 0x00,
578 0x02, 0xfd, 0x0c, 0xf3, 0x3e, 0x05, 0x00,
579 0x02, 0xfd, 0x10, 0xef, 0x1c, 0x05, 0x00,
580 0x02, 0xfd, 0x12, 0xed, 0x3f, 0x05, 0x00,
581 0x02, 0xfd, 0x13, 0xec, 0x0f, 0x05, 0x00,
582 0x02, 0xfd, 0x14, 0xeb, 0x10, 0x05, 0x00,
583 0x02, 0xfd, 0x15, 0xea, 0x13, 0x05, 0x00,
584 0x02, 0xfd, 0x17, 0xe8, 0x18, 0x05, 0x00,
585 0x02, 0xfd, 0x18, 0xe7, 0x11, 0x05, 0x00,
586 0x02, 0xfd, 0x19, 0xe6, 0x15, 0x05, 0x00,
587 0x02, 0xfd, 0x1a, 0xe5, 0x0c, 0x05, 0x00,
588 0x02, 0xfd, 0x1b, 0xe4, 0x16, 0x05, 0x00,
589 0x02, 0xfd, 0x1c, 0xe3, 0x09, 0x05, 0x00,
590 0x02, 0xfd, 0x1d, 0xe2, 0x05, 0x05, 0x00,
591 0x02, 0xfd, 0x1e, 0xe1, 0x2d, 0x05, 0x00,
592 0x02, 0xfd, 0x1f, 0xe0, 0x2e, 0x05, 0x00,
593 0x03, 0xfc, 0x00, 0xff, 0x08, 0x05, 0x00,
594 0x03, 0xfc, 0x01, 0xfe, 0x19, 0x05, 0x00,
595 0x03, 0xfc, 0x02, 0xfd, 0x0d, 0x05, 0x00,
596 0x03, 0xfc, 0x03, 0xfc, 0x0e, 0x05, 0x00,
597};
598
523#endif 599#endif