diff options
Diffstat (limited to 'drivers/media/dvb/dvb-usb/dtt200u.c')
-rw-r--r-- | drivers/media/dvb/dvb-usb/dtt200u.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/drivers/media/dvb/dvb-usb/dtt200u.c b/drivers/media/dvb/dvb-usb/dtt200u.c index 70afcfd141ca..8134786f65b2 100644 --- a/drivers/media/dvb/dvb-usb/dtt200u.c +++ b/drivers/media/dvb/dvb-usb/dtt200u.c | |||
@@ -93,6 +93,7 @@ static int dtt200u_frontend_attach(struct dvb_usb_device *d) | |||
93 | } | 93 | } |
94 | 94 | ||
95 | static struct dvb_usb_properties dtt200u_properties; | 95 | static struct dvb_usb_properties dtt200u_properties; |
96 | static struct dvb_usb_properties wt220u_fc_properties; | ||
96 | static struct dvb_usb_properties wt220u_properties; | 97 | static struct dvb_usb_properties wt220u_properties; |
97 | static struct dvb_usb_properties wt220u_zl0353_properties; | 98 | static struct dvb_usb_properties wt220u_zl0353_properties; |
98 | 99 | ||
@@ -101,6 +102,7 @@ static int dtt200u_usb_probe(struct usb_interface *intf, | |||
101 | { | 102 | { |
102 | if (dvb_usb_device_init(intf,&dtt200u_properties,THIS_MODULE,NULL) == 0 || | 103 | if (dvb_usb_device_init(intf,&dtt200u_properties,THIS_MODULE,NULL) == 0 || |
103 | dvb_usb_device_init(intf,&wt220u_properties,THIS_MODULE,NULL) == 0 || | 104 | dvb_usb_device_init(intf,&wt220u_properties,THIS_MODULE,NULL) == 0 || |
105 | dvb_usb_device_init(intf,&wt220u_fc_properties,THIS_MODULE,NULL) == 0 || | ||
104 | dvb_usb_device_init(intf,&wt220u_zl0353_properties,THIS_MODULE,NULL) == 0) | 106 | dvb_usb_device_init(intf,&wt220u_zl0353_properties,THIS_MODULE,NULL) == 0) |
105 | return 0; | 107 | return 0; |
106 | 108 | ||
@@ -114,6 +116,8 @@ static struct usb_device_id dtt200u_usb_table [] = { | |||
114 | { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_WARM) }, | 116 | { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_WARM) }, |
115 | { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_ZL0353_COLD) }, | 117 | { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_ZL0353_COLD) }, |
116 | { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_ZL0353_WARM) }, | 118 | { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_ZL0353_WARM) }, |
119 | { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_FC_COLD) }, | ||
120 | { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_FC_WARM) }, | ||
117 | { 0 }, | 121 | { 0 }, |
118 | }; | 122 | }; |
119 | MODULE_DEVICE_TABLE(usb, dtt200u_usb_table); | 123 | MODULE_DEVICE_TABLE(usb, dtt200u_usb_table); |
@@ -200,6 +204,47 @@ static struct dvb_usb_properties wt220u_properties = { | |||
200 | } | 204 | } |
201 | }; | 205 | }; |
202 | 206 | ||
207 | static struct dvb_usb_properties wt220u_fc_properties = { | ||
208 | .caps = DVB_USB_HAS_PID_FILTER | DVB_USB_NEED_PID_FILTERING, | ||
209 | .pid_filter_count = 15, | ||
210 | |||
211 | .usb_ctrl = CYPRESS_FX2, | ||
212 | .firmware = "dvb-usb-wt220u-fc03.fw", | ||
213 | |||
214 | .power_ctrl = dtt200u_power_ctrl, | ||
215 | .streaming_ctrl = dtt200u_streaming_ctrl, | ||
216 | .pid_filter = dtt200u_pid_filter, | ||
217 | .frontend_attach = dtt200u_frontend_attach, | ||
218 | |||
219 | .rc_interval = 300, | ||
220 | .rc_key_map = dtt200u_rc_keys, | ||
221 | .rc_key_map_size = ARRAY_SIZE(dtt200u_rc_keys), | ||
222 | .rc_query = dtt200u_rc_query, | ||
223 | |||
224 | .generic_bulk_ctrl_endpoint = 0x01, | ||
225 | |||
226 | /* parameter for the MPEG2-data transfer */ | ||
227 | .urb = { | ||
228 | .type = DVB_USB_BULK, | ||
229 | .count = 7, | ||
230 | .endpoint = 0x86, | ||
231 | .u = { | ||
232 | .bulk = { | ||
233 | .buffersize = 4096, | ||
234 | } | ||
235 | } | ||
236 | }, | ||
237 | |||
238 | .num_device_descs = 1, | ||
239 | .devices = { | ||
240 | { .name = "WideView WT-220U PenType Receiver (Typhoon/Freecom)", | ||
241 | .cold_ids = { &dtt200u_usb_table[6], NULL }, | ||
242 | .warm_ids = { &dtt200u_usb_table[7], NULL }, | ||
243 | }, | ||
244 | { NULL }, | ||
245 | } | ||
246 | }; | ||
247 | |||
203 | static struct dvb_usb_properties wt220u_zl0353_properties = { | 248 | static struct dvb_usb_properties wt220u_zl0353_properties = { |
204 | .caps = DVB_USB_HAS_PID_FILTER | DVB_USB_NEED_PID_FILTERING, | 249 | .caps = DVB_USB_HAS_PID_FILTER | DVB_USB_NEED_PID_FILTERING, |
205 | .pid_filter_count = 15, | 250 | .pid_filter_count = 15, |