@@ -690,15 +690,15 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_RS100, quirk_ati_
690690/*
691691 * In the AMD NL platform, this device ([1022:7912]) has a class code of
692692 * PCI_CLASS_SERIAL_USB_XHCI (0x0c0330), which means the xhci driver will
693- * claim it.
693+ * claim it. The same applies on the VanGogh platform device ([1022:163a]).
694694 *
695695 * But the dwc3 driver is a more specific driver for this device, and we'd
696696 * prefer to use it instead of xhci. To prevent xhci from claiming the
697697 * device, change the class code to 0x0c03fe, which the PCI r3.0 spec
698698 * defines as "USB device (not host controller)". The dwc3 driver can then
699699 * claim it based on its Vendor and Device ID.
700700 */
701- static void quirk_amd_nl_class (struct pci_dev * pdev )
701+ static void quirk_amd_dwc_class (struct pci_dev * pdev )
702702{
703703 u32 class = pdev -> class ;
704704
@@ -708,7 +708,9 @@ static void quirk_amd_nl_class(struct pci_dev *pdev)
708708 class , pdev -> class );
709709}
710710DECLARE_PCI_FIXUP_HEADER (PCI_VENDOR_ID_AMD , PCI_DEVICE_ID_AMD_NL_USB ,
711- quirk_amd_nl_class );
711+ quirk_amd_dwc_class );
712+ DECLARE_PCI_FIXUP_HEADER (PCI_VENDOR_ID_AMD , PCI_DEVICE_ID_AMD_VANGOGH_USB ,
713+ quirk_amd_dwc_class );
712714
713715/*
714716 * Synopsys USB 3.x host HAPS platform has a class code of
@@ -4553,9 +4555,9 @@ static void quirk_disable_root_port_attributes(struct pci_dev *pdev)
45534555
45544556 pci_info (root_port , "Disabling No Snoop/Relaxed Ordering Attributes to avoid PCIe Completion erratum in %s\n" ,
45554557 dev_name (& pdev -> dev ));
4556- pcie_capability_clear_and_set_word (root_port , PCI_EXP_DEVCTL ,
4557- PCI_EXP_DEVCTL_RELAX_EN |
4558- PCI_EXP_DEVCTL_NOSNOOP_EN , 0 );
4558+ pcie_capability_clear_word (root_port , PCI_EXP_DEVCTL ,
4559+ PCI_EXP_DEVCTL_RELAX_EN |
4560+ PCI_EXP_DEVCTL_NOSNOOP_EN );
45594561}
45604562
45614563/*
0 commit comments