On Wed, Jan 27, 2021 at 12:33:09PM +0100, Greg KH wrote: > On Tue, Jan 19, 2021 at 09:48:44AM +0800, Prike Liang wrote: > > During xhci suspend some AMD USB host will lose port status change events and > > need to have the registers polled during D3, so now just avoid D3cold. > > > > Signed-off-by: Prike Liang <Prike.Liang@xxxxxxx> > > --- > > 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 3feaafe..bff817a 100644 > > --- a/drivers/usb/host/xhci-pci.c > > +++ b/drivers/usb/host/xhci-pci.c > > @@ -170,6 +170,11 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci) > > (pdev->device == PCI_DEVICE_ID_AMD_PROMONTORYA_1))) > > xhci->quirks |= XHCI_U2_DISABLE_WAKE; > > > > + if (pdev->vendor == PCI_VENDOR_ID_AMD && > > + pdev->device == 0x1639) { > > + xhci->quirks |= XHCI_COMP_MODE_QUIRK; > > + } > > Why not add this check to the > xhci_compliance_mode_recovery_timer_quirk_check() function instead, > where all other systems that need this quirk are tested for? Ah, you don't have a pci device at that point in time. But, why aren't you making the same calls that the caller of that function does when setting this quirk here? Isn't that also required? thanks, greg k-h