aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSarah Sharp <sarah.a.sharp@linux.intel.com>2011-12-01 13:30:16 -0500
committerSarah Sharp <sarah.a.sharp@linux.intel.com>2011-12-01 13:41:40 -0500
commit0de13500ad1d8a66b7dc1e7fa517ea15a2625c9e (patch)
tree5944030800044bd7338b50b853f49de8f344d9dd
parent158886cd2cf4599e04f9b7e10cb767f5f39b14f1 (diff)
Revert "xHCI: reset-on-resume quirk for NEC uPD720200"
This reverts commit df711fc9962b9491af2b92bd0d21ecbfefe4e5fa. The commit added a reset-on-resume quirk because the NEC chipset stopped responding to commands about 30 minutes after a system resume from suspend. We thought it was a chipset issue, but it turns out that the xHCI driver was zeroing out the link TRB after a successful context restore during resume. The host controller would fall off the command ring sometime later, causing it to not respond to new commands. The link TRB issue has been fixed with commit 158886cd2cf4599e04f9b7e10cb767f5f39b14f1 "xHCI: fix bug in xhci_clear_command_ring()", so revert the reset-on-resume quirk, as it's not necessary. Commit df711fc9962b9491af2b92bd0d21ecbfefe4e5fa was marked for stable trees back to 2.6.37, but according to my mail, it has not made it into Linus' tree or the stable trees yet. Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> Tested-by: Julian Sikorski <belegdol@gmail.com> Cc: Andiry Xu <andiry.xu@amd.com>
-rw-r--r--drivers/usb/host/xhci-pci.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
index d2a7332daca4..ef98b38626fb 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
@@ -33,8 +33,6 @@
33#define PCI_VENDOR_ID_ETRON 0x1b6f 33#define PCI_VENDOR_ID_ETRON 0x1b6f
34#define PCI_DEVICE_ID_ASROCK_P67 0x7023 34#define PCI_DEVICE_ID_ASROCK_P67 0x7023
35 35
36#define PCI_DEVICE_ID_NEC_uPD720200 0x0194
37
38static const char hcd_name[] = "xhci_hcd"; 36static const char hcd_name[] = "xhci_hcd";
39 37
40/* called after powerup, by probe or system-pm "wakeup" */ 38/* called after powerup, by probe or system-pm "wakeup" */
@@ -76,11 +74,8 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
76 pdev->revision); 74 pdev->revision);
77 } 75 }
78 76
79 if (pdev->vendor == PCI_VENDOR_ID_NEC) { 77 if (pdev->vendor == PCI_VENDOR_ID_NEC)
80 xhci->quirks |= XHCI_NEC_HOST; 78 xhci->quirks |= XHCI_NEC_HOST;
81 if (pdev->device == PCI_DEVICE_ID_NEC_uPD720200)
82 xhci->quirks |= XHCI_RESET_ON_RESUME;
83 }
84 79
85 if (pdev->vendor == PCI_VENDOR_ID_AMD && xhci->hci_version == 0x96) 80 if (pdev->vendor == PCI_VENDOR_ID_AMD && xhci->hci_version == 0x96)
86 xhci->quirks |= XHCI_AMD_0x96_HOST; 81 xhci->quirks |= XHCI_AMD_0x96_HOST;