AMD is simply trying to say that it's MFD doesn't do P2P, use the existing common helper for this. Signed-off-by: Jason Gunthorpe <jgg@xxxxxxxxxx> --- drivers/pci/quirks.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 8a9ab76dd81494..963074286cc2a9 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -4640,6 +4640,8 @@ static int pci_acs_ctrl_isolated(u16 acs_flags) PCI_ACS_SV | PCI_ACS_RR | PCI_ACS_CR | PCI_ACS_UF); } +static int pci_quirk_mf_endpoint_acs(struct pci_dev *dev, u16 acs_flags); + /* * AMD has indicated that the devices below do not support peer-to-peer * in any system where they are found in the southbridge with an AMD @@ -4682,10 +4684,7 @@ static int pci_quirk_amd_sb_acs(struct pci_dev *dev, u16 acs_flags) acpi_put_table(header); - /* Filter out flags not applicable to multifunction */ - acs_flags &= (PCI_ACS_RR | PCI_ACS_CR | PCI_ACS_EC | PCI_ACS_DT); - - return pci_acs_ctrl_enabled(acs_flags, PCI_ACS_RR | PCI_ACS_CR); + return pci_quirk_mf_endpoint_acs(dev, acs_flags); #else return -ENODEV; #endif -- 2.43.0