Merge tag 'ntb-5.3' of git://github.com/jonmason/ntb
[sfrench/cifs-2.6.git] / include / linux / pci.h
index bf6ea6fe39ffbdf0a3a87c95f567fe762ca3fe47..9e700d9f9f287d0db0bf770cd5c4ee2a564db94c 100644 (file)
@@ -347,6 +347,7 @@ struct pci_dev {
                                                   D3cold, not set for devices
                                                   powered on/off by the
                                                   corresponding bridge */
+       unsigned int    skip_bus_pm:1;  /* Internal: Skip bus-level PM */
        unsigned int    ignore_hotplug:1;       /* Ignore hotplug events */
        unsigned int    hotplug_user_indicators:1; /* SlotCtl indicators
                                                      controlled exclusively by
@@ -385,7 +386,7 @@ struct pci_dev {
 
        unsigned int    is_busmaster:1;         /* Is busmaster */
        unsigned int    no_msi:1;               /* May not use MSI */
-       unsigned int    no_64bit_msi:1;         /* May only use 32-bit MSIs */
+       unsigned int    no_64bit_msi:1;         /* May only use 32-bit MSIs */
        unsigned int    block_cfg_access:1;     /* Config space access blocked */
        unsigned int    broken_parity_status:1; /* Generates false positive parity */
        unsigned int    irq_reroute_variant:2;  /* Needs IRQ rerouting variant */
@@ -1411,6 +1412,15 @@ int pci_set_vga_state(struct pci_dev *pdev, bool decode,
 #define PCI_IRQ_MSI            (1 << 1) /* Allow MSI interrupts */
 #define PCI_IRQ_MSIX           (1 << 2) /* Allow MSI-X interrupts */
 #define PCI_IRQ_AFFINITY       (1 << 3) /* Auto-assign affinity */
+
+/*
+ * Virtual interrupts allow for more interrupts to be allocated
+ * than the device has interrupts for. These are not programmed
+ * into the device's MSI-X table and must be handled by some
+ * other driver means.
+ */
+#define PCI_IRQ_VIRTUAL                (1 << 4)
+
 #define PCI_IRQ_ALL_TYPES \
        (PCI_IRQ_LEGACY | PCI_IRQ_MSI | PCI_IRQ_MSIX)