On Fri, Oct 05, 2012 at 02:34:35PM -0700, Greg KH wrote: > On Fri, Oct 05, 2012 at 04:51:53PM -0400, Alan Stern wrote: > > On Fri, 5 Oct 2012, Sarah Sharp wrote: > > > > > One way we could work around these broken devices is have a dynamic > > > black list of device vendor and product IDs that shouldn't have LPM > > > enabled. We already have such a black list in the xHCI driver for > > > devices that don't handle USB 2.0 LPM. > > > > > > My idea is to add the device to the black list if USB core control > > > transfers start timing out, or any URBs complete with transfer errors. > > > That way when the device reconnects (as the SIIG hub does), we won't > > > enable LPM again. The SIIG hub stops responding to the second control > > > transfer needed to enable LPM (Set Feature Device initiated LPM), so we > > > catch the failure pretty early on in the enumeration process. > > > > > > The other option is to just create a sysfs file for USB 3.0 link PM, > > > turn it off by default, and leave it up to userspace. But that means > > > basically no one will have it enabled. So I'd like to pursue a dynamic > > > option in the kernel. > > > > We could add a USB_QUIRK_NO_LPM flag and put a static entry for the > > SIIG hub (and maybe other broken devices) in quirks.c. xhci-hcd could > > set this flag when it sees control transfers timing out or other > > transfer errors. > > That sounds like a good idea to me as well. Update: it looks like all three of my VIA hubs handle U2 fine if the USB 3.0 bus analyzer isn't in between it and the host. Yay for Heisenbugs! So I'll drop the patch for the USB_QUIRK_NO_LPM flag for now, and see if we need it later. Sarah Sharp -- 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