[PATCH 10/4]linux-usb: To support more Huawei data card product IDs, fix kernel 2.6.26.5

Previous thread: none

Next thread: Create real-time process from shell script by gshan on Tuesday, September 23, 2008 - 6:55 pm. (4 messages)
From: fangxiaozhi 00110321
Date: Tuesday, September 23, 2008 - 7:07 pm

From: fangxiaozhi <huananhu@huawei.com>

1. This patch is based on the kernel of 2.6.26.5
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.

Signed-off-by: fangxiaozhi <huananhu@huawei.com>
---------------------------------------------------------------------------------
 
diff -urN -X linux-2.6.26.5/Documentation/dontdiff linux-2.6.26.5/drivers/usb/serial/option.c linux-2.6.26.5-vanilla/drivers/usb/serial/option.c
--- linux-2.6.26.5/drivers/usb/serial/option.c	2008-09-09 01:40:20.000000000 +0800
+++ linux-2.6.26.5-vanilla/drivers/usb/serial/option.c	2008-09-24 04:26:24.000000000 +0800
@@ -110,11 +110,20 @@
 #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
@@ -125,6 +134,44 @@
 #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 ...
From: Greg KH
Date: Tuesday, September 23, 2008 - 7:30 pm

Can you rebase this on 2.6.27-rc7 instead?  Lots of device ids have been

This should be split up into 4 different patches, as it does 4 different
things.  Care to redo it please?

thanks,

greg k-h
--

From: fangxiaozhi 00110321
Date: Tuesday, September 23, 2008 - 11:08 pm

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.
 
 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 ...
From: Alan Stern
Date: Wednesday, September 24, 2008 - 7:38 am

Is this really a good idea?  Haven't a lot of people worked on that 
function and carefully made it do what they want?  If yes then your 
changes will break their systems.


What reason is there for setting us->iobuf[0] to 0, or passing

Please use tabs for indentation, not spaces.

Alan Stern

--

From: Greg KH
Date: Wednesday, September 24, 2008 - 8:03 am

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
--

Previous thread: none

Next thread: Create real-time process from shell script by gshan on Tuesday, September 23, 2008 - 6:55 pm. (4 messages)