[PATCH 5/5] PCI: Limit config space size for Netronome NFP4000

Tim Gardner tim.gardner at canonical.com
Fri Sep 16 14:23:14 UTC 2016


From: Simon Horman <simon.horman at netronome.com>

BugLink: http://bugs.launchpad.net/bugs/1624267

Like the NFP6000, the NFP4000 as an erratum where reading/writing to PCI
config space addresses above 0x600 can cause the NFP to generate PCIe
completion timeouts.

Limit the NFP4000's PF's config space size to 0x600 bytes as is already
done for the NFP6000.

The NFP4000's VF is 0x6004 (PCI_DEVICE_ID_NETRONOME_NFP6000_VF), the same
device ID as the NFP6000's VF.  Thus, its config space is already limited
by the existing use of quirk_nfp6000().

Signed-off-by: Simon Horman <simon.horman at netronome.com>
Signed-off-by: Bjorn Helgaas <bhelgaas at google.com>
(cherry picked from commit c2e771b02792d222cbcd9617fe71482a64f52647)
Signed-off-by: Tim Gardner <tim.gardner at canonical.com>
---
 drivers/pci/quirks.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 1d97e24..45c768e 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -311,6 +311,7 @@ static void quirk_nfp6000(struct pci_dev *dev)
 {
 	dev->cfg_size = 0x600;
 }
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NETRONOME,	PCI_DEVICE_ID_NETRONOME_NFP4000,	quirk_nfp6000);
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NETRONOME,	PCI_DEVICE_ID_NETRONOME_NFP6000,	quirk_nfp6000);
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NETRONOME,	PCI_DEVICE_ID_NETRONOME_NFP6000_VF,	quirk_nfp6000);
 
-- 
2.7.4





More information about the kernel-team mailing list