Hi Bjorn, Bjorn Helgaas wrote: > On Fri, Feb 01, 2019 at 08:27:00PM +0000, Thinh Nguyen wrote: >> 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 >> >> > Can we get a formal patch, including details about the issue (I assume > Synopsys released two different parts with Device ID 0xabcd) and a > signed-off-by? > > I'd like to get this into for-linus as soon as possible for v5.0. > I already submitted a patch for this. Please review patch subject "[PATCH] PCI: Check for USB xHCI class for HAPS platform". Thanks, Thinh