On Wed, Feb 06, 2013 at 05:24:12PM +0800, fangxiaozhi 00110321 wrote:
> From: fangxiaozhi <huana...@huawei.com>
> 
> 1. The idProduct is little endian, so make the product ID's value to be 
> little endian. Make no break on big endian processors.
> 
> Signed-off-by: fangxiaozhi <huana...@huawei.com>
> --------------------------------------------------------------------
> 
> diff -uprN linux-3.8-rc6_orig/drivers/usb/storage/initializers.c 
> linux-3.8-rc6/drivers/usb/storage/initializers.c
> --- linux-3.8-rc6_orig/drivers/usb/storage/initializers.c     2013-02-06 
> 14:48:51.564355283 +0800
> +++ linux-3.8-rc6/drivers/usb/storage/initializers.c  2013-02-06 
> 15:11:40.925434289 +0800
> @@ -152,12 +152,15 @@ static int usb_stor_huawei_dongles_pid(s
>        * means the dongle in the single port mode,
>        * and a switch command is required to be sent. */
>       if (idesc && idesc->bInterfaceNumber == 0) {
> -             if ((idProduct == 0x1001)
> -                     || (idProduct == 0x1003)
> -                     || (idProduct == 0x1004)
> -                     || (idProduct >= 0x1401 && idProduct <= 0x1500)
> -                     || (idProduct >= 0x1505 && idProduct <= 0x1600)
> -                     || (idProduct >= 0x1c02 && idProduct <= 0x2202)) {
> +             if ((idProduct == cpu_to_le16(0x1001))

No, this doesn't fix the sparse warning, and is way too complex (and
doesn't really work well either.)

Please do the conversion on the value when you assign it to idProduct
and then you will be fine.

Please run sparse on your patch to ensure you got it right, if you would
have done so here, it would have been pretty obvious.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to