projects
/
platform
/
kernel
/
linux-amlogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
a9423d5
)
usb: xhci: Fix ASM2142/ASM3142 DMA addressing
author
Forest Crossman
<cyrozap@gmail.com>
Fri, 17 Jul 2020 11:27:34 +0000
(06:27 -0500)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Fri, 31 Jul 2020 14:44:04 +0000
(16:44 +0200)
commit
dbb0897e805f2ab1b8bc358f6c3d878a376b8897
upstream.
The ASM2142/ASM3142 (same PCI IDs) does not support full 64-bit DMA
addresses, which can cause silent memory corruption or IOMMU errors on
platforms that use the upper bits. Add the XHCI_NO_64BIT_SUPPORT quirk
to fix this issue.
Signed-off-by: Forest Crossman <cyrozap@gmail.com>
Cc: stable <stable@vger.kernel.org>
Link:
https://lore.kernel.org/r/20200717112734.328432-1-cyrozap@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-pci.c
patch
|
blob
|
history
diff --git
a/drivers/usb/host/xhci-pci.c
b/drivers/usb/host/xhci-pci.c
index
4355fbc
..
bb63cc5
100644
(file)
--- a/
drivers/usb/host/xhci-pci.c
+++ b/
drivers/usb/host/xhci-pci.c
@@
-213,6
+213,9
@@
static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
pdev->device == 0x1142)
xhci->quirks |= XHCI_TRUST_TX_LENGTH;
+ if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
+ pdev->device == 0x2142)
+ xhci->quirks |= XHCI_NO_64BIT_SUPPORT;
if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
pdev->device == PCI_DEVICE_ID_ASMEDIA_1042A_XHCI)