|
@@ -1342,9 +1342,9 @@ pci_alloc_irq_vectors_affinity(struct pci_dev *dev, unsigned int min_vecs,
|
|
unsigned int max_vecs, unsigned int flags,
|
|
unsigned int max_vecs, unsigned int flags,
|
|
const struct irq_affinity *aff_desc)
|
|
const struct irq_affinity *aff_desc)
|
|
{
|
|
{
|
|
- if (min_vecs > 1)
|
|
|
|
- return -EINVAL;
|
|
|
|
- return 1;
|
|
|
|
|
|
+ if ((flags & PCI_IRQ_LEGACY) && min_vecs == 1 && dev->irq)
|
|
|
|
+ return 1;
|
|
|
|
+ return -ENOSPC;
|
|
}
|
|
}
|
|
|
|
|
|
static inline void pci_free_irq_vectors(struct pci_dev *dev)
|
|
static inline void pci_free_irq_vectors(struct pci_dev *dev)
|