Hi Lukas, Lukas Wunner wrote: > On Thu, Jan 31, 2019 at 11:46:23PM +0000, Thinh Nguyen wrote: >> --- a/drivers/pci/quirks.c >> +++ b/drivers/pci/quirks.c >> @@ -629,6 +629,9 @@ static void quirk_synopsys_haps(struct pci_dev *pdev) >> { >> u32 class = pdev->class; >> >> + if (class != PCI_CLASS_SERIAL_USB_XHCI) >> + return; >> + >> switch (pdev->device) { >> case PCI_DEVICE_ID_SYNOPSYS_HAPSUSB3: >> case PCI_DEVICE_ID_SYNOPSYS_HAPSUSB3_AXI: > Please use DECLARE_PCI_FIXUP_CLASS_HEADER() instead. Sure. That's a better option. Can you test this with your setup? diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index b0a413f3f7ca..f46e7de9e15d 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -639,8 +639,8 @@ static void quirk_synopsys_haps(struct pci_dev *pdev) break; } } -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SYNOPSYS, PCI_ANY_ID, - quirk_synopsys_haps); +DECLARE_PCI_FIXUP_CLASS_HEADER(PCI_VENDOR_ID_SYNOPSYS, PCI_ANY_ID, + PCI_CLASS_SERIAL_USB_XHCI, 0, quirk_synopsys_haps); /* * Let's make the southbridge information explicit instead of having to Thanks, Thinh