From: Sriharsha Basavapatna Date: Sat, 22 May 2021 01:13:17 +0000 (-0400) Subject: PCI: Add ACS quirk for Broadcom BCM57414 NIC X-Git-Tag: v5.15~954^2~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=db2f77e2bd99dbd2fb23ddde58f0fae392fe3338;p=platform%2Fkernel%2Flinux-starfive.git PCI: Add ACS quirk for Broadcom BCM57414 NIC The Broadcom BCM57414 NIC may be a multi-function device. While it does not advertise an ACS capability, peer-to-peer transactions are not possible between the individual functions, so it is safe to treat them as fully isolated. Add an ACS quirk for this device so the functions can be in independent IOMMU groups and attached individually to userspace applications using VFIO. [bhelgaas: commit log] Link: https://lore.kernel.org/r/1621645997-16251-1-git-send-email-michael.chan@broadcom.com Signed-off-by: Sriharsha Basavapatna Signed-off-by: Michael Chan Signed-off-by: Bjorn Helgaas Cc: stable@vger.kernel.org --- diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 877ce61..22b2bb1 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -4840,6 +4840,8 @@ static const struct pci_dev_acs_enabled { { PCI_VENDOR_ID_AMPERE, 0xE00A, pci_quirk_xgene_acs }, { PCI_VENDOR_ID_AMPERE, 0xE00B, pci_quirk_xgene_acs }, { PCI_VENDOR_ID_AMPERE, 0xE00C, pci_quirk_xgene_acs }, + /* Broadcom multi-function device */ + { PCI_VENDOR_ID_BROADCOM, 0x16D7, pci_quirk_mf_endpoint_acs }, { PCI_VENDOR_ID_BROADCOM, 0xD714, pci_quirk_brcm_acs }, /* Amazon Annapurna Labs */ { PCI_VENDOR_ID_AMAZON_ANNAPURNA_LABS, 0x0031, pci_quirk_al_acs },