Re: USB mass storage and RCA VR5220

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 On 10/05/10 10:34, Alan Stern wrote:
> On Mon, 4 Oct 2010, James wrote:
>
>>  The patch works.
> Here is a slightly revised version.  This patch will print a warning 
> message in the system log to let you know that the device is out of 
> spec, but will allow it to be used anyway.
>
> If this version works okay with your device, I'll submit it for 
> inclusion in the -stable kernel series.
>
> Alan Stern
>
>
>
> Index: usb-2.6/drivers/usb/core/hub.c
> ===================================================================
> --- usb-2.6.orig/drivers/usb/core/hub.c
> +++ usb-2.6/drivers/usb/core/hub.c
> @@ -2882,13 +2882,16 @@ hub_port_init (struct usb_hub *hub, stru
>  	else
>  		i = udev->descriptor.bMaxPacketSize0;
>  	if (le16_to_cpu(udev->ep0.desc.wMaxPacketSize) != i) {
> -		if (udev->speed != USB_SPEED_FULL ||
> +		if (udev->speed == USB_SPEED_LOW ||
>  				!(i == 8 || i == 16 || i == 32 || i == 64)) {
> -			dev_err(&udev->dev, "ep0 maxpacket = %d\n", i);
> +			dev_err(&udev->dev, "Invalid ep0 maxpacket: %d\n", i);
>  			retval = -EMSGSIZE;
>  			goto fail;
>  		}
> -		dev_dbg(&udev->dev, "ep0 maxpacket = %d\n", i);
> +		if (udev->speed == USB_SPEED_FULL)
> +			dev_dbg(&udev->dev, "ep0 maxpacket = %d\n", i);
> +		else
> +			dev_warn(&udev->dev, "Using ep0 maxpacket: %d\n", i);
>  		udev->ep0.desc.wMaxPacketSize = cpu_to_le16(i);
>  		usb_ep0_reinit(udev);
>  	}
>
> --
usb 1-2: new high speed USB device using ehci_hcd and address 7
usb 1-2: Using ep0 maxpacket: 32
usb 1-2: New USB device found, idVendor=1fdd, idProduct=0001
usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
scsi5 : usb-storage 1-2:1.0
scsi 5:0:0:0: Direct-Access     RCA      VR5220           1.00 PQ: 0 ANSI: 2
sd 5:0:0:0: [sdb] 999424 512-byte logical blocks: (511 MB/488 MiB)
sd 5:0:0:0: [sdb] Write Protect is off
sd 5:0:0:0: [sdb] Mode Sense: 00 00 00 00
sd 5:0:0:0: [sdb] Assuming drive cache: write through
sd 5:0:0:0: [sdb] Assuming drive cache: write through
 sdb:
sd 5:0:0:0: [sdb] Assuming drive cache: write through
sd 5:0:0:0: [sdb] Attached SCSI removable disk

I'm wondering if the message should be more informative about it
violating the USB Spec, like "Violating section 5.5.3 of the USB-2.0
specification by using ep0 maxpacket: %d\n".
I think there no needs to be an 'if' to not have a message for devices
in spec.


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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux