All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: PATCH 10/4]linux-usb: To support more Huawei data card productIDs, fix kernel 2.6.27-rc7
  2008-09-24 15:03   ` Greg KH
@ 2008-09-25  1:36     ` Franko Fang
  2008-09-25  2:10       ` Greg KH
  0 siblings, 1 reply; 6+ messages in thread
From: Franko Fang @ 2008-09-25  1:36 UTC (permalink / raw)
  To: Greg KH; +Cc: linux-usb, linux-kernel, zihan, Lin.Lei, zhangqianchun

1. In this patch, we want to do one thing: add more Huawei product IDs into the USB driver. Then it can support  more Huawei data card devices. 
    So I make them in one patch.

2. To change usb_stor_huawei_e220_init function as follows, that's because in the USB standard, while sending SET_FETURE_D to the device, it requires the corresponding data to be zero, and its sending length also must be zero.
    In our old solution, it can be compatible with our WCDMA data card devices, but can not support our CDMA data card devices. 
    But in this new solution, it can be compatible with all of our data card devices.

    Hope that my interpreting can satify you.
-----------------------------
>> --- linux-2.6.27-rc7-orig/drivers/usb/storage/initializers.c 2008-09-22 06:29:55.000000000 +0800
>> +++ linux-2.6.27-rc7/drivers/usb/storage/initializers.c 2008-09-24 12:04:40.000000000 +0800
>> @@ -95,11 +95,11 @@ int usb_stor_huawei_e220_init(struct us_
>>  {
>>  int result;
>>  
>> - us->iobuf[0] = 0x1;
>> + us->iobuf[0] = 0x0;
>>  result = usb_stor_control_msg(us, us->send_ctrl_pipe,
>>        USB_REQ_SET_FEATURE,
>>        USB_TYPE_STANDARD | USB_RECIP_DEVICE,
>> -       0x01, 0x0, us->iobuf, 0x1, 1000);
>> +       0x01, 0x0, us->iobuf, 0x0, 1000);
-------------------------------------------------------------------------

Franko Fang
2008-9-25



----- Original Message ----- 
From: "Greg KH" <greg@kroah.com>
To: "fangxiaozhi 00110321" <huananhu@huawei.com>
Cc: <linux-usb@vger.kernel.org>; <linux-kernel@vger.kernel.org>; <zihan@huawei.com>; <Lin.Lei@huawei.com>; <zhangqianchun@huawei.com>
Sent: Wednesday, September 24, 2008 11:03 PM
Subject: Re: PATCH 10/4]linux-usb: To support more Huawei data card productIDs, fix kernel 2.6.27-rc7


> On Wed, Sep 24, 2008 at 02:08:12PM +0800, fangxiaozhi 00110321 wrote:
>> 
>>  From: fangxiaozhi <huananhu@huawei.com>
>>  
>>  1. This patch is based on the kernel of 2.6.27-rc7 2. To declare the unusual device for new Huawei data card devices 
>>  in unusual_devs.h
>>  3. To modify the data value and length in the function of 
>>  usb_stor_huawei_e220_init in initializers.c
>>  4. To declare more new product IDs in option.c.
> 
> I thought I asked you to split this up into 4 different patches?  Hm,
> maybe three should be all that is needed, I thought your original one
> did 4 different things.
> 
> And isn't your modification of the usb_stor_huawei_e220_init function
> going to break the devices that it currently works for?  Or has it
> always been wrong?
> 
> thanks,
> 
> greg k-h

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: PATCH 10/4]linux-usb: To support more Huawei data card productIDs, fix kernel 2.6.27-rc7
  2008-09-25  1:36     ` PATCH 10/4]linux-usb: To support more Huawei data card productIDs, " Franko Fang
