On Thu, Feb 16, 2012 at 03:48:53PM +0100, Oliver Neukum wrote: > Am Donnerstag, 16. Februar 2012, 15:33:21 schrieb Sarah Sharp: > > > The BIOS might touch it. Are you really willing to say that there won't > > > be BIOSes that assume that what they enabled must stay enabled? > > > > Once the xHCI PCI quirk handler runs, we've taken the host controller > > away from the BIOS with the BIOS/OS semaphore handshake. (If the BIOS > > is smart enough to actually handle that.) Any BIOS that touches the > > xHCI host controller after that point is just broken. There is only so > > much we can do about the BIOS breakage. :) > > What about S3 when the BIOS takes control? If that was a problem, we would see BIOS issues during S3 with the current code when a host controller driver wasn't loaded before suspend. In fact, I think several distros used to unload the USB drivers when the user selected suspend from the menu. When the driver is unloaded, usb_hcd_pci_remove() is called, which will call pci_disable_device(). If the ref counts were balanced (and I believe they are), then the PCI device would have been disabled before S3 for distros that unloaded the USB drivers on suspend. So the BIOS would have seen a disabled PCI device for these distros, just like it would with my patch if the driver never got loaded. I don't think this is an issue. Sarah Sharp -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html