Home
last modified time | relevance | path

Searched full:nvec (Results 1 – 25 of 63) sorted by relevance

123

/linux/drivers/pci/msi/
H A Dmsi.c23 * @nvec: how many MSIs have been requested?
29 static int pci_msi_supported(struct pci_dev *dev, int nvec) in pci_msi_supported() argument
43 * b) the list manipulation code assumes nvec >= 1. in pci_msi_supported()
45 if (nvec < 1) in pci_msi_supported()
285 static int msi_setup_msi_desc(struct pci_dev *dev, int nvec, in msi_setup_msi_desc() argument
301 desc.nvec_used = nvec; in msi_setup_msi_desc()
306 desc.pci.msi_attrib.multiple = ilog2(__roundup_pow_of_two(nvec)); in msi_setup_msi_desc()
338 static int __msi_capability_init(struct pci_dev *dev, int nvec, struct irq_affinity_desc *masks) in __msi_capability_init() argument
340 int ret = msi_setup_msi_desc(dev, nvec, masks); in __msi_capability_init()
357 ret = pci_msi_setup_msi_irqs(dev, nvec, PCI_CAP_ID_MSI); in __msi_capability_init()
[all …]
H A Dlegacy.c19 int __weak arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in arch_setup_msi_irqs() argument
28 if (type == PCI_CAP_ID_MSI && nvec > 1) in arch_setup_msi_irqs()
66 int pci_msi_legacy_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in pci_msi_legacy_setup_msi_irqs() argument
68 int ret = arch_setup_msi_irqs(dev, nvec, type); in pci_msi_legacy_setup_msi_irqs()
H A Dmsi.h8 int pci_msi_setup_msi_irqs(struct pci_dev *dev, int nvec, int type);
116 int pci_msi_legacy_setup_msi_irqs(struct pci_dev *dev, int nvec, int type);
119 static inline int pci_msi_legacy_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in pci_msi_legacy_setup_msi_irqs() argument
/linux/drivers/staging/nvec/
H A Dnvec_paz00.c15 #include "nvec.h"
23 struct nvec_chip *nvec; member
34 nvec_write_async(led->nvec, buf, sizeof(buf)); in nvec_led_brightness_set()
41 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); in nvec_paz00_probe() local
54 led->nvec = nvec; in nvec_paz00_probe()
71 .name = "nvec-paz00",
78 MODULE_DESCRIPTION("Tegra NVEC PAZ00 driver");
80 MODULE_ALIAS("platform:nvec-paz00");
H A DKconfig11 called mfd-nvec
21 called keyboard-nvec
31 called serio-nvec-ps2
35 tristate "NVEC charger and battery"
42 called nvec-power
53 called nvec-paz00
H A Dnvec_power.c19 #include "nvec.h"
26 struct nvec_chip *nvec; member
116 nvec_write_async(power->nvec, buf, 2); in get_bat_mfg_data()
358 nvec_write_async(power->nvec, buf, 2); in nvec_power_poll()
367 nvec_write_async(power->nvec, buf, 2); in nvec_power_poll()
377 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); in nvec_power_probe() local
385 power->nvec = nvec; in nvec_power_probe()
409 nvec_register_notifier(nvec, &power->notifier, NVEC_SYS); in nvec_power_probe()
424 nvec_unregister_notifier(power->nvec, &power->notifier); in nvec_power_remove()
438 .name = "nvec-power",
[all …]
H A DREADME1 NVEC: An NVidia compliant Embedded Controller Protocol Implementation
3 This is an implementation of the NVEC protocol used to communicate with an
9 but the source code[1] of the published nvec reference drivers can be a guide.
13 [1] e.g. https://nv-tegra.nvidia.com/gitweb/?p=linux-2.6.git;a=tree;f=arch/arm/mach-tegra/nvec;hb=a…
H A Dnvec.h3 * NVEC: NVIDIA compliant embedded controller interface
164 int nvec_write_async(struct nvec_chip *nvec, const unsigned char *data,
167 int nvec_write_sync(struct nvec_chip *nvec,
171 int nvec_register_notifier(struct nvec_chip *nvec,
177 void nvec_msg_free(struct nvec_chip *nvec, struct nvec_msg *msg);
H A Dnvec-keytable.h3 * drivers/input/keyboard/tegra-nvec.c
5 * Keyboard class input driver for keyboards connected to an NvEc compliant
/linux/drivers/irqchip/
H A Dirq-gic-its-msi-parent.c61 int nvec, msi_alloc_info_t *info) in its_pci_msi_prepare() argument
95 nvec = max(nvec, alias_count); in its_pci_msi_prepare()
98 nvec = max_t(int, minnvec, roundup_pow_of_two(nvec)); in its_pci_msi_prepare()
101 return msi_info->ops->msi_prepare(domain->parent, dev, nvec, info); in its_pci_msi_prepare()
105 int nvec, msi_alloc_info_t *info) in its_v5_pci_msi_prepare() argument
135 nvec = roundup_pow_of_two(nvec); in its_v5_pci_msi_prepare()
138 return msi_info->ops->msi_prepare(domain->parent, dev, nvec, info); in its_v5_pci_msi_prepare()
230 int nvec, msi_alloc_info_t *info) in its_pmsi_prepare() argument
247 nvec = max_t(int, 32, roundup_pow_of_two(nvec)); in its_pmsi_prepare()
251 dev, nvec, info); in its_pmsi_prepare()
[all …]
/linux/drivers/net/wwan/iosm/
H A Diosm_ipc_irq.c40 if (instance >= ipc_pcie->nvec) in ipc_msi_interrupt()
54 while (--ipc_pcie->nvec >= 0) in ipc_release_irq()
55 free_irq(pdev->irq + ipc_pcie->nvec, ipc_pcie); in ipc_release_irq()
65 ipc_pcie->nvec = pci_alloc_irq_vectors(pdev, IPC_MSI_VECTORS, in ipc_acquire_irq()
68 if (ipc_pcie->nvec < 0) { in ipc_acquire_irq()
69 rc = ipc_pcie->nvec; in ipc_acquire_irq()
76 for (i = 0; i < ipc_pcie->nvec; ++i) { in ipc_acquire_irq()
82 ipc_pcie->nvec = i; in ipc_acquire_irq()
/linux/arch/powerpc/platforms/pseries/
H A Dmsi.c117 static int check_req(struct pci_dev *pdev, int nvec, char *prop_name) in check_req() argument
132 if (req_msi < nvec) { in check_req()
133 pr_debug("rtas_msi: %s requests < %d MSIs\n", prop_name, nvec); in check_req()
144 static int check_req_msi(struct pci_dev *pdev, int nvec) in check_req_msi() argument
146 return check_req(pdev, nvec, "ibm,req#msi"); in check_req_msi()
149 static int check_req_msix(struct pci_dev *pdev, int nvec) in check_req_msix() argument
151 return check_req(pdev, nvec, "ibm,req#msi-x"); in check_req_msix()
349 int nvec = nvec_in; in rtas_prepare_msi_irqs() local
353 rc = check_req_msix(pdev, nvec); in rtas_prepare_msi_irqs()
355 rc = check_req_msi(pdev, nvec); in rtas_prepare_msi_irqs()
[all …]
/linux/drivers/base/
H A Dplatform-msi.c54 * @nvec: The number of interrupts to allocate
62 * a fixed size of @nvec. The domain is managed by devres and will
69 int platform_device_msi_init_and_alloc_irqs(struct device *dev, unsigned int nvec, in platform_device_msi_init_and_alloc_irqs() argument
84 nvec, NULL, write_msi_msg)) in platform_device_msi_init_and_alloc_irqs()
87 return msi_domain_alloc_irqs_range(dev, MSI_DEFAULT_DOMAIN, 0, nvec - 1); in platform_device_msi_init_and_alloc_irqs()
H A Dplatform.c344 int i, ret, nvec; in devm_platform_get_irqs_affinity() local
352 nvec = platform_irq_count(dev); in devm_platform_get_irqs_affinity()
353 if (nvec < 0) in devm_platform_get_irqs_affinity()
354 return nvec; in devm_platform_get_irqs_affinity()
356 if (nvec < minvec) in devm_platform_get_irqs_affinity()
359 nvec = irq_calc_affinity_vectors(minvec, nvec, affd); in devm_platform_get_irqs_affinity()
360 if (nvec < minvec) in devm_platform_get_irqs_affinity()
363 if (nvec > maxvec) in devm_platform_get_irqs_affinity()
364 nvec = maxvec; in devm_platform_get_irqs_affinity()
366 size = sizeof(*ptr) + sizeof(unsigned int) * nvec; in devm_platform_get_irqs_affinity()
[all …]
/linux/drivers/soc/ti/
H A Dti_sci_inta_msi.c97 int ret, nvec; in ti_sci_inta_msi_domain_alloc_irqs() local
107 nvec = ti_sci_inta_msi_alloc_descs(dev, res); in ti_sci_inta_msi_domain_alloc_irqs()
108 if (nvec <= 0) in ti_sci_inta_msi_domain_alloc_irqs()
109 return nvec; in ti_sci_inta_msi_domain_alloc_irqs()
112 ret = msi_domain_alloc_irqs_all_locked(dev, MSI_DEFAULT_DOMAIN, nvec); in ti_sci_inta_msi_domain_alloc_irqs()
/linux/arch/powerpc/kernel/
H A Dmsi.c12 int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in arch_setup_msi_irqs() argument
23 if (type == PCI_CAP_ID_MSI && nvec > 1) in arch_setup_msi_irqs()
26 return phb->controller_ops.setup_msi_irqs(dev, nvec, type); in arch_setup_msi_irqs()
/linux/drivers/pci/pcie/
H A Dportdrv.c60 u32 nvec = 0, pos; in pcie_message_numbers() local
74 nvec = *pme + 1; in pcie_message_numbers()
86 nvec = max(nvec, *aer + 1); in pcie_message_numbers()
97 nvec = max(nvec, *dpc + 1); in pcie_message_numbers()
101 return nvec; in pcie_message_numbers()
115 int nr_entries, nvec, pcie_irq; in pcie_port_enable_irq_vec() local
125 nvec = pcie_message_numbers(dev, mask, &pme, &aer, &dpc); in pcie_port_enable_irq_vec()
126 if (nvec > nr_entries) { in pcie_port_enable_irq_vec()
142 if (nvec != nr_entries) { in pcie_port_enable_irq_vec()
145 nr_entries = pci_alloc_irq_vectors(dev, nvec, nvec, in pcie_port_enable_irq_vec()
/linux/drivers/mmc/host/
H A Dcavium-thunderx.c40 int nvec, ret, i; in thunder_mmc_register_interrupts() local
42 nvec = pci_alloc_irq_vectors(pdev, 1, 9, PCI_IRQ_MSIX); in thunder_mmc_register_interrupts()
43 if (nvec < 0) in thunder_mmc_register_interrupts()
44 return nvec; in thunder_mmc_register_interrupts()
47 for (i = 0; i < nvec; i++) { in thunder_mmc_register_interrupts()
/linux/Documentation/devicetree/bindings/soc/tegra/
H A Dnvidia,nvec.yaml4 $id: http://devicetree.org/schemas/soc/tegra/nvidia,nvec.yaml#
15 const: nvidia,nvec
73 compatible = "nvidia,nvec";
/linux/arch/x86/include/asm/xen/
H A Dpci.h34 int (*enable_msix)(struct pci_dev *dev, int vectors[], int nvec);
53 int vectors[], int nvec) in xen_pci_frontend_enable_msix() argument
56 return xen_pci_frontend->enable_msix(dev, vectors, nvec); in xen_pci_frontend_enable_msix()
/linux/drivers/gpu/drm/xe/
H A Dxe_irq.c758 int nvec = 1; in xe_irq_install() local
766 nvec = xe->irq.msix.nvec; in xe_irq_install()
770 err = pci_alloc_irq_vectors(pdev, nvec, nvec, irq_flags); in xe_irq_install()
835 int nvec = pci_msix_vec_count(pdev); in xe_irq_msix_init() local
837 if (nvec == -EINVAL) in xe_irq_msix_init()
840 if (nvec < 0) { in xe_irq_msix_init()
841 drm_err(&xe->drm, "Failed getting MSI-X vectors count: %d\n", nvec); in xe_irq_msix_init()
842 return nvec; in xe_irq_msix_init()
845 xe->irq.msix.nvec = nvec; in xe_irq_msix_init()
887 limit = (dynamic_msix) ? XA_LIMIT(NUM_OF_STATIC_MSIX, xe->irq.msix.nvec - 1) : in xe_irq_msix_alloc_vector()
/linux/arch/powerpc/platforms/pasemi/
H A Dmsi.c74 static int pasemi_msi_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type) in pasemi_msi_setup_msi_irqs() argument
83 pr_debug("pasemi_msi_setup_msi_irqs, pdev %p nvec %d type %d\n", in pasemi_msi_setup_msi_irqs()
84 pdev, nvec, type); in pasemi_msi_setup_msi_irqs()
/linux/drivers/net/ethernet/microsoft/mana/
H A Dgdma_main.c1541 static int mana_gd_setup_dyn_irqs(struct pci_dev *pdev, int nvec) in mana_gd_setup_dyn_irqs() argument
1548 irqs = kmalloc_array(nvec, sizeof(int), GFP_KERNEL); in mana_gd_setup_dyn_irqs()
1558 for (i = 1; i <= nvec; i++) { in mana_gd_setup_dyn_irqs()
1594 err = irq_setup(irqs, nvec, gc->numa_node, skip_first_cpu); in mana_gd_setup_dyn_irqs()
1622 static int mana_gd_setup_irqs(struct pci_dev *pdev, int nvec) in mana_gd_setup_irqs() argument
1630 irqs = kmalloc_array(nvec, sizeof(int), GFP_KERNEL); in mana_gd_setup_irqs()
1636 for (i = 0; i < nvec; i++) { in mana_gd_setup_irqs()
1676 if (nvec > num_online_cpus()) { in mana_gd_setup_irqs()
1680 nvec -= 1; in mana_gd_setup_irqs()
1683 err = irq_setup(irqs, nvec, gc->numa_node, false); in mana_gd_setup_irqs()
[all …]
/linux/arch/s390/pci/
H A Dpci_irq.c293 int arch_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type) in arch_setup_msi_irqs() argument
306 msi_vecs = min_t(unsigned int, nvec, zdev->max_msi); in arch_setup_msi_irqs()
307 if (msi_vecs < nvec) { in arch_setup_msi_irqs()
309 pci_name(pdev), nvec, zdev->max_msi); in arch_setup_msi_irqs()
379 return (zdev->msi_nr_irqs == nvec) ? 0 : zdev->msi_nr_irqs; in arch_setup_msi_irqs()
/linux/drivers/scsi/bfa/
H A Dbfad.c1125 for (i = 0, bfad->nvec = 0; i < MAX_MSIX_ENTRY; i++) { in bfad_init_msix_entry()
1127 bfad->msix_tab[bfad->nvec].msix.entry = i; in bfad_init_msix_entry()
1128 bfad->msix_tab[bfad->nvec].bfad = bfad; in bfad_init_msix_entry()
1129 msix_entries[bfad->nvec].entry = i; in bfad_init_msix_entry()
1130 bfad->nvec++; in bfad_init_msix_entry()
1143 for (i = 0; i < bfad->nvec; i++) { in bfad_install_msix_handler()
1193 msix_entries, bfad->nvec); in bfad_setup_intr()
1198 bfad->pci_name, bfad->nvec, error); in bfad_setup_intr()
1199 bfad->nvec = 1; in bfad_setup_intr()
1220 for (i = 0; i < bfad->nvec; i++) { in bfad_setup_intr()
[all …]

123