Lines Matching refs:nvec

35 static int pci_msi_setup_msi_irqs(struct pci_dev *dev, int nvec, int type)  in pci_msi_setup_msi_irqs()  argument
41 return msi_domain_alloc_irqs(domain, &dev->dev, nvec); in pci_msi_setup_msi_irqs()
43 return arch_setup_msi_irqs(dev, nvec, type); in pci_msi_setup_msi_irqs()
90 int __weak arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in arch_setup_msi_irqs() argument
97 return chip->setup_irqs(chip, dev, nvec, type); in arch_setup_msi_irqs()
102 if (type == PCI_CAP_ID_MSI && nvec > 1) in arch_setup_msi_irqs()
557 msi_setup_entry(struct pci_dev *dev, int nvec, struct irq_affinity *affd) in msi_setup_entry() argument
564 masks = irq_create_affinity_masks(nvec, affd); in msi_setup_entry()
567 entry = alloc_msi_entry(&dev->dev, nvec, masks); in msi_setup_entry()
580 entry->msi_attrib.multiple = ilog2(__roundup_pow_of_two(nvec)); in msi_setup_entry()
622 static int msi_capability_init(struct pci_dev *dev, int nvec, in msi_capability_init() argument
631 entry = msi_setup_entry(dev, nvec, affd); in msi_capability_init()
642 ret = pci_msi_setup_msi_irqs(dev, nvec, PCI_CAP_ID_MSI); in msi_capability_init()
694 struct msix_entry *entries, int nvec, in msix_setup_entries() argument
703 masks = irq_create_affinity_masks(nvec, affd); in msix_setup_entries()
705 for (i = 0, curmsk = masks; i < nvec; i++) { in msix_setup_entries()
774 int nvec, struct irq_affinity *affd) in msix_capability_init() argument
789 ret = msix_setup_entries(dev, base, entries, nvec, affd); in msix_capability_init()
793 ret = pci_msi_setup_msi_irqs(dev, nvec, PCI_CAP_ID_MSIX); in msix_capability_init()
856 static int pci_msi_supported(struct pci_dev *dev, int nvec) in pci_msi_supported() argument
872 if (nvec < 1) in pci_msi_supported()
970 int nvec, struct irq_affinity *affd, int flags) in __pci_enable_msix() argument
975 if (!pci_msi_supported(dev, nvec)) in __pci_enable_msix()
981 if (nvec > nr_entries && !(flags & PCI_IRQ_VIRTUAL)) in __pci_enable_msix()
986 for (i = 0; i < nvec; i++) { in __pci_enable_msix()
989 for (j = i + 1; j < nvec; j++) { in __pci_enable_msix()
1001 return msix_capability_init(dev, entries, nvec, affd); in __pci_enable_msix()
1058 int nvec; in __pci_enable_msi_range() local
1076 nvec = pci_msi_vec_count(dev); in __pci_enable_msi_range()
1077 if (nvec < 0) in __pci_enable_msi_range()
1078 return nvec; in __pci_enable_msi_range()
1079 if (nvec < minvec) in __pci_enable_msi_range()
1082 if (nvec > maxvec) in __pci_enable_msi_range()
1083 nvec = maxvec; in __pci_enable_msi_range()
1087 nvec = irq_calc_affinity_vectors(minvec, nvec, affd); in __pci_enable_msi_range()
1088 if (nvec < minvec) in __pci_enable_msi_range()
1092 rc = msi_capability_init(dev, nvec, affd); in __pci_enable_msi_range()
1094 return nvec; in __pci_enable_msi_range()
1101 nvec = rc; in __pci_enable_msi_range()
1120 int rc, nvec = maxvec; in __pci_enable_msix_range() local
1130 nvec = irq_calc_affinity_vectors(minvec, nvec, affd); in __pci_enable_msix_range()
1131 if (nvec < minvec) in __pci_enable_msix_range()
1135 rc = __pci_enable_msix(dev, entries, nvec, affd, flags); in __pci_enable_msix_range()
1137 return nvec; in __pci_enable_msix_range()
1144 nvec = rc; in __pci_enable_msix_range()