1.fix Vodafone K4505 3G dongle USB switch faild

2.Add more VID PID for option driver
This commit is contained in:
xxh
2013-05-07 20:35:01 +08:00
parent 217e0253e6
commit c92b2c6f06
5 changed files with 49 additions and 2 deletions

View File

@@ -80,7 +80,8 @@ static usb_parameter skip_device_list[] = {
{0x0685, 0x7000, NULL, NULL, NULL},
// {0x20A6, 0xF00E, NULL, NULL, NULL},
{0x20A6, 0xF00E, NULL, NULL, NULL},
{0x20A6, 0x1105, NULL, NULL, NULL},
{0x1614, 0x0800, NULL, NULL, NULL},
//begain add by xxh
{0x1A8D, 0x2000, NULL, NULL, NULL},
@@ -104,7 +105,17 @@ static usb_parameter skip_device_list[] = {
{0x19d2, 0x1216, NULL, NULL, NULL},
{0x19d2, 0x1218, NULL, NULL, NULL},
{0x05c6, 0x9000, NULL, NULL, NULL},
//end xxh
{0x19d2, 0x0016, NULL, NULL, NULL},//MF110
{0x1C9E, 0x9914, NULL, NULL, NULL},//SMART BRO WM66E
{0x2077, 0xF000, NULL, NULL, NULL},
{0x2077, 0xA000, NULL, NULL, NULL},//beyond
{0x12d1, 0x140b, NULL, NULL, NULL},//EC122 India
{0x19D2, 0x1266, NULL, NULL, NULL},//MF190U
{0x19D2, 0x1514, NULL, NULL, NULL},
{0x19D2, 0x1515, NULL, NULL, NULL},//MF195
{0x1bbb, 0xf017, NULL, NULL, NULL},
{0x19d2, 0x0117, NULL, NULL, NULL},
//end xxh
};
/* 1 - match

View File

@@ -1371,6 +1371,9 @@ static const struct usb_device_id option_ids[] = {
{ USB_DEVICE(0x0421,0x0612)},
{ USB_DEVICE(0x19d2,0x1218)},
{ USB_DEVICE(HAIER_VENDOR_ID, HAIER_PRODUCT_IE701)},
{ USB_DEVICE(0x1C9E,0x9914)},
{ USB_DEVICE(0x19d2,0x1515)},
{ USB_DEVICE(0x1bbb,0x0012)},
//xxh end

View File

@@ -176,3 +176,18 @@ int usb_stor_huawei_init(struct us_data *us)
}
return result;
}
int usb_stor_zte_k4505_init(struct us_data *us)
{
int result = 0;
int act_len = 0;
unsigned char cmd[32] = {
0x55,0x53,0x42,0x43,0x12,0x34,0x56,0x78,
0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x1b,
0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
result = usb_stor_bulk_transfer_buf (us, us->send_bulk_pipe, cmd, 31,&act_len);
printk("usb_stor_bulk_transfer_buf performing result is %d, transfer the actual length=%d\n", result, act_len);
return (result ? 0 : -ENODEV);
}

View File

@@ -48,3 +48,5 @@ int usb_stor_ucr61s2b_init(struct us_data *us);
/* This places the HUAWEI usb dongles in multi-port mode */
int usb_stor_huawei_init(struct us_data *us);
int usb_stor_zte_k4505_init(struct us_data *us);

View File

@@ -1521,6 +1521,22 @@ UNUSUAL_VENDOR_INTF(0x12d1, 0x08, 0x06, 0x50,
USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_huawei_init,
0),
UNUSUAL_DEV(0x19d2, 0x1007, 0x0000, 0xffff,
"ZTE EJECT CDROM",
"USB MMC Storage",
USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_zte_k4505_init,
0),
UNUSUAL_DEV(0x19d2, 0x1175, 0x0000, 0xffff,
"ZTE EJECT CDROM",
"USB MMC Storage",
USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_zte_k4505_init,
0),
UNUSUAL_DEV(0x19d2, 0x0101, 0x0000, 0xffff,
"ZTE EJECT CDROM",
"USB MMC Storage",
USB_SC_DEVICE, USB_PR_DEVICE, usb_stor_zte_k4505_init,
0),
/* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */
UNUSUAL_DEV( 0x132b, 0x000b, 0x0001, 0x0001,
"Minolta",