public inbox for linux-usb@vger.kernel.org
 help / color / mirror / Atom feed
* PATCH: Fix problem with xhci resume from suspend
@ 2024-09-17 18:47 Jose Alberto Reguero
  2024-09-17 20:45 ` Greg KH
  0 siblings, 1 reply; 6+ messages in thread
From: Jose Alberto Reguero @ 2024-09-17 18:47 UTC (permalink / raw)
  To: linux-usb, Mathias Nyman

I have a ASUS PN51 S mini pc that has two xhci devices. One from AMD,
and other from ASMEDIA. The one from ASMEDIA have problems when resume
from suspend, and keep broken until unplug the  power cord. I use this
kernel parameter: xhci-hcd.quirks=128 and then it works ok. I make a
path to reset only the ASMEDIA xhci.


Signed-off-by: Jose Alberto Reguero <jose.alberto.reguero@gmail.com>

diff -ur linux-6.10.8/drivers/usb/host/xhci-pci.c
linux-6.10.8.new/drivers/usb/host/xhci-pci.c
--- linux-6.10.8/drivers/usb/host/xhci-pci.c 2024-09-04 13:30:16.000000000 +0200
+++ linux-6.10.8.new/drivers/usb/host/xhci-pci.c 2024-09-12
19:37:14.378870385 +0200
@@ -76,6 +76,7 @@
 #define PCI_DEVICE_ID_ASMEDIA_1042A_XHCI 0x1142
 #define PCI_DEVICE_ID_ASMEDIA_1142_XHCI 0x1242
 #define PCI_DEVICE_ID_ASMEDIA_2142_XHCI 0x2142
+#define PCI_DEVICE_ID_ASMEDIA_3042_XHCI 0x3042
 #define PCI_DEVICE_ID_ASMEDIA_3242_XHCI 0x3242

 static const char hcd_name[] = "xhci_hcd";
@@ -447,6 +448,10 @@
  pdev->device == PCI_DEVICE_ID_ASMEDIA_1042A_XHCI)
  xhci->quirks |= XHCI_ASMEDIA_MODIFY_FLOWCONTROL;

+ if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
+ pdev->device == PCI_DEVICE_ID_ASMEDIA_3042_XHCI)
+ xhci->quirks |= XHCI_RESET_ON_RESUME;
+
  if (pdev->vendor == PCI_VENDOR_ID_TI && pdev->device == 0x8241)
  xhci->quirks |= XHCI_LIMIT_ENDPOINT_INTERVAL_7;

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-09-18  5:39 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-17 18:47 PATCH: Fix problem with xhci resume from suspend Jose Alberto Reguero
2024-09-17 20:45 ` Greg KH
2024-09-17 21:35   ` Jose Alberto Reguero
2024-09-18  5:39     ` Greg KH
2024-09-17 22:10   ` jose.alberto.reguero
2024-09-18  5:39     ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox