Hi Denis, I found a couple issues with your second patch. There are non-PCI xHCI host controllers, so we can't assume the xHCI host is a PCI host. So this code can't run in the generic xHCI shutdown method: > void xhci_shutdown(struct usb_hcd *hcd) > { > + struct pci_dev *pdev; > + const char *brd_name; > struct xhci_hcd *xhci = hcd_to_xhci(hcd); > > + pdev = to_pci_dev(hcd->self.controller); > + > + if (usb_is_intel_switchable_xhci(pdev)) { > + brd_name = dmi_get_system_info(DMI_BOARD_NAME); > + > + /* quirk for Compulab's Intense-PC board */ > + if (brd_name && strstr(brd_name, "Intense-PC")) > + usb_disable_xhci_ports(pdev); > + } > + > spin_lock_irq(&xhci->lock); > xhci_halt(xhci); > spin_unlock_irq(&xhci->lock); I think the to_pci_dev call will oops if this isn't a PCI host. Plus, I've found out from the BIOS and chipset folks that this quirk needs to be more broadly applied. I'll send you a revised patch. Can you test it and make sure it works for you? Sarah Sharp -- 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