@ 2008-09-25  2:10       ` Greg KH
  0 siblings, 0 replies; 6+ messages in thread
From: Greg KH @ 2008-09-25  2:10 UTC (permalink / raw)
  To: Franko Fang; +Cc: linux-usb, linux-kernel, zihan, Lin.Lei, zhangqianchun

On Thu, Sep 25, 2008 at 09:36:29AM +0800, Franko Fang wrote:
> 1. In this patch, we want to do one thing: add more Huawei product IDs into the USB driver. Then it can support  more Huawei data card devices. 
>     So I make them in one patch.
> 
> 2. To change usb_stor_huawei_e220_init function as follows, that's because in the USB standard, while sending SET_FETURE_D to the device, it requires the corresponding data to be zero, and its sending length also must be zero.
>     In our old solution, it can be compatible with our WCDMA data card devices, but can not support our CDMA data card devices. 
>     But in this new solution, it can be compatible with all of our data card devices.
> 
>     Hope that my interpreting can satify you.

Ok, that sounds reasonable.  How about resending the patch, and adding
this information to the changelog area so that others also understand
what is going on here.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 6+ messages in thread

* PATCH 10/4]linux-usb: To support more Huawei data card product IDs, fix kernel 2.6.27-rc7
@ 2008-10-08  1:31 fangxiaozhi 00110321
  2008-10-08  3:21 ` Greg KH
  2008-10-08 14:07 ` PATCH 10/4]linux-usb: To support more Huawei data card product IDs, " Alan Stern
  0 siblings, 2 replies; 6+ messages in thread
From: fangxiaozhi 00110321 @ 2008-10-08  1:31 UTC (permalink / raw)
  To: linux-usb; +Cc: linux-kernel, zihan, zhangqianchun, greg

  From: fangxiaozhi <huananhu@huawei.com>
 
 1. This patch is based on the kernel of 2.6.27-rc7 
 2. In this patch, we want to do one thing: add more Huawei product IDs into the USB driver. Then it can support  more Huawei data card devices. So to declare the unusual device for new Huawei data card devices 
 in unusual_devs.h and to declare more new product IDs in option.c.
 3. To modify the data value and length in the function of 
 usb_stor_huawei_e220_init in initializers.c
   That's because based on the USB standard, while sending SET_FETURE_D to the device, it requires the corresponding data to be zero, and its sending length also must be zero.
   In our old solution, it can be compatible with our WCDMA data card devices, but can not support our CDMA data card devices. 
    But in this new solution, it can be compatible with all of our data card devices.

 Signed-off-by: fangxiaozhi <huananhu@huawei.com>
 -------------------------------------------------------------------

diff -uprN -X linux-2.6.27-rc7-orig/Documentation/dontdiff linux-2.6.27-rc7-orig/drivers/usb/serial/option.c linux-2.6.27-rc7/drivers/usb/serial/option.c
--- linux-2.6.27-rc7-orig/drivers/usb/serial/option.c 2008-09-22 06:29:55.000000000 +0800
+++ linux-2.6.27-rc7/drivers/usb/serial/option.c 2008-09-24 12:00:14.000000000 +0800
@@ -106,11 +106,20 @@ static int  option_send_setup(struct tty
 #define HUAWEI_PRODUCT_E220                 0x1003
 #define HUAWEI_PRODUCT_E220BIS                 0x1004
 #define HUAWEI_PRODUCT_E1401                 0x1401
+#define HUAWEI_PRODUCT_E1402                 0x1402
 #define HUAWEI_PRODUCT_E1403                 0x1403
+#define HUAWEI_PRODUCT_E1404                 0x1404
 #define HUAWEI_PRODUCT_E1405                 0x1405
 #define HUAWEI_PRODUCT_E1406                 0x1406
+#define HUAWEI_PRODUCT_E1407                 0x1407
 #define HUAWEI_PRODUCT_E1408                 0x1408
 #define HUAWEI_PRODUCT_E1409                 0x1409
+#define HUAWEI_PRODUCT_E140A                 0x140A
+#define HUAWEI_PRODUCT_E140B                 0x140B
+#define HUAWEI_PRODUCT_E140C                 0x140C
+#define HUAWEI_PRODUCT_E140D                 0x140D
+#define HUAWEI_PRODUCT_E140E                 0x140E
+#define HUAWEI_PRODUCT_E140F                 0x140F
 #define HUAWEI_PRODUCT_E1410                 0x1410
 #define HUAWEI_PRODUCT_E1411                 0x1411
 #define HUAWEI_PRODUCT_E1412                 0x1412
@@ -121,6 +130,44 @@ static int  option_send_setup(struct tty
 #define HUAWEI_PRODUCT_E1417                 0x1417
 #define HUAWEI_PRODUCT_E1418                 0x1418
 #define HUAWEI_PRODUCT_E1419                 0x1419
+#define HUAWEI_PRODUCT_E141A                 0x141A
+#define HUAWEI_PRODUCT_E141B                 0x141B
+#define HUAWEI_PRODUCT_E141C                 0x141C
+#define HUAWEI_PRODUCT_E141D                 0x141D
+#define HUAWEI_PRODUCT_E141E                 0x141E
+#define HUAWEI_PRODUCT_E141F                 0x141F
+#define HUAWEI_PRODUCT_E1420                 0x1420
+#define HUAWEI_PRODUCT_E1421                 0x1421
+#define HUAWEI_PRODUCT_E1422                 0x1422
+#define HUAWEI_PRODUCT_E1423                 0x1423
+#define HUAWEI_PRODUCT_E1424                 0x1424
+#define HUAWEI_PRODUCT_E1425                 0x1425
+#define HUAWEI_PRODUCT_E1426                 0x1426
+#define HUAWEI_PRODUCT_E1427                 0x1427
+#define HUAWEI_PRODUCT_E1428                 0x1428
+#define HUAWEI_PRODUCT_E1429                 0x1429
+#define HUAWEI_PRODUCT_E142A                 0x142A
+#define HUAWEI_PRODUCT_E142B                 0x142B
+#define HUAWEI_PRODUCT_E142C                 0x142C
+#define HUAWEI_PRODUCT_E142D                 0x142D
+#define HUAWEI_PRODUCT_E142E                 0x142E
+#define HUAWEI_PRODUCT_E142F                 0x142F
+#define HUAWEI_PRODUCT_E1430                 0x1430
+#define HUAWEI_PRODUCT_E1431                 0x1431
+#define HUAWEI_PRODUCT_E1432                 0x1432
+#define HUAWEI_PRODUCT_E1433                 0x1433
+#define HUAWEI_PRODUCT_E1434                 0x1434
+#define HUAWEI_PRODUCT_E1435                 0x1435
+#define HUAWEI_PRODUCT_E1436                 0x1436
+#define HUAWEI_PRODUCT_E1437                 0x1437
+#define HUAWEI_PRODUCT_E1438                 0x1438
+#define HUAWEI_PRODUCT_E1439                 0x1439
+#define HUAWEI_PRODUCT_E143A                 0x143A
+#define HUAWEI_PRODUCT_E143B                 0x143B
+#define HUAWEI_PRODUCT_E143C                 0x143C
+#define HUAWEI_PRODUCT_E143D                 0x143D
+#define HUAWEI_PRODUCT_E143E                 0x143E
+#define HUAWEI_PRODUCT_E143F                 0x143F
 
 #define NOVATELWIRELESS_VENDOR_ID         0x1410
 
@@ -259,11 +306,20 @@ static struct usb_device_id option_ids[]
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220BIS, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1401, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1402, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1403, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1404, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1405, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1406, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1407, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1408, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1409, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E140A, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E140B, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E140C, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E140D, 0xff, 0xff, 0xff) }, 
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E140E, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E140F, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1410, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1411, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1412, 0xff, 0xff, 0xff) },
@@ -274,6 +330,44 @@ static struct usb_device_id option_ids[]
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1417, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1418, 0xff, 0xff, 0xff) },
  { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1419, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E141A, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E141B, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E141C, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E141D, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E141E, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E141F, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1420, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1421, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1422, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1423, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1424, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1425, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1426, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1427, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1428, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1429, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E142A, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E142B, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E142C, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E142D, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E142E, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E142F, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1430, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1431, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1432, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1433, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1434, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1435, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1436, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1437, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1438, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E1439, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E143A, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E143B, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E143C, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E143D, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E143E, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E143F, 0xff, 0xff, 0xff) },
  { USB_DEVICE(AMOI_VENDOR_ID, AMOI_PRODUCT_9508) },
  { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_V640) }, /* Novatel Merlin V640/XV620 */
  { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_V620) }, /* Novatel Merlin V620/S620 */
diff -uprN -X linux-2.6.27-rc7-orig/Documentation/dontdiff linux-2.6.27-rc7-orig/drivers/usb/storage/initializers.c linux-2.6.27-rc7/drivers/usb/storage/initializers.c
--- linux-2.6.27-rc7-orig/drivers/usb/storage/initializers.c 2008-09-22 06:29:55.000000000 +0800
+++ linux-2.6.27-rc7/drivers/usb/storage/initializers.c 2008-09-24 12:04:40.000000000 +0800
@@ -95,11 +95,11 @@ int usb_stor_huawei_e220_init(struct us_
 {
  int result;
 
- us->iobuf[0] = 0x1;
+ us->iobuf[0] = 0x0;
  result = usb_stor_control_msg(us, us->send_ctrl_pipe,
                                       USB_REQ_SET_FEATURE,
                                       USB_TYPE_STANDARD | USB_RECIP_DEVICE,
-                                      0x01, 0x0, us->iobuf, 0x1, 1000);
+                                      0x01, 0x0, us->iobuf, 0x0, 1000);
  US_DEBUGP("usb_control_msg performing result is %d\n", result);
  return (result ? 0 : -1);
 }
diff -uprN -X linux-2.6.27-rc7-orig/Documentation/dontdiff linux-2.6.27-rc7-orig/drivers/usb/storage/unusual_devs.h linux-2.6.27-rc7/drivers/usb/storage/unusual_devs.h
--- linux-2.6.27-rc7-orig/drivers/usb/storage/unusual_devs.h 2008-09-22 06:29:55.000000000 +0800
+++ linux-2.6.27-rc7/drivers/usb/storage/unusual_devs.h 2008-09-24 12:08:58.000000000 +0800
@@ -1622,11 +1622,21 @@ UNUSUAL_DEV( 0x12d1, 0x1401, 0x0000, 0x0
          "Mass Storage",
          US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
          0),
+UNUSUAL_DEV( 0x12d1, 0x1402, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),         
 UNUSUAL_DEV( 0x12d1, 0x1403, 0x0000, 0x0000,
          "HUAWEI MOBILE",
          "Mass Storage",
          US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
          0),
+UNUSUAL_DEV( 0x12d1, 0x1404, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
 UNUSUAL_DEV( 0x12d1, 0x1405, 0x0000, 0x0000,
          "HUAWEI MOBILE",
          "Mass Storage",
@@ -1637,6 +1647,11 @@ UNUSUAL_DEV( 0x12d1, 0x1406, 0x0000, 0x0
          "Mass Storage",
          US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
          0),
+UNUSUAL_DEV( 0x12d1, 0x1407, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
 UNUSUAL_DEV( 0x12d1, 0x1408, 0x0000, 0x0000,
          "HUAWEI MOBILE",
          "Mass Storage",
@@ -1647,6 +1662,36 @@ UNUSUAL_DEV( 0x12d1, 0x1409, 0x0000, 0x0
          "Mass Storage",
          US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
          0),
+UNUSUAL_DEV( 0x12d1, 0x140A, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),  
+UNUSUAL_DEV( 0x12d1, 0x140B, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0), 
+UNUSUAL_DEV( 0x12d1, 0x140C, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),  
+UNUSUAL_DEV( 0x12d1, 0x140D, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0), 
+UNUSUAL_DEV( 0x12d1, 0x140E, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0), 
+UNUSUAL_DEV( 0x12d1, 0x140F, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
 UNUSUAL_DEV( 0x12d1, 0x1410, 0x0000, 0x0000,
          "HUAWEI MOBILE",
          "Mass Storage",
@@ -1697,6 +1742,196 @@ UNUSUAL_DEV( 0x12d1, 0x1419, 0x0000, 0x0
          "Mass Storage",
          US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
          0),
+UNUSUAL_DEV( 0x12d1, 0x141A, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+ UNUSUAL_DEV( 0x12d1, 0x141B, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x141C, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x141D, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x141E, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+ UNUSUAL_DEV( 0x12d1, 0x141F, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1420, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1421, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1422, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+ UNUSUAL_DEV( 0x12d1, 0x1423, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1424, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1425, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1426, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+ UNUSUAL_DEV( 0x12d1, 0x1427, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1428, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1429, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x142A, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x142B, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x142C, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+ UNUSUAL_DEV( 0x12d1, 0x142D, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x142E, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x142F, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1430, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+ UNUSUAL_DEV( 0x12d1, 0x1431, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1432, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1433, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1434, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+ UNUSUAL_DEV( 0x12d1, 0x1435, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1436, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1437, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x1438, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+ UNUSUAL_DEV( 0x12d1, 0x1439, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x143A, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x143B, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x143C, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x143D, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+ UNUSUAL_DEV( 0x12d1, 0x143E, 0x0000, 0x0000,
+                "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
+UNUSUAL_DEV( 0x12d1, 0x143F, 0x0000, 0x0000,
+               "HUAWEI MOBILE",
+         "Mass Storage",
+         US_SC_DEVICE, US_PR_DEVICE, usb_stor_huawei_e220_init,
+                0),
 
 /* Reported by Vilius Bilinkevicius <vilisas AT xxx DOT lt) */
 UNUSUAL_DEV(  0x132b, 0x000b, 0x0001, 0x0001,


******************************************************************************************
 This email and its attachments contain confidential information from HUAWEI, which is intended only for the person or entity whose address is listed above. Any use of the information contained here in any way (including, but not limited to, total or partial disclosure, reproduction, or dissemination) by persons other than the intended recipient(s) is prohibited. If you receive this email in error, please notify the sender by phone or email
 immediately and delete it!
 *****************************************************************************************

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: PATCH 10/4]linux-usb: To support more Huawei data card product IDs, fix kernel 2.6.27-rc7
  2008-10-08  1:31 PATCH 10/4]linux-usb: To support more Huawei data card product IDs, fix kernel 2.6.27-rc7 fangxiaozhi 00110321
@ 2008-10-08  3:21 ` Greg KH
  2008-10-08  3:58   ` PATCH 10/4]linux-usb: To support more Huawei data card productIDs, " Franko Fang
  2008-10-08 14:07 ` PATCH 10/4]linux-usb: To support more Huawei data card product IDs, " Alan Stern
  1 sibling, 1 reply; 6+ messages in thread
