diff options
author | Marc Schneider <macke@macke.org> | 2009-03-26 20:07:18 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-04-06 20:43:54 -0400 |
commit | 261448405eb578972244ae406a2d785bc095f193 (patch) | |
tree | 6d81ed07daec738fcfd51a2cc85907618e556cba /drivers | |
parent | 58fe1595455566a1cfe22db6f5f59bc989e5a80f (diff) |
V4L/DVB (11338): af9015: add support for TrekStor DVB-T USB Stick
Add USB ID (15a4:901b) and remote for TrekStor DVB-T USB Stick.
Signed-off-by: Marc Schneider <macke@macke.org>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/media/dvb/dvb-usb/af9015.c | 18 | ||||
-rw-r--r-- | drivers/media/dvb/dvb-usb/af9015.h | 67 | ||||
-rw-r--r-- | drivers/media/dvb/dvb-usb/dvb-usb-ids.h | 1 |
3 files changed, 83 insertions, 3 deletions
diff --git a/drivers/media/dvb/dvb-usb/af9015.c b/drivers/media/dvb/dvb-usb/af9015.c index 1086f30e888..14967464e81 100644 --- a/drivers/media/dvb/dvb-usb/af9015.c +++ b/drivers/media/dvb/dvb-usb/af9015.c | |||
@@ -833,6 +833,16 @@ static int af9015_read_config(struct usb_device *udev) | |||
833 | af9015_ir_table_msi; | 833 | af9015_ir_table_msi; |
834 | af9015_config.ir_table_size = | 834 | af9015_config.ir_table_size = |
835 | ARRAY_SIZE(af9015_ir_table_msi); | 835 | ARRAY_SIZE(af9015_ir_table_msi); |
836 | } else if (udev->descriptor.idProduct == | ||
837 | cpu_to_le16(USB_PID_TREKSTOR_DVBT)) { | ||
838 | af9015_properties[i].rc_key_map = | ||
839 | af9015_rc_keys_trekstor; | ||
840 | af9015_properties[i].rc_key_map_size = | ||
841 | ARRAY_SIZE(af9015_rc_keys_trekstor); | ||
842 | af9015_config.ir_table = | ||
843 | af9015_ir_table_trekstor; | ||
844 | af9015_config.ir_table_size = | ||
845 | ARRAY_SIZE(af9015_ir_table_trekstor); | ||
836 | } | 846 | } |
837 | break; | 847 | break; |
838 | case USB_VID_AVERMEDIA: | 848 | case USB_VID_AVERMEDIA: |
@@ -1238,6 +1248,7 @@ static struct usb_device_id af9015_usb_table[] = { | |||
1238 | {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U)}, | 1248 | {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U)}, |
1239 | {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_2)}, | 1249 | {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_2)}, |
1240 | {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_3)}, | 1250 | {USB_DEVICE(USB_VID_KWORLD_2, USB_PID_KWORLD_395U_3)}, |
1251 | {USB_DEVICE(USB_VID_AFATECH, USB_PID_TREKSTOR_DVBT)}, | ||
1241 | {0}, | 1252 | {0}, |
1242 | }; | 1253 | }; |
1243 | MODULE_DEVICE_TABLE(usb, af9015_usb_table); | 1254 | MODULE_DEVICE_TABLE(usb, af9015_usb_table); |
@@ -1402,7 +1413,7 @@ static struct dvb_usb_device_properties af9015_properties[] = { | |||
1402 | 1413 | ||
1403 | .i2c_algo = &af9015_i2c_algo, | 1414 | .i2c_algo = &af9015_i2c_algo, |
1404 | 1415 | ||
1405 | .num_device_descs = 7, | 1416 | .num_device_descs = 8, |
1406 | .devices = { | 1417 | .devices = { |
1407 | { | 1418 | { |
1408 | .name = "Xtensions XD-380", | 1419 | .name = "Xtensions XD-380", |
@@ -1442,6 +1453,11 @@ static struct dvb_usb_device_properties af9015_properties[] = { | |||
1442 | &af9015_usb_table[18], NULL}, | 1453 | &af9015_usb_table[18], NULL}, |
1443 | .warm_ids = {NULL}, | 1454 | .warm_ids = {NULL}, |
1444 | }, | 1455 | }, |
1456 | { | ||
1457 | .name = "TrekStor DVB-T USB Stick", | ||
1458 | .cold_ids = {&af9015_usb_table[19], NULL}, | ||
1459 | .warm_ids = {NULL}, | ||
1460 | }, | ||
1445 | } | 1461 | } |
1446 | } | 1462 | } |
1447 | }; | 1463 | }; |
diff --git a/drivers/media/dvb/dvb-usb/af9015.h b/drivers/media/dvb/dvb-usb/af9015.h index 00e25714662..5c44bad2892 100644 --- a/drivers/media/dvb/dvb-usb/af9015.h +++ b/drivers/media/dvb/dvb-usb/af9015.h | |||
@@ -120,11 +120,11 @@ struct af9015_config { | |||
120 | 120 | ||
121 | enum af9015_remote { | 121 | enum af9015_remote { |
122 | AF9015_REMOTE_NONE = 0, | 122 | AF9015_REMOTE_NONE = 0, |
123 | AF9015_REMOTE_A_LINK_DTU_M, | 123 | /* 1 */ AF9015_REMOTE_A_LINK_DTU_M, |
124 | AF9015_REMOTE_MSI_DIGIVOX_MINI_II_V3, | 124 | AF9015_REMOTE_MSI_DIGIVOX_MINI_II_V3, |
125 | AF9015_REMOTE_MYGICTV_U718, | 125 | AF9015_REMOTE_MYGICTV_U718, |
126 | AF9015_REMOTE_DIGITTRADE_DVB_T, | 126 | AF9015_REMOTE_DIGITTRADE_DVB_T, |
127 | AF9015_REMOTE_AVERMEDIA_KS, | 127 | /* 5 */ AF9015_REMOTE_AVERMEDIA_KS, |
128 | }; | 128 | }; |
129 | 129 | ||
130 | /* Leadtek WinFast DTV Dongle Gold */ | 130 | /* Leadtek WinFast DTV Dongle Gold */ |
@@ -691,4 +691,67 @@ static u8 af9015_ir_table_digittrade[] = { | |||
691 | 0x00, 0xff, 0x1d, 0xe2, 0x40, 0x00, 0x00, | 691 | 0x00, 0xff, 0x1d, 0xe2, 0x40, 0x00, 0x00, |
692 | }; | 692 | }; |
693 | 693 | ||
694 | /* TREKSTOR DVB-T USB Stick */ | ||
695 | static struct dvb_usb_rc_key af9015_rc_keys_trekstor[] = { | ||
696 | { 0x07, 0x04, KEY_AGAIN }, /* Home */ | ||
697 | { 0x07, 0x05, KEY_MUTE }, /* Mute */ | ||
698 | { 0x07, 0x06, KEY_UP }, /* Up */ | ||
699 | { 0x07, 0x07, KEY_DOWN }, /* Down */ | ||
700 | { 0x07, 0x09, KEY_RIGHT }, /* Right */ | ||
701 | { 0x07, 0x0a, KEY_ENTER }, /* OK */ | ||
702 | { 0x07, 0x0b, KEY_FASTFORWARD }, /* Fast forward */ | ||
703 | { 0x07, 0x0c, KEY_REWIND }, /* Rewind */ | ||
704 | { 0x07, 0x0d, KEY_PLAY }, /* Play/Pause */ | ||
705 | { 0x07, 0x0e, KEY_VOLUMEUP }, /* Volume + */ | ||
706 | { 0x07, 0x0f, KEY_VOLUMEDOWN }, /* Volume - */ | ||
707 | { 0x07, 0x10, KEY_RECORD }, /* Record */ | ||
708 | { 0x07, 0x11, KEY_STOP }, /* Stop */ | ||
709 | { 0x07, 0x12, KEY_ZOOM }, /* TV */ | ||
710 | { 0x07, 0x13, KEY_EPG }, /* Info/EPG */ | ||
711 | { 0x07, 0x14, KEY_CHANNELDOWN }, /* Channel - */ | ||
712 | { 0x07, 0x15, KEY_CHANNELUP }, /* Channel + */ | ||
713 | { 0x07, 0x1e, KEY_1 }, | ||
714 | { 0x07, 0x1f, KEY_2 }, | ||
715 | { 0x07, 0x20, KEY_3 }, | ||
716 | { 0x07, 0x21, KEY_4 }, | ||
717 | { 0x07, 0x22, KEY_5 }, | ||
718 | { 0x07, 0x23, KEY_6 }, | ||
719 | { 0x07, 0x24, KEY_7 }, | ||
720 | { 0x07, 0x25, KEY_8 }, | ||
721 | { 0x07, 0x26, KEY_9 }, | ||
722 | { 0x07, 0x08, KEY_LEFT }, /* LEFT */ | ||
723 | { 0x07, 0x27, KEY_0 }, | ||
724 | }; | ||
725 | |||
726 | static u8 af9015_ir_table_trekstor[] = { | ||
727 | 0x00, 0xff, 0x86, 0x79, 0x04, 0x07, 0x00, | ||
728 | 0x00, 0xff, 0x85, 0x7a, 0x05, 0x07, 0x00, | ||
729 | 0x00, 0xff, 0x87, 0x78, 0x06, 0x07, 0x00, | ||
730 | 0x00, 0xff, 0x8c, 0x73, 0x07, 0x07, 0x00, | ||
731 | 0x00, 0xff, 0x89, 0x76, 0x09, 0x07, 0x00, | ||
732 | 0x00, 0xff, 0x88, 0x77, 0x0a, 0x07, 0x00, | ||
733 | 0x00, 0xff, 0x8a, 0x75, 0x0b, 0x07, 0x00, | ||
734 | 0x00, 0xff, 0x9e, 0x61, 0x0c, 0x07, 0x00, | ||
735 | 0x00, 0xff, 0x8d, 0x72, 0x0d, 0x07, 0x00, | ||
736 | 0x00, 0xff, 0x8b, 0x74, 0x0e, 0x07, 0x00, | ||
737 | 0x00, 0xff, 0x9b, 0x64, 0x0f, 0x07, 0x00, | ||
738 | 0x00, 0xff, 0x9d, 0x62, 0x10, 0x07, 0x00, | ||
739 | 0x00, 0xff, 0x8e, 0x71, 0x11, 0x07, 0x00, | ||
740 | 0x00, 0xff, 0x9c, 0x63, 0x12, 0x07, 0x00, | ||
741 | 0x00, 0xff, 0x8f, 0x70, 0x13, 0x07, 0x00, | ||
742 | 0x00, 0xff, 0x93, 0x6c, 0x14, 0x07, 0x00, | ||
743 | 0x00, 0xff, 0x97, 0x68, 0x15, 0x07, 0x00, | ||
744 | 0x00, 0xff, 0x92, 0x6d, 0x1e, 0x07, 0x00, | ||
745 | 0x00, 0xff, 0x96, 0x69, 0x1f, 0x07, 0x00, | ||
746 | 0x00, 0xff, 0x9a, 0x65, 0x20, 0x07, 0x00, | ||
747 | 0x00, 0xff, 0x91, 0x6e, 0x21, 0x07, 0x00, | ||
748 | 0x00, 0xff, 0x95, 0x6a, 0x22, 0x07, 0x00, | ||
749 | 0x00, 0xff, 0x99, 0x66, 0x23, 0x07, 0x00, | ||
750 | 0x00, 0xff, 0x90, 0x6f, 0x24, 0x07, 0x00, | ||
751 | 0x00, 0xff, 0x94, 0x6b, 0x25, 0x07, 0x00, | ||
752 | 0x00, 0xff, 0x98, 0x67, 0x26, 0x07, 0x00, | ||
753 | 0x00, 0xff, 0x9f, 0x60, 0x08, 0x07, 0x00, | ||
754 | 0x00, 0xff, 0x84, 0x7b, 0x27, 0x07, 0x00, | ||
755 | }; | ||
756 | |||
694 | #endif | 757 | #endif |
diff --git a/drivers/media/dvb/dvb-usb/dvb-usb-ids.h b/drivers/media/dvb/dvb-usb/dvb-usb-ids.h index 75dc4b79fa2..4870ed6eb6e 100644 --- a/drivers/media/dvb/dvb-usb/dvb-usb-ids.h +++ b/drivers/media/dvb/dvb-usb/dvb-usb-ids.h | |||
@@ -65,6 +65,7 @@ | |||
65 | #define USB_PID_AFATECH_AF9005 0x9020 | 65 | #define USB_PID_AFATECH_AF9005 0x9020 |
66 | #define USB_PID_AFATECH_AF9015_9015 0x9015 | 66 | #define USB_PID_AFATECH_AF9015_9015 0x9015 |
67 | #define USB_PID_AFATECH_AF9015_9016 0x9016 | 67 | #define USB_PID_AFATECH_AF9015_9016 0x9016 |
68 | #define USB_PID_TREKSTOR_DVBT 0x901b | ||
68 | #define USB_VID_ALINK_DTU 0xf170 | 69 | #define USB_VID_ALINK_DTU 0xf170 |
69 | #define USB_PID_ANSONIC_DVBT_USB 0x6000 | 70 | #define USB_PID_ANSONIC_DVBT_USB 0x6000 |
70 | #define USB_PID_ANYSEE 0x861f | 71 | #define USB_PID_ANYSEE 0x861f |