mirror of
https://github.com/torvalds/linux.git
synced 2024-12-28 22:02:28 +00:00
xhci: Fix resume issues on Renesas chips in Samsung laptops
Don Zickus <dzickus@redhat.com> writes: Some co-workers of mine bought Samsung laptops that had mostly usb3 ports. Those ports did not resume correctly (the driver would timeout communicating and fail). This led to frustration as suspend/resume is a common use for laptops. Poking around, I applied the reset on resume quirk to this chipset and the resume started working. Reloading the xhci_hcd module had been the temporary workaround. Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> Reported-by: Don Zickus <dzickus@redhat.com> Tested-by: Prarit Bhargava <prarit@redhat.com> Cc: stable # 2.6.37
This commit is contained in:
parent
2fc5a7dace
commit
1aa9578c1a
@ -142,6 +142,11 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
|
|||||||
"QUIRK: Resetting on resume");
|
"QUIRK: Resetting on resume");
|
||||||
xhci->quirks |= XHCI_TRUST_TX_LENGTH;
|
xhci->quirks |= XHCI_TRUST_TX_LENGTH;
|
||||||
}
|
}
|
||||||
|
if (pdev->vendor == PCI_VENDOR_ID_RENESAS &&
|
||||||
|
pdev->device == 0x0015 &&
|
||||||
|
pdev->subsystem_vendor == PCI_VENDOR_ID_SAMSUNG &&
|
||||||
|
pdev->subsystem_device == 0xc0cd)
|
||||||
|
xhci->quirks |= XHCI_RESET_ON_RESUME;
|
||||||
if (pdev->vendor == PCI_VENDOR_ID_VIA)
|
if (pdev->vendor == PCI_VENDOR_ID_VIA)
|
||||||
xhci->quirks |= XHCI_RESET_ON_RESUME;
|
xhci->quirks |= XHCI_RESET_ON_RESUME;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user