From: Greg KH @ 2008-10-08  3:21 UTC (permalink / raw)
  To: fangxiaozhi 00110321; +Cc: linux-usb, linux-kernel, zihan, zhangqianchun

On Wed, Oct 08, 2008 at 09:31:35AM +0800, fangxiaozhi 00110321 wrote:
>   From: fangxiaozhi <huananhu@huawei.com>
>  
>  1. This patch is based on the kernel of 2.6.27-rc7 
>  2. In this patch, we want to do one thing: add more Huawei product IDs into the USB driver. Then it can support  more Huawei data card devices. So to declare the unusual device for new Huawei data card devices 
>  in unusual_devs.h and to declare more new product IDs in option.c.
>  3. To modify the data value and length in the function of 
>  usb_stor_huawei_e220_init in initializers.c
>    That's because based on the USB standard, while sending SET_FETURE_D to the device, it requires the corresponding data to be zero, and its sending length also must be zero.
>    In our old solution, it can be compatible with our WCDMA data card devices, but can not support our CDMA data card devices. 
>     But in this new solution, it can be compatible with all of our data card devices.
> 
>  Signed-off-by: fangxiaozhi <huananhu@huawei.com>
>  -------------------------------------------------------------------
> 
> diff -uprN -X linux-2.6.27-rc7-orig/Documentation/dontdiff linux-2.6.27-rc7-orig/drivers/usb/serial/option.c linux-2.6.27-rc7/drivers/usb/serial/option.c
> --- linux-2.6.27-rc7-orig/drivers/usb/serial/option.c 2008-09-22 06:29:55.000000000 +0800
> +++ linux-2.6.27-rc7/drivers/usb/serial/option.c 2008-09-24 12:00:14.000000000 +0800
> @@ -106,11 +106,20 @@ static int  option_send_setup(struct tty
>  #define HUAWEI_PRODUCT_E220                 0x1003
>  #define HUAWEI_PRODUCT_E220BIS                 0x1004
>  #define HUAWEI_PRODUCT_E1401                 0x1401
> +#define HUAWEI_PRODUCT_E1402                 0x1402

Hm, all of the tabs seem to have been converted to spaces in this patch,
and it does not apply at all.

Care to fix your email client settings and try again?

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: PATCH 10/4]linux-usb: To support more Huawei data card productIDs, fix kernel 2.6.27-rc7
  2008-10-08  3:21 ` Greg KH
@ 2008-10-08  3:58   ` Franko Fang
  0 siblings, 0 replies; 6+ messages in thread
