diff options
author | fangxiaozhi <huananhu@huawei.com> | 2008-04-10 02:51:06 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2008-04-16 01:30:52 -0400 |
commit | aad8a278f37e748bfe310a1366f2aa7e0dbaf365 (patch) | |
tree | 3e4c623226371e22b5b3ec68545c6ff1c443785c | |
parent | a1d9bc12e06a71b01f626040dc5149b357e8f1eb (diff) |
USB: support more Huawei data card product IDs
- declare the unusal device for Huawei data card devices in
unusual_devs.h
- disable the product ID matching for Huawei data card devices in
usb_match_device function of driver.c
- declare the product IDs in option.c.
Signed-off-by: fangxiaozhi <huananhu@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/usb/serial/option.c | 32 | ||||
-rw-r--r-- | drivers/usb/storage/unusual_devs.h | 96 |
2 files changed, 124 insertions, 4 deletions
diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c index 01b6c681ff2d..d5306ea55b3e 100644 --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c | |||
@@ -109,6 +109,22 @@ static int option_send_setup(struct usb_serial_port *port); | |||
109 | #define HUAWEI_PRODUCT_E600 0x1001 | 109 | #define HUAWEI_PRODUCT_E600 0x1001 |
110 | #define HUAWEI_PRODUCT_E220 0x1003 | 110 | #define HUAWEI_PRODUCT_E220 0x1003 |
111 | #define HUAWEI_PRODUCT_E220BIS 0x1004 | 111 | #define HUAWEI_PRODUCT_E220BIS 0x1004 |
112 | #define HUAWEI_PRODUCT_E1401 0x1401 | ||
113 | #define HUAWEI_PRODUCT_E1403 0x1403 | ||
114 | #define HUAWEI_PRODUCT_E1405 0x1405 | ||
115 | #define HUAWEI_PRODUCT_E1406 0x1406 | ||
116 | #define HUAWEI_PRODUCT_E1408 0x1408 | ||
117 | #define HUAWEI_PRODUCT_E1409 0x1409 | ||
118 | #define HUAWEI_PRODUCT_E1410 0x1410 | ||
119 | #define HUAWEI_PRODUCT_E1411 0x1411 | ||
120 | #define HUAWEI_PRODUCT_E1412 0x1412 | ||
121 | #define HUAWEI_PRODUCT_E1413 0x1413 | ||
122 | #define HUAWEI_PRODUCT_E1414 0x1414 | ||
123 | #define HUAWEI_PRODUCT_E1415 0x1415 | ||
124 | #define HUAWEI_PRODUCT_E1416 0x1416 | ||
125 | #define HUAWEI_PRODUCT_E1417 0x1417 | ||
126 | #define HUAWEI_PRODUCT_E1418 0x1418 | ||
127 | #define HUAWEI_PRODUCT_E1419 0x1419 | ||
112 | 128 | ||
113 | #define NOVATELWIRELESS_VENDOR_ID 0x1410 | 129 | #define NOVATELWIRELESS_VENDOR_ID 0x1410 |
114 | 130 | ||
@@ -212,6 +228,22 @@ static struct usb_device_id option_ids[] = { | |||
212 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E600) }, | 228 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E600) }, |
213 | { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220, 0xff, 0xff, 0xff) }, | 229 | { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220, 0xff, 0xff, 0xff) }, |
214 | { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220BIS, 0xff, 0xff, 0xff) }, | 230 | { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220BIS, 0xff, 0xff, 0xff) }, |
231 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1401) }, | ||
232 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1403) }, | ||
233 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1405) }, | ||
234 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1406) }, | ||
235 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1408) }, | ||
236 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1409) }, | ||
237 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1410) }, | ||
238 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1411) }, | ||
239 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1412) }, | ||
240 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1413) }, | ||
241 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1414) }, | ||
242 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1415) }, | ||
243 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1416) }, | ||
244 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1417) }, | ||
245 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1418) }, | ||
246 | { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1419) }, | ||
215 | { USB_DEVICE(AMOI_VENDOR_ID, AMOI_PRODUCT_9508) }, | 247 | { USB_DEVICE(AMOI_VENDOR_ID, AMOI_PRODUCT_9508) }, |
216 | { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_V640) }, /* Novatel Merlin V640/XV620 */ | 248 | { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_V640) }, /* Novatel Merlin V640/XV620 */ |
217 | { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_V620) }, /* Novatel Merlin V620/S620 */ | 249 | { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_V620) }, /* Novatel Merlin V620/S620 */ |
diff --git a/drivers/usb/storage/unusual_devs.h b/drivers/usb/storage/unusual_devs.h index e5219a56947c..91252075e6e1 100644 --- a/drivers/usb/storage/unusual_devs.h +++ b/drivers/usb/storage/unusual_devs.h | |||
@@ -1530,16 +1530,104 @@ UNUSUAL_DEV( 0x1210, 0x0003, 0x0100, 0x0100, | |||
1530 | US_SC_DEVICE, US_PR_DEVICE, NULL, | 1530 | US_SC_DEVICE, US_PR_DEVICE, NULL, |
1531 | US_FL_IGNORE_RESIDUE ), | 1531 | US_FL_IGNORE_RESIDUE ), |
1532 | 1532 | ||
1533 | /* Reported by fangxiaozhi <fangxiaozhi60675@huawei.com> | 1533 | /* Reported by fangxiaozhi <huananhu@huawei.com> |
1534 | * and by linlei <linlei83@huawei.com> | 1534 | * This brings the HUAWEI data card devices into multi-port mode |
1535 | * Patch reworked by Johann Wilhelm <johann.wilhelm@student.tugraz.at> | ||
1536 | * This brings the HUAWEI E220 devices into multi-port mode | ||
1537 | */ | 1535 | */ |
1536 | UNUSUAL_DEV( 0x12d1, 0x1001, 0x0000, 0x0000, | ||
1537 | "HUAWEI MOBILE", | ||
1538 | "Mass Storage", | ||
1539 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1540 | 0), | ||
1538 | UNUSUAL_DEV( 0x12d1, 0x1003, 0x0000, 0x0000, | 1541 | UNUSUAL_DEV( 0x12d1, 0x1003, 0x0000, 0x0000, |
1539 | "HUAWEI MOBILE", | 1542 | "HUAWEI MOBILE", |
1540 | "Mass Storage", | 1543 | "Mass Storage", |
1541 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | 1544 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, |
1542 | 0), | 1545 | 0), |
1546 | UNUSUAL_DEV( 0x12d1, 0x1004, 0x0000, 0x0000, | ||
1547 | "HUAWEI MOBILE", | ||
1548 | "Mass Storage", | ||
1549 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1550 | 0), | ||
1551 | UNUSUAL_DEV( 0x12d1, 0x1401, 0x0000, 0x0000, | ||
1552 | "HUAWEI MOBILE", | ||
1553 | "Mass Storage", | ||
1554 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1555 | 0), | ||
1556 | UNUSUAL_DEV( 0x12d1, 0x1403, 0x0000, 0x0000, | ||
1557 | "HUAWEI MOBILE", | ||
1558 | "Mass Storage", | ||
1559 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1560 | 0), | ||
1561 | UNUSUAL_DEV( 0x12d1, 0x1405, 0x0000, 0x0000, | ||
1562 | "HUAWEI MOBILE", | ||
1563 | "Mass Storage", | ||
1564 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1565 | 0), | ||
1566 | UNUSUAL_DEV( 0x12d1, 0x1406, 0x0000, 0x0000, | ||
1567 | "HUAWEI MOBILE", | ||
1568 | "Mass Storage", | ||
1569 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1570 | 0), | ||
1571 | UNUSUAL_DEV( 0x12d1, 0x1408, 0x0000, 0x0000, | ||
1572 | "HUAWEI MOBILE", | ||
1573 | "Mass Storage", | ||
1574 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1575 | 0), | ||
1576 | UNUSUAL_DEV( 0x12d1, 0x1409, 0x0000, 0x0000, | ||
1577 | "HUAWEI MOBILE", | ||
1578 | "Mass Storage", | ||
1579 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1580 | 0), | ||
1581 | UNUSUAL_DEV( 0x12d1, 0x1410, 0x0000, 0x0000, | ||
1582 | "HUAWEI MOBILE", | ||
1583 | "Mass Storage", | ||
1584 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1585 | 0), | ||
1586 | UNUSUAL_DEV( 0x12d1, 0x1411, 0x0000, 0x0000, | ||
1587 | "HUAWEI MOBILE", | ||
1588 | "Mass Storage", | ||
1589 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1590 | 0), | ||
1591 | UNUSUAL_DEV( 0x12d1, 0x1412, 0x0000, 0x0000, | ||
1592 | "HUAWEI MOBILE", | ||
1593 | "Mass Storage", | ||
1594 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1595 | 0), | ||
1596 | UNUSUAL_DEV( 0x12d1, 0x1413, 0x0000, 0x0000, | ||
1597 | "HUAWEI MOBILE", | ||
1598 | "Mass Storage", | ||
1599 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1600 | 0), | ||
1601 | UNUSUAL_DEV( 0x12d1, 0x1414, 0x0000, 0x0000, | ||
1602 | "HUAWEI MOBILE", | ||
1603 | "Mass Storage", | ||
1604 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1605 | 0), | ||
1606 | UNUSUAL_DEV( 0x12d1, 0x1415, 0x0000, 0x0000, | ||
1607 | "HUAWEI MOBILE", | ||
1608 | "Mass Storage", | ||
1609 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1610 | 0), | ||
1611 | UNUSUAL_DEV( 0x12d1, 0x1416, 0x0000, 0x0000, | ||
1612 | "HUAWEI MOBILE", | ||
1613 | "Mass Storage", | ||
1614 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1615 | 0), | ||
1616 | UNUSUAL_DEV( 0x12d1, 0x1417, 0x0000, 0x0000, | ||
1617 | "HUAWEI MOBILE", | ||
1618 | "Mass Storage", | ||
1619 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1620 | 0), | ||
1621 | UNUSUAL_DEV( 0x12d1, 0x1418, 0x0000, 0x0000, | ||
1622 | "HUAWEI MOBILE", | ||
1623 | "Mass Storage", | ||
1624 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1625 | 0), | ||
1626 | UNUSUAL_DEV( 0x12d1, 0x1419, 0x0000, 0x0000, | ||
1627 | "HUAWEI MOBILE", | ||
1628 | "Mass Storage", | ||
1629 | US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init, | ||
1630 | 0), | ||
1543 | 1631 | ||
1544 | /* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */ | 1632 | /* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */ |
1545 | UNUSUAL_DEV( 0x132b, 0x000b, 0x0001, 0x0001, | 1633 | UNUSUAL_DEV( 0x132b, 0x000b, 0x0001, 0x0001, |