diff mbox series

[v2,1/2] xhci: Apply reset resume quirk to Etron EJ188 xHCI host

Message ID 20240528033136.14102-2-ki.chiang65@gmail.com (mailing list archive)
State Superseded
Headers show
Series [v2,1/2] xhci: Apply reset resume quirk to Etron EJ188 xHCI host | expand

Commit Message

Kuangyi Chiang May 28, 2024, 3:31 a.m. UTC
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>
---
Changes in v2:
- Porting to latest release

 drivers/usb/host/xhci-pci.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Sergey Shtylyov May 28, 2024, 8:36 a.m. UTC | #1
On 5/28/24 6:31 AM, Kuangyi Chiang wrote:

> 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>
> ---
> Changes in v2:
> - Porting to latest release
> 
>  drivers/usb/host/xhci-pci.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> index c040d816e626..b47d57d80b96 100644
> --- a/drivers/usb/host/xhci-pci.c
> +++ b/drivers/usb/host/xhci-pci.c
[...]
> @@ -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;
> +	}

   You don't need {} around a single statement, according to CodingStyle.

[...]

MBR, Sergey
Kuangyi Chiang May 28, 2024, 9:53 a.m. UTC | #2
Hi Sergey,

Sergei Shtylyov <sergei.shtylyov@gmail.com> 於 2024年5月28日 週二 下午4:36寫道:
>
> On 5/28/24 6:31 AM, Kuangyi Chiang wrote:
>
> > 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>
> > ---
> > Changes in v2:
> > - Porting to latest release
> >
> >  drivers/usb/host/xhci-pci.c | 5 +++++
> >  1 file changed, 5 insertions(+)
> >
> > diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> > index c040d816e626..b47d57d80b96 100644
> > --- a/drivers/usb/host/xhci-pci.c
> > +++ b/drivers/usb/host/xhci-pci.c
> [...]
> > @@ -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;
> > +     }
>
>    You don't need {} around a single statement, according to CodingStyle.
>
> [...]
>
> MBR, Sergey

Got it, I'll modify it and resend patches.

Thanks,
Kuangyi Chiang
diff mbox series

Patch

diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
index c040d816e626..b47d57d80b96 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
@@ -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;