V4L/DVB (4442): [PATCH] Freecom DVB-T stick with ID 14aa:0225
Ok, here is the working patch for the Freecom DVB-T stick with USB-ID 14aa:0225. It uses the Firmware-file, wich Erich Focht created and wich can be obtainded from http://home.arcor.de/efocht/dvb-usb-wt220u-fc03.fw Also the original patch is from Erich. It adds the proper USB-IDs and I only had to change the endpoint of the MPEG-2 data-transfer to 0x86. Signed-off-by: Alexander Tuschen <atuschen@web.de> Signed-off-by: Patrick Boettcher <pb@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
7e4720201a
commit
19e22576d2
2 changed files with 47 additions and 0 deletions
|
@ -93,6 +93,7 @@ static int dtt200u_frontend_attach(struct dvb_usb_device *d)
|
|||
}
|
||||
|
||||
static struct dvb_usb_properties dtt200u_properties;
|
||||
static struct dvb_usb_properties wt220u_fc_properties;
|
||||
static struct dvb_usb_properties wt220u_properties;
|
||||
static struct dvb_usb_properties wt220u_zl0353_properties;
|
||||
|
||||
|
@ -101,6 +102,7 @@ static int dtt200u_usb_probe(struct usb_interface *intf,
|
|||
{
|
||||
if (dvb_usb_device_init(intf,&dtt200u_properties,THIS_MODULE,NULL) == 0 ||
|
||||
dvb_usb_device_init(intf,&wt220u_properties,THIS_MODULE,NULL) == 0 ||
|
||||
dvb_usb_device_init(intf,&wt220u_fc_properties,THIS_MODULE,NULL) == 0 ||
|
||||
dvb_usb_device_init(intf,&wt220u_zl0353_properties,THIS_MODULE,NULL) == 0)
|
||||
return 0;
|
||||
|
||||
|
@ -114,6 +116,8 @@ static struct usb_device_id dtt200u_usb_table [] = {
|
|||
{ USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_WARM) },
|
||||
{ USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_ZL0353_COLD) },
|
||||
{ USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_ZL0353_WARM) },
|
||||
{ USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_FC_COLD) },
|
||||
{ USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_FC_WARM) },
|
||||
{ 0 },
|
||||
};
|
||||
MODULE_DEVICE_TABLE(usb, dtt200u_usb_table);
|
||||
|
@ -200,6 +204,47 @@ static struct dvb_usb_properties wt220u_properties = {
|
|||
}
|
||||
};
|
||||
|
||||
static struct dvb_usb_properties wt220u_fc_properties = {
|
||||
.caps = DVB_USB_HAS_PID_FILTER | DVB_USB_NEED_PID_FILTERING,
|
||||
.pid_filter_count = 15,
|
||||
|
||||
.usb_ctrl = CYPRESS_FX2,
|
||||
.firmware = "dvb-usb-wt220u-fc03.fw",
|
||||
|
||||
.power_ctrl = dtt200u_power_ctrl,
|
||||
.streaming_ctrl = dtt200u_streaming_ctrl,
|
||||
.pid_filter = dtt200u_pid_filter,
|
||||
.frontend_attach = dtt200u_frontend_attach,
|
||||
|
||||
.rc_interval = 300,
|
||||
.rc_key_map = dtt200u_rc_keys,
|
||||
.rc_key_map_size = ARRAY_SIZE(dtt200u_rc_keys),
|
||||
.rc_query = dtt200u_rc_query,
|
||||
|
||||
.generic_bulk_ctrl_endpoint = 0x01,
|
||||
|
||||
/* parameter for the MPEG2-data transfer */
|
||||
.urb = {
|
||||
.type = DVB_USB_BULK,
|
||||
.count = 7,
|
||||
.endpoint = 0x86,
|
||||
.u = {
|
||||
.bulk = {
|
||||
.buffersize = 4096,
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
.num_device_descs = 1,
|
||||
.devices = {
|
||||
{ .name = "WideView WT-220U PenType Receiver (Typhoon/Freecom)",
|
||||
.cold_ids = { &dtt200u_usb_table[6], NULL },
|
||||
.warm_ids = { &dtt200u_usb_table[7], NULL },
|
||||
},
|
||||
{ NULL },
|
||||
}
|
||||
};
|
||||
|
||||
static struct dvb_usb_properties wt220u_zl0353_properties = {
|
||||
.caps = DVB_USB_HAS_PID_FILTER | DVB_USB_NEED_PID_FILTERING,
|
||||
.pid_filter_count = 15,
|
||||
|
|
|
@ -84,6 +84,8 @@
|
|||
#define USB_PID_DTT200U_WARM 0x0301
|
||||
#define USB_PID_WT220U_COLD 0x0222
|
||||
#define USB_PID_WT220U_WARM 0x0221
|
||||
#define USB_PID_WT220U_FC_COLD 0x0225
|
||||
#define USB_PID_WT220U_FC_WARM 0x0226
|
||||
#define USB_PID_WT220U_ZL0353_COLD 0x022a
|
||||
#define USB_PID_WT220U_ZL0353_WARM 0x022b
|
||||
#define USB_PID_WINTV_NOVA_T_USB2_COLD 0x9300
|
||||
|
|
Reference in a new issue