RE: [PATCH] usb: core: fix SuperSpeed bMaxPacketSize0

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

 



> -----Original Message-----
> From: linux-usb-owner@xxxxxxxxxxxxxxx [mailto:linux-usb-
> owner@xxxxxxxxxxxxxxx] On Behalf Of Sebastian Andrzej Siewior
> Sent: Thursday, July 14, 2011 4:21 PM
> To: Alan Stern
> Cc: Felipe Balbi; Greg KH; Sarah Sharp; Linux USB Mailing List
> Subject: Re: [PATCH] usb: core: fix SuperSpeed bMaxPacketSize0
> 
> * Alan Stern | 2011-07-12 11:43:24 [-0400]:
> 
> >On Tue, 12 Jul 2011, Felipe Balbi wrote:
> >
> >> diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
> >> index a428aa0..6964a28 100644
> >> --- a/drivers/usb/core/hub.c
> >> +++ b/drivers/usb/core/hub.c
> >> @@ -2930,7 +2930,7 @@ hub_port_init (struct usb_hub *hub, struct
> usb_device *udev, int port1,
> >>  					buf, GET_DESCRIPTOR_BUFSIZE,
> >>  					initial_descriptor_timeout);
> >>  				switch (buf->bMaxPacketSize0) {
> >> -				case 8: case 16: case 32: case 64: case
255:
> >> +				case 8: case 9: case 16: case 32: case
64: case
> 255:
> >>  					if (buf->bDescriptorType ==
> >>  							USB_DT_DEVICE) {
> >>  						r = 0;
> >
> >Unnecessary; this block of code is protected by a
!(hcd->driver->flags
> >& HCD_USB3) test.  Besides, if this were really wrong then SuperSpeed
> >devices would never have worked under Linux.  :-)
> 
> Right. May I ask why we don't fetch a USB_DT_DEVICE descriptor for
USB3
> but we do for all others even wireless?
> 

This block of code is for some non-standards-compliant devices.
hub_port_init() fetches USB device descriptor for USB3 devices just in
the
code block following this one. 

Thanks,
Andiry

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