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