Scroll to navigation

PCI_ALLOC_IRQ_VECTOR(9) Hardware Interfaces PCI_ALLOC_IRQ_VECTOR(9)

NAME

pci_alloc_irq_vectors_affinity - allocate multiple IRQs for a device

SYNOPSIS

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);

ARGUMENTS

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

DESCRIPTION

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.

COPYRIGHT

July 2017 Kernel Hackers Manual 4.11