|
|
@@ -244,6 +244,7 @@ struct pci_cap_saved_state {
|
|
|
struct pci_cap_saved_data cap;
|
|
|
};
|
|
|
|
|
|
+struct irq_affinity;
|
|
|
struct pcie_link_state;
|
|
|
struct pci_vpd;
|
|
|
struct pci_sriov;
|
|
|
@@ -1310,8 +1311,10 @@ static inline int pci_enable_msix_exact(struct pci_dev *dev,
|
|
|
return rc;
|
|
|
return 0;
|
|
|
}
|
|
|
-int pci_alloc_irq_vectors(struct pci_dev *dev, unsigned int min_vecs,
|
|
|
- unsigned int max_vecs, unsigned int flags);
|
|
|
+int pci_alloc_irq_vectors_affinity(struct pci_dev *dev, unsigned int min_vecs,
|
|
|
+ unsigned int max_vecs, unsigned int flags,
|
|
|
+ const struct irq_affinity *affd);
|
|
|
+
|
|
|
void pci_free_irq_vectors(struct pci_dev *dev);
|
|
|
int pci_irq_vector(struct pci_dev *dev, unsigned int nr);
|
|
|
const struct cpumask *pci_irq_get_affinity(struct pci_dev *pdev, int vec);
|
|
|
@@ -1339,14 +1342,17 @@ static inline int pci_enable_msix_range(struct pci_dev *dev,
|
|
|
static inline int pci_enable_msix_exact(struct pci_dev *dev,
|
|
|
struct msix_entry *entries, int nvec)
|
|
|
{ return -ENOSYS; }
|
|
|
-static inline int pci_alloc_irq_vectors(struct pci_dev *dev,
|
|
|
- unsigned int min_vecs, unsigned int max_vecs,
|
|
|
- unsigned int flags)
|
|
|
+
|
|
|
+static inline int
|
|
|
+pci_alloc_irq_vectors_affinity(struct pci_dev *dev, unsigned int min_vecs,
|
|
|
+ unsigned int max_vecs, unsigned int flags,
|
|
|
+ const struct irq_affinity *aff_desc)
|
|
|
{
|
|
|
if (min_vecs > 1)
|
|
|
return -EINVAL;
|
|
|
return 1;
|
|
|
}
|
|
|
+
|
|
|
static inline void pci_free_irq_vectors(struct pci_dev *dev)
|
|
|
{
|
|
|
}
|
|
|
@@ -1364,6 +1370,14 @@ static inline const struct cpumask *pci_irq_get_affinity(struct pci_dev *pdev,
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
+static inline int
|
|
|
+pci_alloc_irq_vectors(struct pci_dev *dev, unsigned int min_vecs,
|
|
|
+ unsigned int max_vecs, unsigned int flags)
|
|
|
+{
|
|
|
+ return pci_alloc_irq_vectors_affinity(dev, min_vecs, max_vecs, flags,
|
|
|
+ NULL);
|
|
|
+}
|
|
|
+
|
|
|
#ifdef CONFIG_PCIEPORTBUS
|
|
|
extern bool pcie_ports_disabled;
|
|
|
extern bool pcie_ports_auto;
|