]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
xhci: Apply reset resume quirk to Etron EJ188 xHCI host
authorKuangyi Chiang <ki.chiang65@gmail.com>
Tue, 11 Jun 2024 12:06:08 +0000 (15:06 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 12 Jun 2024 07:43:36 +0000 (09:43 +0200)
As described in commit c877b3b2ad5c ("xhci: Add reset on resume quirk for
asrock p67 host"), EJ188 have the same issue as EJ168, where completely
dies on resume. So apply XHCI_RESET_ON_RESUME quirk to EJ188 as well.

Cc: stable@vger.kernel.org
Signed-off-by: Kuangyi Chiang <ki.chiang65@gmail.com>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20240611120610.3264502-3-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-pci.c

index c040d816e6266148fb3edf9ff9b1654c8d3918d4..dd8256e4e02af08cb989217a1a27fec5968f5e72 100644 (file)
@@ -36,6 +36,7 @@
 
 #define PCI_VENDOR_ID_ETRON            0x1b6f
 #define PCI_DEVICE_ID_EJ168            0x7023
+#define PCI_DEVICE_ID_EJ188            0x7052
 
 #define PCI_DEVICE_ID_INTEL_LYNXPOINT_XHCI     0x8c31
 #define PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI  0x9c31
@@ -395,6 +396,10 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
                xhci->quirks |= XHCI_RESET_ON_RESUME;
                xhci->quirks |= XHCI_BROKEN_STREAMS;
        }
+       if (pdev->vendor == PCI_VENDOR_ID_ETRON &&
+                       pdev->device == PCI_DEVICE_ID_EJ188)
+               xhci->quirks |= XHCI_RESET_ON_RESUME;
+
        if (pdev->vendor == PCI_VENDOR_ID_RENESAS &&
            pdev->device == 0x0014) {
                xhci->quirks |= XHCI_ZERO_64B_REGS;