Lines Matching defs:index
134 * at a given MSI-X vector index or any free vector index
137 * @index: Index to allocate. If @index == MSI_ANY_INDEX this allocates
138 * the next free index in the MSI-X table
143 * On success msi_map::index contains the allocated index (>= 0) and
146 * On fail msi_map::index contains the error code and msi_map::virq
149 struct msi_map pci_msix_alloc_irq_at(struct pci_dev *dev, unsigned int index,
152 struct msi_map map = { .index = -ENOTSUPP };
160 return msi_domain_alloc_irq_at(&dev->dev, MSI_DEFAULT_DOMAIN, index, affdesc, NULL);
174 if (WARN_ON_ONCE(map.index < 0 || map.virq <= 0))
178 msi_domain_free_irqs_range(&dev->dev, MSI_DEFAULT_DOMAIN, map.index, map.index);
304 * @nr: device-relative interrupt vector index (0-based); has different
307 * * MSI-X the index in the MSI-X vector table
308 * * MSI the index of the enabled MSI vectors
328 * @nr: device-relative interrupt vector index (0-based); has different
331 * * MSI-X the index in the MSI-X vector table
332 * * MSI the index of the enabled MSI vectors
377 * There is no index for IMS allocations as IMS is an implementation
379 * index, which might be a pure software construct, and device
381 * the index - if there is a hardware table - or in case of purely software
389 * On success msi_map::index contains the allocated index (>= 0) and
392 * On fail msi_map::index contains the error code and msi_map::virq
412 if (WARN_ON_ONCE(map.index < 0 || map.virq <= 0))
414 msi_domain_free_irqs_range(&dev->dev, MSI_SECONDARY_DOMAIN, map.index, map.index);