/kernel/linux/linux-5.10/drivers/staging/nvec/ |
H A D | nvec.c | 33 #include "nvec.h" 80 .name = "nvec-kbd", 83 .name = "nvec-mouse", 86 .name = "nvec-power", 90 .name = "nvec-power", 94 .name = "nvec-paz00", 99 * nvec_register_notifier - Register a notifier with nvec 100 * @nvec: A &struct nvec_chip 103 * Registers a notifier with @nvec. The notifier will be added to an atomic 107 int nvec_register_notifier(struct nvec_chip *nvec, struc argument 122 nvec_unregister_notifier(struct nvec_chip *nvec, struct notifier_block *nb) nvec_unregister_notifier() argument 137 struct nvec_chip *nvec = container_of(nb, struct nvec_chip, nvec_status_notifier() local 165 nvec_msg_alloc(struct nvec_chip *nvec, enum nvec_msg_category category) nvec_msg_alloc() argument 190 nvec_msg_free(struct nvec_chip *nvec, struct nvec_msg *msg) nvec_msg_free() argument 235 nvec_gpio_set_value(struct nvec_chip *nvec, int value) nvec_gpio_set_value() argument 254 nvec_write_async(struct nvec_chip *nvec, const unsigned char *data, short size) nvec_write_async() argument 296 nvec_write_sync(struct nvec_chip *nvec, const unsigned char *data, short size, struct nvec_msg **msg) nvec_write_sync() argument 337 nvec_toggle_global_events(struct nvec_chip *nvec, bool state) nvec_toggle_global_events() argument 375 struct nvec_chip *nvec = container_of(work, struct nvec_chip, tx_work); nvec_request_master() local 412 parse_msg(struct nvec_chip *nvec, struct nvec_msg *msg) parse_msg() argument 439 struct nvec_chip *nvec = container_of(work, struct nvec_chip, rx_work); nvec_dispatch() local 470 nvec_tx_completed(struct nvec_chip *nvec) nvec_tx_completed() argument 488 nvec_rx_completed(struct nvec_chip *nvec) nvec_rx_completed() argument 529 nvec_invalid_flags(struct nvec_chip *nvec, unsigned int status, bool reset) nvec_invalid_flags() argument 546 nvec_tx_set(struct nvec_chip *nvec) nvec_tx_set() argument 582 struct nvec_chip *nvec = dev; nvec_interrupt() local 721 tegra_init_i2c_slave(struct nvec_chip *nvec) tegra_init_i2c_slave() argument 747 nvec_disable_i2c_slave(struct nvec_chip *nvec) nvec_disable_i2c_slave() argument 768 struct nvec_chip *nvec; tegra_nvec_probe() local 886 struct nvec_chip *nvec = platform_get_drvdata(pdev); tegra_nvec_remove() local 903 struct nvec_chip *nvec = dev_get_drvdata(dev); nvec_suspend() local 923 struct nvec_chip *nvec = dev_get_drvdata(dev); nvec_resume() local [all...] |
H A D | nvec_kbd.c | 17 #include "nvec-keytable.h" 18 #include "nvec.h" 34 struct nvec_chip *nvec; member 50 nvec_write_async(keys_dev.nvec, buf, sizeof(buf)); in nvec_kbd_toggle_led() 88 struct nvec_chip *nvec = keys_dev.nvec; in nvec_kbd_event() local 101 nvec_write_async(nvec, buf, sizeof(buf)); in nvec_kbd_event() 108 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); in nvec_kbd_probe() local 128 idev->name = "nvec keyboard"; in nvec_kbd_probe() 129 idev->phys = "nvec"; in nvec_kbd_probe() 166 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); nvec_kbd_remove() local [all...] |
H A D | nvec_ps2.c | 18 #include "nvec.h" 44 struct nvec_chip *nvec; member 53 return nvec_write_async(ps2_dev.nvec, buf, sizeof(buf)); in ps2_startstreaming() 60 nvec_write_async(ps2_dev.nvec, buf, sizeof(buf)); in ps2_stopstreaming() 70 return nvec_write_async(ps2_dev.nvec, buf, sizeof(buf)); in ps2_sendcommand() 103 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); in nvec_mouse_probe() local 115 strlcpy(ser_dev->name, "nvec mouse", sizeof(ser_dev->name)); in nvec_mouse_probe() 116 strlcpy(ser_dev->phys, "nvec", sizeof(ser_dev->phys)); in nvec_mouse_probe() 120 ps2_dev.nvec = nvec; in nvec_mouse_probe() 130 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); nvec_mouse_remove() local [all...] |
H A D | nvec_paz00.c | 15 #include "nvec.h" 26 struct nvec_chip *nvec; member 37 nvec_write_async(led->nvec, buf, sizeof(buf)); in nvec_led_brightness_set() 44 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); in nvec_paz00_probe() local 57 led->nvec = nvec; in nvec_paz00_probe() 74 .name = "nvec-paz00", 83 MODULE_ALIAS("platform:nvec-paz00");
|
/kernel/linux/linux-6.6/drivers/staging/nvec/ |
H A D | nvec.c | 33 #include "nvec.h" 80 .name = "nvec-kbd", 83 .name = "nvec-mouse", 86 .name = "nvec-power", 90 .name = "nvec-power", 94 .name = "nvec-paz00", 99 * nvec_register_notifier - Register a notifier with nvec 100 * @nvec: A &struct nvec_chip 104 * Registers a notifier with @nvec. The notifier will be added to an atomic 108 int nvec_register_notifier(struct nvec_chip *nvec, struc argument 123 nvec_unregister_notifier(struct nvec_chip *nvec, struct notifier_block *nb) nvec_unregister_notifier() argument 138 struct nvec_chip *nvec = container_of(nb, struct nvec_chip, nvec_status_notifier() local 166 nvec_msg_alloc(struct nvec_chip *nvec, enum nvec_msg_category category) nvec_msg_alloc() argument 191 nvec_msg_free(struct nvec_chip *nvec, struct nvec_msg *msg) nvec_msg_free() argument 236 nvec_gpio_set_value(struct nvec_chip *nvec, int value) nvec_gpio_set_value() argument 255 nvec_write_async(struct nvec_chip *nvec, const unsigned char *data, short size) nvec_write_async() argument 297 nvec_write_sync(struct nvec_chip *nvec, const unsigned char *data, short size, struct nvec_msg **msg) nvec_write_sync() argument 338 nvec_toggle_global_events(struct nvec_chip *nvec, bool state) nvec_toggle_global_events() argument 376 struct nvec_chip *nvec = container_of(work, struct nvec_chip, tx_work); nvec_request_master() local 413 parse_msg(struct nvec_chip *nvec, struct nvec_msg *msg) parse_msg() argument 440 struct nvec_chip *nvec = container_of(work, struct nvec_chip, rx_work); nvec_dispatch() local 471 nvec_tx_completed(struct nvec_chip *nvec) nvec_tx_completed() argument 489 nvec_rx_completed(struct nvec_chip *nvec) nvec_rx_completed() argument 530 nvec_invalid_flags(struct nvec_chip *nvec, unsigned int status, bool reset) nvec_invalid_flags() argument 547 nvec_tx_set(struct nvec_chip *nvec) nvec_tx_set() argument 583 struct nvec_chip *nvec = dev; nvec_interrupt() local 722 tegra_init_i2c_slave(struct nvec_chip *nvec) tegra_init_i2c_slave() argument 748 nvec_disable_i2c_slave(struct nvec_chip *nvec) nvec_disable_i2c_slave() argument 769 struct nvec_chip *nvec; tegra_nvec_probe() local 887 struct nvec_chip *nvec = platform_get_drvdata(pdev); tegra_nvec_remove() local 902 struct nvec_chip *nvec = dev_get_drvdata(dev); nvec_suspend() local 922 struct nvec_chip *nvec = dev_get_drvdata(dev); nvec_resume() local [all...] |
H A D | nvec_kbd.c | 17 #include "nvec-keytable.h" 18 #include "nvec.h" 34 struct nvec_chip *nvec; member 50 nvec_write_async(keys_dev.nvec, buf, sizeof(buf)); in nvec_kbd_toggle_led() 88 struct nvec_chip *nvec = keys_dev.nvec; in nvec_kbd_event() local 101 nvec_write_async(nvec, buf, sizeof(buf)); in nvec_kbd_event() 108 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); in nvec_kbd_probe() local 128 idev->name = "nvec keyboard"; in nvec_kbd_probe() 129 idev->phys = "nvec"; in nvec_kbd_probe() 166 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); nvec_kbd_remove() local [all...] |
H A D | nvec_ps2.c | 18 #include "nvec.h" 44 struct nvec_chip *nvec; member 53 return nvec_write_async(ps2_dev.nvec, buf, sizeof(buf)); in ps2_startstreaming() 60 nvec_write_async(ps2_dev.nvec, buf, sizeof(buf)); in ps2_stopstreaming() 70 return nvec_write_async(ps2_dev.nvec, buf, sizeof(buf)); in ps2_sendcommand() 103 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); in nvec_mouse_probe() local 115 strscpy(ser_dev->name, "nvec mouse", sizeof(ser_dev->name)); in nvec_mouse_probe() 116 strscpy(ser_dev->phys, "nvec", sizeof(ser_dev->phys)); in nvec_mouse_probe() 120 ps2_dev.nvec = nvec; in nvec_mouse_probe() 130 struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent); nvec_mouse_remove() local [all...] |
H A D | nvec_paz00.c | 15 #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", 80 MODULE_ALIAS("platform:nvec-paz00");
|
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | pci_irq.c | 23 int nvec; member 48 return table->nvec - MLX5_IRQ_VEC_COMP_BASE; in mlx5_irq_get_num_comp() 94 static int request_irqs(struct mlx5_core_dev *dev, int nvec) in request_irqs() argument 100 for (i = 0; i < nvec; i++) { in request_irqs() 153 for (; vecidx < irq_table->nvec; vecidx++) { in irq_set_rmap() 210 int nvec = mlx5_irq_get_num_comp(mdev->priv.irq_table); in set_comp_irq_affinity_hints() local 214 for (i = 0; i < nvec; i++) { in set_comp_irq_affinity_hints() 231 int nvec = mlx5_irq_get_num_comp(mdev->priv.irq_table); in clear_comp_irqs_affinity_hints() local 234 for (i = 0; i < nvec; i++) in clear_comp_irqs_affinity_hints() 256 for (i = 0; i < table->nvec; in unrequest_irqs() 268 int nvec; mlx5_irq_table_create() local [all...] |
/kernel/linux/linux-5.10/drivers/base/ |
H A D | platform-msi.c | 109 static void platform_msi_free_descs(struct device *dev, int base, int nvec) in platform_msi_free_descs() argument 115 desc->platform.msi_index < (base + nvec)) { in platform_msi_free_descs() 123 int nvec, in platform_msi_alloc_descs_with_irq() 136 for (i = 0; i < nvec; i++) { in platform_msi_alloc_descs_with_irq() 148 if (i != nvec) { in platform_msi_alloc_descs_with_irq() 150 platform_msi_free_descs(dev, base, nvec); in platform_msi_alloc_descs_with_irq() 158 static int platform_msi_alloc_descs(struct device *dev, int nvec, in platform_msi_alloc_descs() argument 162 return platform_msi_alloc_descs_with_irq(dev, 0, nvec, data); in platform_msi_alloc_descs() 196 platform_msi_alloc_priv_data(struct device *dev, unsigned int nvec, in platform_msi_alloc_priv_data() argument 206 if (!dev->msi_domain || !write_msi_msg || !nvec || nve in platform_msi_alloc_priv_data() 122 platform_msi_alloc_descs_with_irq(struct device *dev, int virq, int nvec, struct platform_msi_priv_data *data) platform_msi_alloc_descs_with_irq() argument 251 platform_msi_domain_alloc_irqs(struct device *dev, unsigned int nvec, irq_write_msi_msg_t write_msi_msg) platform_msi_domain_alloc_irqs() argument 324 __platform_msi_create_device_domain(struct device *dev, unsigned int nvec, bool is_tree, irq_write_msi_msg_t write_msi_msg, const struct irq_domain_ops *ops, void *host_data) __platform_msi_create_device_domain() argument 367 platform_msi_domain_free(struct irq_domain *domain, unsigned int virq, unsigned int nvec) platform_msi_domain_free() argument [all...] |
/kernel/linux/linux-6.6/drivers/pci/msi/ |
H A D | msi.c | 22 * @nvec: how many MSIs have been requested? 28 static int pci_msi_supported(struct pci_dev *dev, int nvec) in pci_msi_supported() argument 42 * b) the list manipulation code assumes nvec >= 1. in pci_msi_supported() 44 if (nvec < 1) in pci_msi_supported() 281 static int msi_setup_msi_desc(struct pci_dev *dev, int nvec, in msi_setup_msi_desc() argument 298 desc.nvec_used = nvec; in msi_setup_msi_desc() 303 desc.pci.msi_attrib.multiple = ilog2(__roundup_pow_of_two(nvec)); in msi_setup_msi_desc() 338 * @nvec: number of interrupts to allocate 347 static int msi_capability_init(struct pci_dev *dev, int nvec, in msi_capability_init() argument 355 if (nvec > in msi_capability_init() 408 int nvec; __pci_enable_msi_range() local 607 msix_setup_msi_descs(struct pci_dev *dev, struct msix_entry *entries, int nvec, struct irq_affinity_desc *masks) msix_setup_msi_descs() argument 654 msix_setup_interrupts(struct pci_dev *dev, struct msix_entry *entries, int nvec, struct irq_affinity *affd) msix_setup_interrupts() argument 699 msix_capability_init(struct pci_dev *dev, struct msix_entry *entries, int nvec, struct irq_affinity *affd) msix_capability_init() argument 753 pci_msix_validate_entries(struct pci_dev *dev, struct msix_entry *entries, int nvec) pci_msix_validate_entries() argument 779 int hwsize, rc, nvec = maxvec; __pci_enable_msix_range() local [all...] |
H A D | legacy.c | 19 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()
|
/kernel/linux/linux-6.6/drivers/net/wwan/iosm/ |
H A D | iosm_ipc_irq.c | 40 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()
|
/kernel/linux/linux-5.10/include/linux/ |
H A D | msi.h | 190 struct msi_desc *alloc_msi_entry(struct device *dev, int nvec, 213 int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type); 217 static inline int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in arch_setup_msi_irqs() argument 245 int nvec, int type); 313 struct device *dev, int nvec, 321 struct device *dev, int nvec); 382 int nvec); 384 int nvec); 392 int platform_msi_domain_alloc_irqs(struct device *dev, unsigned int nvec, 398 int nvec, msi_alloc_info_ [all...] |
/kernel/linux/linux-6.6/arch/powerpc/platforms/pseries/ |
H A D | msi.c | 115 static int check_req(struct pci_dev *pdev, int nvec, char *prop_name) in check_req() argument 130 if (req_msi < nvec) { in check_req() 131 pr_debug("rtas_msi: %s requests < %d MSIs\n", prop_name, nvec); in check_req() 142 static int check_req_msi(struct pci_dev *pdev, int nvec) in check_req_msi() argument 144 return check_req(pdev, nvec, "ibm,req#msi"); in check_req_msi() 147 static int check_req_msix(struct pci_dev *pdev, int nvec) in check_req_msix() argument 149 return check_req(pdev, nvec, "ibm,req#msi-x"); in check_req_msix() 347 int nvec = nvec_in; in rtas_prepare_msi_irqs() local 351 rc = check_req_msix(pdev, nvec); in rtas_prepare_msi_irqs() 353 rc = check_req_msi(pdev, nvec); in rtas_prepare_msi_irqs() 424 pseries_msi_ops_prepare(struct irq_domain *domain, struct device *dev, int nvec, msi_alloc_info_t *arg) pseries_msi_ops_prepare() argument [all...] |
/kernel/linux/linux-5.10/drivers/fpga/ |
H A D | dfl-pci.c | 44 int ret, nvec = pci_msix_vec_count(pcidev); in cci_pci_alloc_irq() local 46 if (nvec <= 0) { in cci_pci_alloc_irq() 51 ret = pci_alloc_irq_vectors(pcidev, nvec, nvec, PCI_IRQ_MSIX); in cci_pci_alloc_irq() 55 return nvec; in cci_pci_alloc_irq() 111 static int *cci_pci_create_irq_table(struct pci_dev *pcidev, unsigned int nvec) in cci_pci_create_irq_table() argument 116 table = kcalloc(nvec, sizeof(int), GFP_KERNEL); in cci_pci_create_irq_table() 120 for (i = 0; i < nvec; i++) in cci_pci_create_irq_table() 130 int port_num, bar, i, nvec, ret = 0; in cci_enumerate_feature_devs() local 145 nvec in cci_enumerate_feature_devs() [all...] |
/kernel/linux/linux-6.6/drivers/fpga/ |
H A D | dfl-pci.c | 52 int ret, nvec = pci_msix_vec_count(pcidev); in cci_pci_alloc_irq() local 54 if (nvec <= 0) { in cci_pci_alloc_irq() 59 ret = pci_alloc_irq_vectors(pcidev, nvec, nvec, PCI_IRQ_MSIX); in cci_pci_alloc_irq() 63 return nvec; in cci_pci_alloc_irq() 142 static int *cci_pci_create_irq_table(struct pci_dev *pcidev, unsigned int nvec) in cci_pci_create_irq_table() argument 147 table = kcalloc(nvec, sizeof(int), GFP_KERNEL); in cci_pci_create_irq_table() 151 for (i = 0; i < nvec; i++) in cci_pci_create_irq_table() 307 int nvec, ret = 0; in cci_enumerate_feature_devs() local 316 nvec in cci_enumerate_feature_devs() [all...] |
/kernel/linux/linux-5.10/arch/powerpc/platforms/pseries/ |
H A D | msi.c | 128 static int check_req(struct pci_dev *pdev, int nvec, char *prop_name) in check_req() argument 143 if (req_msi < nvec) { in check_req() 144 pr_debug("rtas_msi: %s requests < %d MSIs\n", prop_name, nvec); in check_req() 155 static int check_req_msi(struct pci_dev *pdev, int nvec) in check_req_msi() argument 157 return check_req(pdev, nvec, "ibm,req#msi"); in check_req_msi() 160 static int check_req_msix(struct pci_dev *pdev, int nvec) in check_req_msix() argument 162 return check_req(pdev, nvec, "ibm,req#msi-x"); in check_req_msix() 377 int nvec = nvec_in; in rtas_setup_msi_irqs() local 381 rc = check_req_msix(pdev, nvec); in rtas_setup_msi_irqs() 383 rc = check_req_msi(pdev, nvec); in rtas_setup_msi_irqs() [all...] |
/kernel/linux/linux-5.10/drivers/pci/ |
H A D | msi.c | 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() 580 msi_setup_entry(struct pci_dev *dev, int nvec, struct irq_affinity *affd) in msi_setup_entry() argument 587 masks = irq_create_affinity_masks(nvec, affd); in msi_setup_entry() 590 entry = alloc_msi_entry(&dev->dev, nvec, masks); in msi_setup_entry() 606 entry->msi_attrib.multiple = ilog2(__roundup_pow_of_two(nvec)); in msi_setup_entry() 648 msi_capability_init(struct pci_dev *dev, int nvec, struct irq_affinity *affd) msi_capability_init() argument 719 msix_setup_entries(struct pci_dev *dev, void __iomem *base, struct msix_entry *entries, int nvec, struct irq_affinity *affd) msix_setup_entries() argument 807 msix_capability_init(struct pci_dev *dev, struct msix_entry *entries, int nvec, struct irq_affinity *affd) msix_capability_init() argument 903 pci_msi_supported(struct pci_dev *dev, int nvec) pci_msi_supported() argument 1015 __pci_enable_msix(struct pci_dev *dev, struct msix_entry *entries, int nvec, struct irq_affinity *affd, int flags) __pci_enable_msix() argument 1102 int nvec; __pci_enable_msi_range() local 1164 int rc, nvec = maxvec; __pci_enable_msix_range() local [all...] |
/kernel/linux/linux-5.10/arch/x86/pci/ |
H A D | xen.c | 161 int (*setup_msi_irqs)(struct pci_dev *dev, int nvec, int type); 167 static int xen_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in xen_setup_msi_irqs() argument 173 if (type == PCI_CAP_ID_MSI && nvec > 1) in xen_setup_msi_irqs() 176 v = kcalloc(max(1, nvec), sizeof(int), GFP_KERNEL); in xen_setup_msi_irqs() 181 ret = xen_pci_frontend_enable_msix(dev, v, nvec); in xen_setup_msi_irqs() 189 (type == PCI_CAP_ID_MSI) ? nvec : 1, in xen_setup_msi_irqs() 232 static int xen_hvm_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in xen_hvm_setup_msi_irqs() argument 238 if (type == PCI_CAP_ID_MSI && nvec > 1) in xen_hvm_setup_msi_irqs() 251 (type == PCI_CAP_ID_MSI) ? nvec : 1, in xen_hvm_setup_msi_irqs() 271 static int xen_initdom_setup_msi_irqs(struct pci_dev *dev, int nvec, in argument 412 xen_msi_domain_alloc_irqs(struct irq_domain *domain, struct device *dev, int nvec) xen_msi_domain_alloc_irqs() argument [all...] |
/kernel/linux/linux-6.6/arch/x86/pci/ |
H A D | xen.c | 161 int (*setup_msi_irqs)(struct pci_dev *dev, int nvec, int type); 167 static int xen_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in xen_setup_msi_irqs() argument 173 if (type == PCI_CAP_ID_MSI && nvec > 1) in xen_setup_msi_irqs() 176 v = kcalloc(max(1, nvec), sizeof(int), GFP_KERNEL); in xen_setup_msi_irqs() 181 ret = xen_pci_frontend_enable_msix(dev, v, nvec); in xen_setup_msi_irqs() 189 (type == PCI_CAP_ID_MSI) ? nvec : 1, in xen_setup_msi_irqs() 229 static int xen_hvm_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) in xen_hvm_setup_msi_irqs() argument 235 if (type == PCI_CAP_ID_MSI && nvec > 1) in xen_hvm_setup_msi_irqs() 248 (type == PCI_CAP_ID_MSI) ? nvec : 1, in xen_hvm_setup_msi_irqs() 268 static int xen_initdom_setup_msi_irqs(struct pci_dev *dev, int nvec, in argument 411 xen_msi_domain_alloc_irqs(struct irq_domain *domain, struct device *dev, int nvec) xen_msi_domain_alloc_irqs() argument [all...] |
/kernel/linux/linux-6.6/drivers/base/ |
H A D | platform-msi.c | 143 static int platform_msi_alloc_priv_data(struct device *dev, unsigned int nvec, in platform_msi_alloc_priv_data() argument 155 if (!dev->msi.domain || !write_msi_msg || !nvec || nvec > MAX_DEV_MSIS) in platform_msi_alloc_priv_data() 201 * @nvec: The number of interrupts to allocate 207 int platform_msi_domain_alloc_irqs(struct device *dev, unsigned int nvec, in platform_msi_domain_alloc_irqs() argument 212 err = platform_msi_alloc_priv_data(dev, nvec, write_msi_msg); in platform_msi_domain_alloc_irqs() 216 err = msi_domain_alloc_irqs_range(dev, MSI_DEFAULT_DOMAIN, 0, nvec - 1); in platform_msi_domain_alloc_irqs() 256 * @nvec: The number of MSIs that need to be allocated 262 * Return: An irqdomain for @nvec interrupts on success, NULL in case of error. 270 unsigned int nvec, in __platform_msi_create_device_domain() 269 __platform_msi_create_device_domain(struct device *dev, unsigned int nvec, bool is_tree, irq_write_msi_msg_t write_msi_msg, const struct irq_domain_ops *ops, void *host_data) __platform_msi_create_device_domain() argument [all...] |
/kernel/linux/linux-5.10/kernel/irq/ |
H A D | msi.c | 23 * @nvec: The number of vectors used in this entry 24 * @affinity: Optional pointer to an affinity mask array size of @nvec 26 * If @affinity is not NULL then an affinity array[@nvec] is allocated 29 struct msi_desc *alloc_msi_entry(struct device *dev, int nvec, in alloc_msi_entry() argument 40 desc->nvec_used = nvec; in alloc_msi_entry() 43 nvec * sizeof(*desc->affinity), GFP_KERNEL); in alloc_msi_entry() 197 int nvec, msi_alloc_info_t *arg) in msi_domain_ops_prepare() 307 * > 0: The modified nvec; 311 int nvec, msi_alloc_info_t *arg) in msi_domain_prepare_irqs() 319 ret = ops->msi_prepare(domain, dev, nvec, ar in msi_domain_prepare_irqs() 196 msi_domain_ops_prepare(struct irq_domain *domain, struct device *dev, int nvec, msi_alloc_info_t *arg) msi_domain_ops_prepare() argument 310 msi_domain_prepare_irqs(struct irq_domain *domain, struct device *dev, int nvec, msi_alloc_info_t *arg) msi_domain_prepare_irqs() argument 324 msi_domain_populate_irqs(struct irq_domain *domain, struct device *dev, int virq, int nvec, msi_alloc_info_t *arg) msi_domain_populate_irqs() argument 404 __msi_domain_alloc_irqs(struct irq_domain *domain, struct device *dev, int nvec) __msi_domain_alloc_irqs() argument 507 msi_domain_alloc_irqs(struct irq_domain *domain, struct device *dev, int nvec) msi_domain_alloc_irqs() argument [all...] |
/kernel/linux/linux-5.10/drivers/pci/pcie/ |
H A D | portdrv_core.c | 48 u32 nvec = 0, pos; in pcie_message_numbers() local 62 nvec = *pme + 1; in pcie_message_numbers() 74 nvec = max(nvec, *aer + 1); in pcie_message_numbers() 85 nvec = max(nvec, *dpc + 1); in pcie_message_numbers() 89 return nvec; in pcie_message_numbers() 103 int nr_entries, nvec, pcie_irq; in pcie_port_enable_irq_vec() local 113 nvec = pcie_message_numbers(dev, mask, &pme, &aer, &dpc); in pcie_port_enable_irq_vec() 114 if (nvec > nr_entrie in pcie_port_enable_irq_vec() [all...] |
/kernel/linux/linux-6.6/include/linux/ |
H A D | msi.h | 384 int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type); 459 struct device *dev, int nvec, 466 struct device *dev, int nvec); 630 int platform_msi_domain_alloc_irqs(struct device *dev, unsigned int nvec, 636 int nvec, msi_alloc_info_t *args); 638 int virq, int nvec, msi_alloc_info_t *args); 639 void msi_domain_depopulate_descs(struct device *dev, int virq, int nvec); 643 unsigned int nvec, 649 #define platform_msi_create_device_domain(dev, nvec, write, ops, data) \ 650 __platform_msi_create_device_domain(dev, nvec, fals [all...] |