0b15110
Don Zickus <dzickus@redhat.com> writes:
0b15110
0b15110
Some co-workers of mine bought Samsung laptops that had mostly usb3 ports.
0b15110
Those ports did not resume correctly (the driver would timeout communicating
0b15110
and fail).  This led to frustration as suspend/resume is a common use for
0b15110
laptops.
0b15110
0b15110
Poking around, I applied the reset on resume quirk to this chipset and the
0b15110
resume started working.  Reloading the xhci_hcd module had been the temporary
0b15110
workaround.
0b15110
0b15110
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
0b15110
Reported-by: Don Zickus <dzickus@redhat.com>
0b15110
Cc: stable # 2.6.37
0b15110
---
0b15110
0b15110
Don, please ask your co-worker to apply this patch and test.  Let me
0b15110
know if your other co-worker has a different subsystem device ID in his
0b15110
Samsung laptop, when he gets back from vacation.  If so, we'll extend it
0b15110
to all Samsung laptops with that particular Renesas host.
0b15110
0b15110
Sarah Sharp
0b15110
0b15110
 drivers/usb/host/xhci-pci.c | 5 +++++
0b15110
 1 file changed, 5 insertions(+)
0b15110
0b15110
diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
0b15110
index e42c318a4404..6c03584ac15f 100644
0b15110
--- a/drivers/usb/host/xhci-pci.c
0b15110
+++ b/drivers/usb/host/xhci-pci.c
0b15110
@@ -142,6 +142,11 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
0b15110
 				"QUIRK: Resetting on resume");
0b15110
 		xhci->quirks |= XHCI_TRUST_TX_LENGTH;
0b15110
 	}
0b15110
+	if (pdev->vendor == PCI_VENDOR_ID_RENESAS &&
0b15110
+			pdev->device == 0x0015 &&
0b15110
+			pdev->subsystem_vendor == PCI_VENDOR_ID_SAMSUNG &&
0b15110
+			pdev->subsystem_device == 0xc0cd)
0b15110
+		xhci->quirks |= XHCI_RESET_ON_RESUME;
0b15110
 	if (pdev->vendor == PCI_VENDOR_ID_VIA)
0b15110
 		xhci->quirks |= XHCI_RESET_ON_RESUME;
0b15110
 }
0b15110
-- 
0b15110
1.8.5.2
0b15110
0b15110
--
0b15110
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
0b15110
the body of a message to majordomo@vger.kernel.org
0b15110
More majordomo info at  http://vger.kernel.org/majordomo-info.html