On Tue, 16 Mar 2010, Sarah Sharp wrote: > From: Matthew Wilcox <willy@xxxxxxxxxxxxxxx> > > USB 3 and Wireless USB specify a logarithmic encoding of the endpoint > interval that matches the USB 2 specification. usb_fill_int_urb() didn't > know that and was filling in the interval as if it was USB 1.1. Fix > usb_fill_int_urb() for SuperSpeed devices, but leave the wireless case > alone, because David Vrabel wants to keep the old encoding. > > Update the struct urb kernel doc to note that SuperSpeed URBs must have > urb->interval specified in microframes. > > Add a missing break statement in the usb_submit_urb() interrupt URB > checking, since wireless USB and SuperSpeed USB encode urb->interval > differently. This allows xHCI roothubs to actually register with khubd. The patch is fine, but you do have a small conceptual error at the end there... khubd isn't the hub driver; it is rather the daemon thread used by the hub driver to do much of its work. Root hubs are registered with the hub driver, but khubd isn't involved in that registration procedure. Alan Stern -- 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