|
|
@@ -3150,6 +3150,39 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_REALTEK, 0x8169,
|
|
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_MELLANOX, PCI_ANY_ID,
|
|
|
quirk_broken_intx_masking);
|
|
|
|
|
|
+/*
|
|
|
+ * Intel i40e (XL710/X710) 10/20/40GbE NICs all have broken INTx masking,
|
|
|
+ * DisINTx can be set but the interrupt status bit is non-functional.
|
|
|
+ */
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1572,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1574,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1580,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1581,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1583,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1584,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1585,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1586,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1587,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1588,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1589,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x37d0,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x37d1,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x37d2,
|
|
|
+ quirk_broken_intx_masking);
|
|
|
+
|
|
|
static void quirk_no_bus_reset(struct pci_dev *dev)
|
|
|
{
|
|
|
dev->dev_flags |= PCI_DEV_FLAGS_NO_BUS_RESET;
|