On Tue, Feb 05, 2019 at 08:38:58PM +0000, Thinh Nguyen wrote: > 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". OK, maybe I'm missing something. I don't see it on the linux-pci list [1] or the PCI patchwork [2] yet. Maybe it's still making its way through the mailing list servers. If you have a URL to the archive or patchwork, let me know. Bjorn [1] https://lore.kernel.org/linux-pci/ [2] https://patchwork.ozlabs.org/project/linux-pci/list