Home
last modified time | relevance | path

Searched refs:virq (Results 1 – 25 of 249) sorted by relevance

12345678910

/linux/arch/powerpc/platforms/ps3/
H A Dinterrupt.c170 unsigned int *virq) in ps3_virq_setup() argument
182 *virq = irq_create_mapping(NULL, outlet); in ps3_virq_setup()
184 if (!*virq) { in ps3_virq_setup()
192 outlet, cpu, *virq); in ps3_virq_setup()
194 result = irq_set_chip_data(*virq, pd); in ps3_virq_setup()
202 ps3_chip_mask(irq_get_irq_data(*virq)); in ps3_virq_setup()
207 irq_dispose_mapping(*virq); in ps3_virq_setup()
219 static int ps3_virq_destroy(unsigned int virq) in ps3_virq_destroy() argument
221 const struct ps3_private *pd = irq_get_chip_data(virq); in ps3_virq_destroy()
224 __LINE__, pd->ppe_id, pd->thread_id, virq); in ps3_virq_destroy()
[all …]
/linux/kernel/irq/
H A Dirq_test.c47 int virq; in irq_test_setup_fake_irq() local
49 virq = irq_domain_alloc_descs(-1, 1, 0, NUMA_NO_NODE, affd); in irq_test_setup_fake_irq()
50 KUNIT_ASSERT_GE(test, virq, 0); in irq_test_setup_fake_irq()
52 irq_set_chip_and_handler(virq, &fake_irq_chip, handle_simple_irq); in irq_test_setup_fake_irq()
54 desc = irq_to_desc(virq); in irq_test_setup_fake_irq()
60 return virq; in irq_test_setup_fake_irq()
66 int virq, ret; in irq_disable_depth_test() local
68 virq = irq_test_setup_fake_irq(test, NULL); in irq_disable_depth_test()
70 desc = irq_to_desc(virq); in irq_disable_depth_test()
73 ret = request_irq(virq, noop_handler, 0, "test_irq", NULL); in irq_disable_depth_test()
[all …]
H A Dipi.c28 int virq, i; in irq_reserve_ipi() local
78 virq = irq_domain_alloc_descs(-1, nr_irqs, 0, NUMA_NO_NODE, NULL); in irq_reserve_ipi()
79 if (virq <= 0) { in irq_reserve_ipi()
84 virq = __irq_domain_alloc_irqs(domain, virq, nr_irqs, NUMA_NO_NODE, in irq_reserve_ipi()
87 if (virq <= 0) { in irq_reserve_ipi()
93 data = irq_get_irq_data(virq + i); in irq_reserve_ipi()
96 irq_set_status_flags(virq + i, IRQ_NO_BALANCING); in irq_reserve_ipi()
98 return virq; in irq_reserve_ipi()
101 irq_free_descs(virq, nr_irqs); in irq_reserve_ipi()
313 int ipi_send_single(unsigned int virq, unsigned int cpu) in ipi_send_single() argument
[all …]
H A Dgeneric-chip.c443 int irq_map_generic_chip(struct irq_domain *d, unsigned int virq, in irq_map_generic_chip() argument
446 struct irq_data *data = irq_domain_get_irq_data(d, virq); in irq_map_generic_chip()
478 irq_set_lockdep_class(virq, &irq_nested_lock_class, in irq_map_generic_chip()
486 irq_domain_set_info(d, virq, hw_irq, chip, gc, ct->handler, NULL, NULL); in irq_map_generic_chip()
487 irq_modify_status(virq, dgc->irq_flags_to_clear, dgc->irq_flags_to_set); in irq_map_generic_chip()
491 void irq_unmap_generic_chip(struct irq_domain *d, unsigned int virq) in irq_unmap_generic_chip() argument
493 struct irq_data *data = irq_domain_get_irq_data(d, virq); in irq_unmap_generic_chip()
506 irq_domain_set_info(d, virq, hw_irq, &no_irq_chip, NULL, NULL, NULL, in irq_unmap_generic_chip()
603 unsigned int i, virq; in irq_remove_generic_chip() local
618 virq = irq_find_mapping(gc->domain, gc->irq_base + i); in irq_remove_generic_chip()
[all …]
/linux/drivers/misc/ocxl/
H A Dafu_irq.c13 unsigned int virq; member
58 static irqreturn_t afu_irq_handler(int virq, void *data) in afu_irq_handler() argument
62 trace_ocxl_afu_irq_receive(virq); in afu_irq_handler()
74 irq->virq = irq_create_mapping(NULL, irq->hw_irq); in setup_afu_irq()
75 if (!irq->virq) { in setup_afu_irq()
79 pr_debug("hw_irq %d mapped to virq %u\n", irq->hw_irq, irq->virq); in setup_afu_irq()
81 irq->name = kasprintf(GFP_KERNEL, "ocxl-afu-%u", irq->virq); in setup_afu_irq()
83 irq_dispose_mapping(irq->virq); in setup_afu_irq()
87 rc = request_irq(irq->virq, afu_irq_handler, 0, irq->name, irq); in setup_afu_irq()
91 irq_dispose_mapping(irq->virq); in setup_afu_irq()
[all …]
H A Dtrace.h174 TP_PROTO(int pasid, int irq_id, unsigned int virq, int hw_irq),
175 TP_ARGS(pasid, irq_id, virq, hw_irq),
180 __field(unsigned int, virq)
187 __entry->virq = virq;
194 __entry->virq,
220 TP_PROTO(int virq),
221 TP_ARGS(virq),
224 __field(int, virq)
228 __entry->virq = virq;
232 __entry->virq
/linux/arch/powerpc/platforms/pseries/
H A Devent_sources.c15 int i, virq, rc; in request_event_sources_irqs() local
18 virq = of_irq_get(np, i); in request_event_sources_irqs()
19 if (virq < 0) in request_event_sources_irqs()
21 if (WARN(!virq, "event-sources: Unable to allocate " in request_event_sources_irqs()
25 rc = request_irq(virq, handler, 0, name, NULL); in request_event_sources_irqs()
27 virq, np)) in request_event_sources_irqs()
/linux/arch/powerpc/sysdev/xics/
H A Dxics-common.c183 unsigned int irq, virq; in xics_migrate_irqs_away() local
198 for_each_irq_desc(virq, desc) { in xics_migrate_irqs_away()
205 if (virq < NR_IRQS_LEGACY) in xics_migrate_irqs_away()
211 irqd = irq_domain_get_irq_data(xics_host, virq); in xics_migrate_irqs_away()
228 __func__, virq, irq); in xics_migrate_irqs_away()
242 virq, cpu); in xics_migrate_irqs_away()
246 irq_set_affinity(virq, cpu_all_mask); in xics_migrate_irqs_away()
278 int xics_get_irq_server(unsigned int virq, const struct cpumask *cpumask, in xics_get_irq_server() argument
326 static int xics_host_map(struct irq_domain *domain, unsigned int virq, in xics_host_map() argument
329 pr_devel("xics: map virq %d, hwirq 0x%lx\n", virq, hwirq); in xics_host_map()
[all …]
/linux/arch/powerpc/platforms/pasemi/
H A Dmsi.c76 unsigned int virq; in pasemi_msi_setup_msi_irqs() local
102 virq = irq_create_mapping(msi_mpic->irqhost, hwirq); in pasemi_msi_setup_msi_irqs()
103 if (!virq) { in pasemi_msi_setup_msi_irqs()
115 mpic_set_vector(virq, 0); in pasemi_msi_setup_msi_irqs()
117 irq_set_msi_desc(virq, entry); in pasemi_msi_setup_msi_irqs()
118 irq_set_chip(virq, &mpic_pasemi_msi_chip); in pasemi_msi_setup_msi_irqs()
119 irq_set_irq_type(virq, IRQ_TYPE_EDGE_RISING); in pasemi_msi_setup_msi_irqs()
122 "addr 0x%x\n", virq, hwirq, msg.address_lo); in pasemi_msi_setup_msi_irqs()
128 pci_write_msi_msg(virq, &msg); in pasemi_msi_setup_msi_irqs()
/linux/drivers/iommu/
H A Dhyperv-iommu.c66 unsigned int virq, unsigned int nr_irqs, in hyperv_irq_remapping_alloc() argument
76 ret = irq_domain_alloc_irqs_parent(domain, virq, nr_irqs, arg); in hyperv_irq_remapping_alloc()
80 irq_data = irq_domain_get_irq_data(domain, virq); in hyperv_irq_remapping_alloc()
82 irq_domain_free_irqs_common(domain, virq, nr_irqs); in hyperv_irq_remapping_alloc()
98 unsigned int virq, unsigned int nr_irqs) in hyperv_irq_remapping_free() argument
100 irq_domain_free_irqs_common(domain, virq, nr_irqs); in hyperv_irq_remapping_free()
264 unsigned int virq, unsigned int nr_irqs, in hyperv_root_irq_remapping_alloc() argument
275 ret = irq_domain_alloc_irqs_parent(domain, virq, nr_irqs, arg); in hyperv_root_irq_remapping_alloc()
281 irq_domain_free_irqs_common(domain, virq, nr_irqs); in hyperv_root_irq_remapping_alloc()
285 irq_data = irq_domain_get_irq_data(domain, virq); in hyperv_root_irq_remapping_alloc()
[all …]
/linux/drivers/irqchip/
H A Dirq-armada-370-xp.c269 static int mpic_msi_alloc(struct irq_domain *domain, unsigned int virq, unsigned int nr_irqs, in mpic_msi_alloc() argument
284 irq_domain_set_info(domain, virq + i, hwirq + i, in mpic_msi_alloc()
293 static void mpic_msi_free(struct irq_domain *domain, unsigned int virq, unsigned int nr_irqs) in mpic_msi_free() argument
295 struct irq_data *d = irq_domain_get_irq_data(domain, virq); in mpic_msi_free()
456 static int mpic_ipi_alloc(struct irq_domain *d, unsigned int virq, in mpic_ipi_alloc() argument
460 irq_set_percpu_devid(virq + i); in mpic_ipi_alloc()
461 irq_domain_set_info(d, virq + i, i, &mpic_ipi_irqchip, d->host_data, in mpic_ipi_alloc()
468 static void mpic_ipi_free(struct irq_domain *d, unsigned int virq, in mpic_ipi_free() argument
482 unsigned int virq = irq_find_mapping(mpic->ipi_domain, i); in mpic_ipi_resume() local
485 if (!virq || !irq_percpu_is_enabled(virq)) in mpic_ipi_resume()
[all …]
H A Dirq-alpine-msi.c81 static int alpine_msix_gic_domain_alloc(struct irq_domain *domain, unsigned int virq, int sgi) in alpine_msix_gic_domain_alloc() argument
96 ret = irq_domain_alloc_irqs_parent(domain, virq, 1, &fwspec); in alpine_msix_gic_domain_alloc()
100 d = irq_domain_get_irq_data(domain->parent, virq); in alpine_msix_gic_domain_alloc()
105 static int alpine_msix_middle_domain_alloc(struct irq_domain *domain, unsigned int virq, in alpine_msix_middle_domain_alloc() argument
116 err = alpine_msix_gic_domain_alloc(domain, virq + i, sgi + i); in alpine_msix_middle_domain_alloc()
120 irq_domain_set_hwirq_and_chip(domain, virq + i, sgi + i, in alpine_msix_middle_domain_alloc()
126 irq_domain_free_irqs_parent(domain, virq, i); in alpine_msix_middle_domain_alloc()
131 static void alpine_msix_middle_domain_free(struct irq_domain *domain, unsigned int virq, in alpine_msix_middle_domain_free() argument
134 struct irq_data *d = irq_domain_get_irq_data(domain, virq); in alpine_msix_middle_domain_free()
137 irq_domain_free_irqs_parent(domain, virq, nr_irqs); in alpine_msix_middle_domain_free()
H A Dirq-mips-gic.c587 static int gic_shared_irq_domain_map(struct irq_domain *d, unsigned int virq, in gic_shared_irq_domain_map() argument
594 data = irq_get_irq_data(virq); in gic_shared_irq_domain_map()
634 static int gic_irq_domain_map(struct irq_domain *d, unsigned int virq, in gic_irq_domain_map() argument
649 err = irq_domain_set_hwirq_and_chip(d, virq, hwirq, in gic_irq_domain_map()
655 irqd_set_single_target(irq_desc_get_irq_data(irq_to_desc(virq))); in gic_irq_domain_map()
656 return gic_shared_irq_domain_map(d, virq, hwirq, 0); in gic_irq_domain_map()
677 err = irq_domain_set_hwirq_and_chip(d, virq, hwirq, in gic_irq_domain_map()
683 irq_set_handler(virq, handle_percpu_irq); in gic_irq_domain_map()
687 err = irq_domain_set_hwirq_and_chip(d, virq, hwirq, in gic_irq_domain_map()
693 irq_set_handler(virq, handle_percpu_devid_irq); in gic_irq_domain_map()
[all …]
H A Dirq-gic-v3-mbi.c44 unsigned int virq, in mbi_irq_gic_domain_alloc() argument
69 err = irq_domain_alloc_irqs_parent(domain, virq, 1, &fwspec); in mbi_irq_gic_domain_alloc()
73 d = irq_domain_get_irq_data(domain->parent, virq); in mbi_irq_gic_domain_alloc()
86 static int mbi_irq_domain_alloc(struct irq_domain *domain, unsigned int virq, in mbi_irq_domain_alloc() argument
116 err = mbi_irq_gic_domain_alloc(domain, virq + i, hwirq + i); in mbi_irq_domain_alloc()
120 irq_domain_set_hwirq_and_chip(domain, virq + i, hwirq + i, in mbi_irq_domain_alloc()
127 irq_domain_free_irqs_parent(domain, virq, nr_irqs); in mbi_irq_domain_alloc()
133 unsigned int virq, unsigned int nr_irqs) in mbi_irq_domain_free() argument
135 struct irq_data *d = irq_domain_get_irq_data(domain, virq); in mbi_irq_domain_free()
139 irq_domain_free_irqs_parent(domain, virq, nr_irqs); in mbi_irq_domain_free()
H A Dirq-riscv-imsic-platform.c225 static int imsic_irq_domain_alloc(struct irq_domain *domain, unsigned int virq, in imsic_irq_domain_alloc() argument
234 vec = imsic_vector_alloc(virq, cpu_online_mask); in imsic_irq_domain_alloc()
238 irq_domain_set_info(domain, virq, virq, &imsic_irq_base_chip, vec, in imsic_irq_domain_alloc()
240 irq_set_noprobe(virq); in imsic_irq_domain_alloc()
241 irq_set_affinity(virq, cpu_online_mask); in imsic_irq_domain_alloc()
242 irq_data_update_effective_affinity(irq_get_irq_data(virq), cpumask_of(vec->cpu)); in imsic_irq_domain_alloc()
247 static void imsic_irq_domain_free(struct irq_domain *domain, unsigned int virq, in imsic_irq_domain_free() argument
250 struct irq_data *d = irq_domain_get_irq_data(domain, virq); in imsic_irq_domain_free()
253 irq_domain_free_irqs_parent(domain, virq, nr_irqs); in imsic_irq_domain_free()
/linux/arch/x86/platform/uv/
H A Duv_irq.c75 static int uv_domain_alloc(struct irq_domain *domain, unsigned int virq, in uv_domain_alloc() argument
80 struct irq_data *irq_data = irq_domain_get_irq_data(domain, virq); in uv_domain_alloc()
91 ret = irq_domain_alloc_irqs_parent(domain, virq, nr_irqs, arg); in uv_domain_alloc()
94 irq_set_status_flags(virq, IRQ_NO_BALANCING); in uv_domain_alloc()
98 irq_domain_set_info(domain, virq, virq, &uv_irq_chip, chip_data, in uv_domain_alloc()
107 static void uv_domain_free(struct irq_domain *domain, unsigned int virq, in uv_domain_free() argument
110 struct irq_data *irq_data = irq_domain_get_irq_data(domain, virq); in uv_domain_free()
114 irq_clear_status_flags(virq, IRQ_NO_BALANCING); in uv_domain_free()
115 irq_domain_free_irqs_top(domain, virq, nr_irqs); in uv_domain_free()
/linux/arch/powerpc/sysdev/
H A Dmpic_u3msi.c118 unsigned int virq; in u3msi_setup_msi_irqs() local
148 virq = irq_create_mapping(msi_mpic->irqhost, hwirq); in u3msi_setup_msi_irqs()
149 if (!virq) { in u3msi_setup_msi_irqs()
155 irq_set_msi_desc(virq, entry); in u3msi_setup_msi_irqs()
156 irq_set_chip(virq, &mpic_u3msi_chip); in u3msi_setup_msi_irqs()
157 irq_set_irq_type(virq, IRQ_TYPE_EDGE_RISING); in u3msi_setup_msi_irqs()
160 virq, hwirq, (unsigned long)addr); in u3msi_setup_msi_irqs()
163 virq, hwirq, (unsigned long)addr); in u3msi_setup_msi_irqs()
165 pci_write_msi_msg(virq, &msg); in u3msi_setup_msi_irqs()
H A Dfsl_msi.c53 int virq; member
76 cascade_virq = msi_data->cascade_array[srs]->virq; in fsl_msi_print_chip()
89 static int fsl_msi_host_map(struct irq_domain *h, unsigned int virq, in fsl_msi_host_map() argument
95 irq_set_status_flags(virq, IRQ_TYPE_EDGE_FALLING); in fsl_msi_host_map()
97 irq_set_chip_data(virq, msi_data); in fsl_msi_host_map()
98 irq_set_chip_and_handler(virq, chip, handle_edge_irq); in fsl_msi_host_map()
185 unsigned int virq; in fsl_setup_msi_irqs() local
249 virq = irq_create_mapping(msi_data->irqhost, hwirq); in fsl_setup_msi_irqs()
251 if (!virq) { in fsl_setup_msi_irqs()
258 irq_set_msi_desc(virq, entry); in fsl_setup_msi_irqs()
[all …]
H A Dfsl_mpic_err.c80 int mpic_map_error_int(struct mpic *mpic, unsigned int virq, irq_hw_number_t hw) in mpic_map_error_int() argument
88 irq_set_chip_data(virq, mpic); in mpic_map_error_int()
89 irq_set_chip_and_handler(virq, &mpic->hc_err, in mpic_map_error_int()
126 unsigned int virq; in mpic_err_int_init() local
129 virq = irq_create_mapping(mpic->irqhost, irqnum); in mpic_err_int_init()
130 if (!virq) { in mpic_err_int_init()
138 ret = request_irq(virq, fsl_error_int_handler, IRQF_NO_THREAD, in mpic_err_int_init()
/linux/arch/powerpc/platforms/powernv/
H A Dvas.c33 rc = request_threaded_irq(vinst->virq, vas_fault_handler, in vas_irq_fault_window_setup()
38 vinst->vas_id, vinst->virq, rc); in vas_irq_fault_window_setup()
44 free_irq(vinst->virq, vinst); in vas_irq_fault_window_setup()
117 vinst->virq = irq_create_mapping(NULL, hwirq); in init_vas_instance()
118 if (!vinst->virq) { in init_vas_instance()
124 xd = irq_get_chip_data(vinst->virq); in init_vas_instance()
127 vinst->vas_id, vinst->virq); in init_vas_instance()
134 vinst->paste_win_id_shift, vinst->virq, in init_vas_instance()
151 if (vinst->virq) { in init_vas_instance()
159 vinst->virq = 0; in init_vas_instance()
/linux/include/linux/
H A Dirqdomain.h104 int (*map)(struct irq_domain *d, unsigned int virq, irq_hw_number_t hw);
105 void (*unmap)(struct irq_domain *d, unsigned int virq);
111 int (*alloc)(struct irq_domain *d, unsigned int virq,
113 void (*free)(struct irq_domain *d, unsigned int virq,
352 int irq_domain_alloc_descs(int virq, unsigned int nr_irqs, irq_hw_number_t hwirq, int node,
462 void irq_dispose_mapping(unsigned int virq);
544 struct irq_data *irq_domain_get_irq_data(struct irq_domain *domain, unsigned int virq);
545 void irq_domain_set_info(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq,
589 void irq_domain_free_irqs(unsigned int virq, unsigned int nr_irqs);
608 int irq_domain_set_hwirq_and_chip(struct irq_domain *domain, unsigned int virq,
[all …]
/linux/arch/powerpc/include/asm/
H A Dps3.h181 unsigned int *virq);
182 int ps3_irq_plug_destroy(unsigned int virq);
183 int ps3_event_receive_port_setup(enum ps3_cpu_binding cpu, unsigned int *virq);
184 int ps3_event_receive_port_destroy(unsigned int virq);
185 int ps3_send_event_locally(unsigned int virq);
188 unsigned int *virq);
189 int ps3_io_irq_destroy(unsigned int virq);
191 unsigned int *virq);
192 int ps3_vuart_irq_destroy(unsigned int virq);
194 unsigned int class, unsigned int *virq);
[all …]
H A Dparport.h23 int virq; in parport_pc_find_nonpci_ports() local
31 virq = irq_of_parse_and_map(np, 0); in parport_pc_find_nonpci_ports()
32 if (!virq) in parport_pc_find_nonpci_ports()
35 if (parport_pc_probe_port(io1, io2, virq, autodma, NULL, 0) in parport_pc_find_nonpci_ports()
/linux/drivers/soundwire/
H A Dirq.c12 static int sdw_irq_map(struct irq_domain *h, unsigned int virq, in sdw_irq_map() argument
17 irq_set_chip_data(virq, bus); in sdw_irq_map()
18 irq_set_chip(virq, &bus->irq_chip); in sdw_irq_map()
19 irq_set_nested_thread(virq, 1); in sdw_irq_map()
20 irq_set_noprobe(virq); in sdw_irq_map()
/linux/arch/sh/boards/mach-x3proto/
H A Dgpio.c50 int virq; in x3proto_gpio_to_irq() local
53 virq = irq_create_mapping(x3proto_irq_domain, gpio); in x3proto_gpio_to_irq()
55 virq = -ENXIO; in x3proto_gpio_to_irq()
57 return virq; in x3proto_gpio_to_irq()
85 static int x3proto_gpio_irq_map(struct irq_domain *domain, unsigned int virq, in x3proto_gpio_irq_map() argument
88 irq_set_chip_and_handler_name(virq, &dummy_irq_chip, handle_simple_irq, in x3proto_gpio_irq_map()

12345678910