| From: =?UTF-8?q?Bj=C3=B8rn=20Mork?= <bjorn@mork.no> |
| Date: Mon, 2 Jul 2012 19:53:55 +0200 |
| Subject: USB: option: add ZTE MF60 |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| commit 8e16e33c168a6efd0c9f7fa9dd4c1e1db9a74553 upstream. |
| |
| Switches into a composite device by ejecting the initial |
| driver CD. The four interfaces are: QCDM, AT, QMI/wwan |
| and mass storage. Let this driver manage the two serial |
| interfaces: |
| |
| T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 28 Spd=480 MxCh= 0 |
| D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 |
| P: Vendor=19d2 ProdID=1402 Rev= 0.00 |
| S: Manufacturer=ZTE,Incorporated |
| S: Product=ZTE WCDMA Technologies MSM |
| S: SerialNumber=xxxxx |
| C:* #Ifs= 4 Cfg#= 1 Atr=c0 MxPwr=500mA |
| I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option |
| E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms |
| E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms |
| I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option |
| E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms |
| E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms |
| I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan |
| E: Ad=83(I) Atr=03(Int.) MxPS= 64 Ivl=2ms |
| E: Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms |
| E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms |
| I:* If#= 3 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage |
| E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms |
| E: Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms |
| |
| Signed-off-by: BjΓΈrn Mork <bjorn@mork.no> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| Signed-off-by: Ben Hutchings <ben@decadent.org.uk> |
| --- |
| drivers/usb/serial/option.c | 6 ++++++ |
| 1 file changed, 6 insertions(+) |
| |
| diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c |
| index adf8ce7..167aed8 100644 |
| --- a/drivers/usb/serial/option.c |
| +++ b/drivers/usb/serial/option.c |
| @@ -554,6 +554,10 @@ static const struct option_blacklist_info net_intf1_blacklist = { |
| .reserved = BIT(1), |
| }; |
| |
| +static const struct option_blacklist_info net_intf2_blacklist = { |
| + .reserved = BIT(2), |
| +}; |
| + |
| static const struct option_blacklist_info net_intf3_blacklist = { |
| .reserved = BIT(3), |
| }; |
| @@ -1099,6 +1103,8 @@ static const struct usb_device_id option_ids[] = { |
| { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1298, 0xff, 0xff, 0xff) }, |
| { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1299, 0xff, 0xff, 0xff) }, |
| { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1300, 0xff, 0xff, 0xff) }, |
| + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1402, 0xff, 0xff, 0xff), |
| + .driver_info = (kernel_ulong_t)&net_intf2_blacklist }, |
| { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x2002, 0xff, |
| 0xff, 0xff), .driver_info = (kernel_ulong_t)&zte_k3765_z_blacklist }, |
| { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x2003, 0xff, 0xff, 0xff) }, |