Re: [RFC v2] USB: Fix handoff when BIOS disables host PCI device.

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

 



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


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux