[PATCH] xhci: EHCI/xHCI ports switching on Intense-PC.

From: Denis Turischev
Date: Mon Jul 16 2012 - 12:46:11 EST

Intense-PC is Compulab's mini-desktop with Intel Panther Point

Unconditional ports switching provided by function
usb_enable_xhci_ports() leads to surprising results, after shutdown
system powered-on again after a few seconds. On Windows power
related problems were not observed.

The patch avoids ports switching for Intense-PC.

Signed-off-by: Denis Turischev <denis@xxxxxxxxxxxxxx>
drivers/usb/host/pci-quirks.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/drivers/usb/host/pci-quirks.c b/drivers/usb/host/pci-quirks.c
index df0828c..6f72593 100644
--- a/drivers/usb/host/pci-quirks.c
+++ b/drivers/usb/host/pci-quirks.c
@@ -759,6 +759,13 @@ void usb_enable_xhci_ports(struct pci_dev *xhci_pdev)
u32 ports_available;

+ const char *brd_name;
+ brd_name = dmi_get_system_info(DMI_BOARD_NAME);
+ /* quirk for Compulab's Intense-PC board */
+ if (brd_name && strstr(brd_name, "Intense-PC"))
+ return;
/* Don't switchover the ports if the user hasn't compiled the xHCI
* driver. Otherwise they will see "dead" USB ports that don't power
* the devices.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/