pci_alloc_irq_vectors_affinity — allocate multiple IRQs for a device
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) ; |
struct pci_dev * dev
PCI device to operate on
unsigned int min_vecs
minimum number of vectors required (must be >= 1)
unsigned int max_vecs
maximum (desired) number of vectors
unsigned int flags
flags or quirks for the allocation
const struct irq_affinity * affd
optional description of the affinity requirements
Allocate up to max_vecs
interrupt vectors for dev
, using MSI-X or MSI
vectors if available, and fall back to a single legacy vector
if neither is available. Return the number of vectors allocated,
(which might be smaller than max_vecs
) if successful, or a negative
error code on error. If less than min_vecs
interrupt vectors are
available for dev
the function will fail with -ENOSPC.
To get the Linux IRQ number used for a vector that can be passed to
request_irq
use the pci_irq_vector
helper.