On Tue, Aug 21, 2012 at 12:06 PM, <manoj.iyer@xxxxxxxxxxxxx> wrote: > From: Manoj Iyer <manoj.iyer@xxxxxxxxxxxxx> > > USB 3.0 devices show up as high-speed devices on powerup, after an > s3 cycle they are correctly recognized as SuperSpeed. At powerup > unconditionally switch the port to xHCI like we do when we resume > from suspend. > > BugLink: http://bugs.launchpad.net/bugs/1000424 > > Signed-off-by: Manoj Iyer <manoj.iyer@xxxxxxxxxxxxx> > --- > drivers/usb/host/xhci-pci.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c > index 9bfd4ca11..5c8dbea 100644 > --- a/drivers/usb/host/xhci-pci.c > +++ b/drivers/usb/host/xhci-pci.c > @@ -48,6 +48,14 @@ static int xhci_pci_reinit(struct xhci_hcd *xhci, struct pci_dev *pdev) > if (!pci_set_mwi(pdev)) > xhci_dbg(xhci, "MWI active\n"); > > + /* > + * USB SuperSpeed ports are recognized as HighSpeed ports on powerup > + * unconditionally switch the ports to xHCI like we do when resume > + * from suspend. > + */ > + if (usb_is_intel_switchable_xhci(pdev)) > + usb_enable_xhci_ports(pdev); > + Strange. This should have been called during system power up, in quirk_usb_handoff_xhci() of pci_quirks.c. Do you see that routine get called during power up? Thanks, Andiry > xhci_dbg(xhci, "Finished xhci_pci_reinit\n"); > return 0; > } > -- > 1.7.9.5 > > -- > 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 -- 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