Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3e87c499 authored by Nehal Bakulchandra Shah's avatar Nehal Bakulchandra Shah Committed by Greg Kroah-Hartman
Browse files

usb: xhci: Enable runtime-pm by default on AMD Yellow Carp platform



commit 660a92a59b9e831a0407e41ff62875656d30006e upstream.

AMD's Yellow Carp platform supports runtime power management for
XHCI Controllers, so enable the same by default for all XHCI Controllers.

[ regrouped and aligned the PCI_DEVICE_ID definitions -Mathias]

Cc: stable <stable@vger.kernel.org>
Reviewed-by: default avatarShyam Sundar S K <Shyam-sundar.S-k@amd.com>
Reviewed-by: default avatarMario Limonciello <mario.limonciello@amd.com>
Reviewed-by: default avatarBasavaraj Natikar <Basavaraj.Natikar@amd.com>
Signed-off-by: default avatarNehal Bakulchandra Shah <Nehal-Bakulchandra.shah@amd.com>
Signed-off-by: default avatarMathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20211014121200.75433-2-mathias.nyman@linux.intel.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 3fa7efd1
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -59,6 +59,13 @@
#define PCI_DEVICE_ID_AMD_PROMONTORYA_3			0x43ba
#define PCI_DEVICE_ID_AMD_PROMONTORYA_2			0x43bb
#define PCI_DEVICE_ID_AMD_PROMONTORYA_1			0x43bc
#define PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_1		0x161a
#define PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_2		0x161b
#define PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_3		0x161d
#define PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_4		0x161e
#define PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_5		0x15d6
#define PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_6		0x15d7

#define PCI_DEVICE_ID_ASMEDIA_1042_XHCI			0x1042
#define PCI_DEVICE_ID_ASMEDIA_1042A_XHCI		0x1142
#define PCI_DEVICE_ID_ASMEDIA_1142_XHCI			0x1242
@@ -290,6 +297,15 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
	     pdev->device == PCI_DEVICE_ID_AMD_PROMONTORYA_4))
		xhci->quirks |= XHCI_NO_SOFT_RETRY;

	if (pdev->vendor == PCI_VENDOR_ID_AMD &&
	    (pdev->device == PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_1 ||
	    pdev->device == PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_2 ||
	    pdev->device == PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_3 ||
	    pdev->device == PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_4 ||
	    pdev->device == PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_5 ||
	    pdev->device == PCI_DEVICE_ID_AMD_YELLOW_CARP_XHCI_6))
		xhci->quirks |= XHCI_DEFAULT_PM_RUNTIME_ALLOW;

	if (xhci->quirks & XHCI_RESET_ON_RESUME)
		xhci_dbg_trace(xhci, trace_xhci_dbg_quirks,
				"QUIRK: Resetting on resume");