On Wed, Aug 22, 2012 at 12:16 AM, Manoj Iyer <manoj.iyer@xxxxxxxxxxxxx> wrote: > > Looks like in pci-quirks.c, we enter the do() while() loop, reach the end of > extended capabilities and goto hc_init: label, skipping the switch. Probably > moving the switch under the hc_init label might work? Currently we switch > unconditionally on resume, so we could do the same at powerup as well. > If this is a must-to-do thing for Intel Panther Point platform, then we need to make sure it's called on power up and resume. Yes, I think moving the code below hc_init label should work and I think it's a better solution than your original patch. Thanks, Andiry > > On Tue, 21 Aug 2012, Andiry Xu wrote: > >> 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 >> >> >> > > -- > ==================== > Manoj Iyer > Ubuntu/Canonical > Hardware Enablement > ==================== -- 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