1PCI_ALLOC_IRQ_VECTOR(9) Hardware Interfaces PCI_ALLOC_IRQ_VECTOR(9)
2
3
4
6 pci_alloc_irq_vectors_affinity - allocate multiple IRQs for a device
7
9 int pci_alloc_irq_vectors_affinity(struct pci_dev * dev,
10 unsigned int min_vecs,
11 unsigned int max_vecs,
12 unsigned int flags,
13 const struct irq_affinity * affd);
14
16 dev
17 PCI device to operate on
18
19 min_vecs
20 minimum number of vectors required (must be >= 1)
21
22 max_vecs
23 maximum (desired) number of vectors
24
25 flags
26 flags or quirks for the allocation
27
28 affd
29 optional description of the affinity requirements
30
32 Allocate up to max_vecs interrupt vectors for dev, using MSI-X or MSI
33 vectors if available, and fall back to a single legacy vector if
34 neither is available. Return the number of vectors allocated, (which
35 might be smaller than max_vecs) if successful, or a negative error code
36 on error. If less than min_vecs interrupt vectors are available for dev
37 the function will fail with -ENOSPC.
38
39 To get the Linux IRQ number used for a vector that can be passed to
40 request_irq use the pci_irq_vector helper.
41
43Kernel Hackers Manual 3.10 June 2019 PCI_ALLOC_IRQ_VECTOR(9)