Skip to contentSkip to conversation

usb: xhci: apply XHCI_SUSPEND_DELAY to AMD XHCI controller 1022:145c

PATCH RESEND In review Alberto Mattea 3 participants 3 messages Feb 17, 2020 – Mar 4, 2020

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH RESEND 1/1 usb: xhci: apply XHCI_SUSPEND_DELAY to AMD XHCI controller 1022:145c

This controller timeouts during suspend (S3) with

[  240.521724] xhci_hcd 0000:30:00.3: WARN: xHC save state timeout
[  240.521729] xhci_hcd 0000:30:00.3: ERROR mismatched command completion event

thus preventing the system from entering S3.
Moreover it remains in an undefined state where some connected devices stop working until a reboot.
Apply the XHCI_SUSPEND_DELAY quirk to make it suspend properly.

---
 drivers/usb/host/xhci-pci.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/usb/host/xhci-pci.c +2 -1
index 4917c5b033fa..1533310b3d6b 100644
@@ -135,7 +135,8 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
 		xhci->quirks |= XHCI_AMD_PLL_FIX;
 
 	if (pdev->vendor == PCI_VENDOR_ID_AMD &&
-		(pdev->device == 0x15e0 ||
+		(pdev->device == 0x145c ||
+		 pdev->device == 0x15e0 ||
 		 pdev->device == 0x15e1 ||
 		 pdev->device == 0x43bb))
 		xhci->quirks |= XHCI_SUSPEND_DELAY;
Signature · 1 line
2.17.1
maintainer
#1 lore raw
Quoted 31 lines · Alberto Mattea

This controller timeouts during suspend (S3) with

[  240.521724] xhci_hcd 0000:30:00.3: WARN: xHC save state timeout
[  240.521729] xhci_hcd 0000:30:00.3: ERROR mismatched command completion event

thus preventing the system from entering S3.
Moreover it remains in an undefined state where some connected devices stop working until a reboot.
Apply the XHCI_SUSPEND_DELAY quirk to make it suspend properly.

---
 drivers/usb/host/xhci-pci.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/usb/host/xhci-pci.c +2 -1
index 4917c5b033fa..1533310b3d6b 100644
@@ -135,7 +135,8 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
 		xhci->quirks |= XHCI_AMD_PLL_FIX;
 
 	if (pdev->vendor == PCI_VENDOR_ID_AMD &&
-		(pdev->device == 0x15e0 ||
+		(pdev->device == 0x145c ||
+		 pdev->device == 0x15e0 ||
 		 pdev->device == 0x15e1 ||
 		 pdev->device == 0x43bb))
 		xhci->quirks |= XHCI_SUSPEND_DELAY;
Signature · 1 line
2.17.1
$ ./scripts/get_maintainer.pl --file drivers/usb/host/xhci-pci.c
Mathias Nyman <[email protected]> (supporter:USB XHCI DRIVER)
Greg Kroah-Hartman <[email protected]> (supporter:USB SUBSYSTEM)
[email protected] (open list:USB XHCI DRIVER)
[email protected] (open list)

{sigh}

Always include the maintainer of the driver in your cc: list.

I've added Mathias to this message now, hopefully he can pick this up for his next round of patches.

thanks,

greg k-h

#2 lore raw
Quoted 40 lines · Greg KH
Quoted 31 lines · Alberto Mattea

This controller timeouts during suspend (S3) with

[  240.521724] xhci_hcd 0000:30:00.3: WARN: xHC save state timeout
[  240.521729] xhci_hcd 0000:30:00.3: ERROR mismatched command completion event

thus preventing the system from entering S3.
Moreover it remains in an undefined state where some connected devices stop working until a reboot.
Apply the XHCI_SUSPEND_DELAY quirk to make it suspend properly.

---
 drivers/usb/host/xhci-pci.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/usb/host/xhci-pci.c +2 -1
index 4917c5b033fa..1533310b3d6b 100644
@@ -135,7 +135,8 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
 		xhci->quirks |= XHCI_AMD_PLL_FIX;
 
 	if (pdev->vendor == PCI_VENDOR_ID_AMD &&
-		(pdev->device == 0x15e0 ||
+		(pdev->device == 0x145c ||
+		 pdev->device == 0x15e0 ||
 		 pdev->device == 0x15e1 ||
 		 pdev->device == 0x43bb))
 		xhci->quirks |= XHCI_SUSPEND_DELAY;
Signature · 1 line
2.17.1
$ ./scripts/get_maintainer.pl --file drivers/usb/host/xhci-pci.c
Mathias Nyman <[email protected]> (supporter:USB XHCI DRIVER)
Greg Kroah-Hartman <[email protected]> (supporter:USB SUBSYSTEM)
[email protected] (open list:USB XHCI DRIVER)
[email protected] (open list)
Quoted 7 lines

{sigh}

Always include the maintainer of the driver in your cc: list.

I've added Mathias to this message now, hopefully he can pick this up for his next round of patches.

Thanks, patch added to queue

-Mathias