From: Franko Fang @ 2008-10-08  3:58 UTC (permalink / raw)
  To: Greg KH; +Cc: linux-usb, linux-kernel, zihan, zhangqianchun

Well, ok, and I will try it again.
Thanks.

----- Original Message ----- 
From: "Greg KH" <greg@kroah.com>
To: "fangxiaozhi 00110321" <huananhu@huawei.com>
Cc: <linux-usb@vger.kernel.org>; <linux-kernel@vger.kernel.org>; <zihan@huawei.com>; <zhangqianchun@huawei.com>
Sent: Wednesday, October 08, 2008 11:21 AM
Subject: Re: PATCH 10/4]linux-usb: To support more Huawei data card productIDs, fix kernel 2.6.27-rc7


> On Wed, Oct 08, 2008 at 09:31:35AM +0800, fangxiaozhi 00110321 wrote:
>>   From: fangxiaozhi <huananhu@huawei.com>
>>  
>>  1. This patch is based on the kernel of 2.6.27-rc7 
>>  2. In this patch, we want to do one thing: add more Huawei product IDs into the USB driver. Then it can support  more Huawei data card devices. So to declare the unusual device for new Huawei data card devices 
>>  in unusual_devs.h and to declare more new product IDs in option.c.
>>  3. To modify the data value and length in the function of 
>>  usb_stor_huawei_e220_init in initializers.c
>>    That's because based on the USB standard, while sending SET_FETURE_D to the device, it requires the corresponding data to be zero, and its sending length also must be zero.
>>    In our old solution, it can be compatible with our WCDMA data card devices, but can not support our CDMA data card devices. 
>>     But in this new solution, it can be compatible with all of our data card devices.
>> 
>>  Signed-off-by: fangxiaozhi <huananhu@huawei.com>
>>  -------------------------------------------------------------------
>> 
>> diff -uprN -X linux-2.6.27-rc7-orig/Documentation/dontdiff linux-2.6.27-rc7-orig/drivers/usb/serial/option.c linux-2.6.27-rc7/drivers/usb/serial/option.c
>> --- linux-2.6.27-rc7-orig/drivers/usb/serial/option.c 2008-09-22 06:29:55.000000000 +0800
>> +++ linux-2.6.27-rc7/drivers/usb/serial/option.c 2008-09-24 12:00:14.000000000 +0800
>> @@ -106,11 +106,20 @@ static int  option_send_setup(struct tty
>>  #define HUAWEI_PRODUCT_E220                 0x1003
>>  #define HUAWEI_PRODUCT_E220BIS                 0x1004
>>  #define HUAWEI_PRODUCT_E1401                 0x1401
>> +#define HUAWEI_PRODUCT_E1402                 0x1402
> 
> Hm, all of the tabs seem to have been converted to spaces in this patch,
> and it does not apply at all.
> 
> Care to fix your email client settings and try again?
> 
> thanks,
> 
> greg k-h

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: PATCH 10/4]linux-usb: To support more Huawei data card product IDs, fix kernel 2.6.27-rc7
  2008-10-08  1:31 PATCH 10/4]linux-usb: To support more Huawei data card product IDs, fix kernel 2.6.27-rc7 fangxiaozhi 00110321
  2008-10-08  3:21 ` Greg KH
@ 2008-10-08 14:07 ` Alan Stern
  1 sibling, 0 replies; 6+ messages in thread
From: Alan Stern @ 2008-10-08 14:07 UTC (permalink / raw)
  To: fangxiaozhi 00110321; +Cc: linux-usb, linux-kernel, zihan, zhangqianchun, greg

On Wed, 8 Oct 2008, fangxiaozhi 00110321 wrote:

> --- linux-2.6.27-rc7-orig/drivers/usb/storage/initializers.c 2008-09-22 06:29:55.000000000 +0800
> +++ linux-2.6.27-rc7/drivers/usb/storage/initializers.c 2008-09-24 12:04:40.000000000 +0800
> @@ -95,11 +95,11 @@ int usb_stor_huawei_e220_init(struct us_
>  {
>   int result;
>  
> - us->iobuf[0] = 0x1;
> + us->iobuf[0] = 0x0;
>   result = usb_stor_control_msg(us, us->send_ctrl_pipe,
>                                        USB_REQ_SET_FEATURE,
>                                        USB_TYPE_STANDARD | USB_RECIP_DEVICE,
> -                                      0x01, 0x0, us->iobuf, 0x1, 1000);
> +                                      0x01, 0x0, us->iobuf, 0x0, 1000);

If you insist on doing this, you should at least do it right.

Take out entirely the line that sets usb->iobuf[0], and replace
us->iobuf in the line above with NULL.  You can also replace your
foolish-looking 0x0 with a plain simple 0 -- after all, 0 is 0 whether
in base 10 or base 16.

Alan Stern


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-10-08 14:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-08  1:31 PATCH 10/4]linux-usb: To support more Huawei data card product IDs, fix kernel 2.6.27-rc7 fangxiaozhi 00110321
2008-10-08  3:21 ` Greg KH
2008-10-08  3:58   ` PATCH 10/4]linux-usb: To support more Huawei data card productIDs, " Franko Fang
2008-10-08 14:07 ` PATCH 10/4]linux-usb: To support more Huawei data card product IDs, " Alan Stern
  -- strict thread matches above, loose matches on Subject: below --
2008-09-24  2:07 [PATCH 10/4]linux-usb: To support more Huawei data card product IDs, fix kernel 2.6.26.5 fangxiaozhi 00110321
2008-09-24  6:08 ` PATCH 10/4]linux-usb: To support more Huawei data card product IDs, fix kernel 2.6.27-rc7 fangxiaozhi 00110321
2008-09-24 15:03   ` Greg KH
2008-09-25  1:36     ` PATCH 10/4]linux-usb: To support more Huawei data card productIDs, " Franko Fang
2008-09-25  2:10       ` Greg KH

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.