Home
last modified time | relevance | path

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

/kernel/irq/
Dirqdomain.c550 static int irq_domain_associate_locked(struct irq_domain *domain, unsigned int virq, in irq_domain_associate_locked() argument
553 struct irq_data *irq_data = irq_get_irq_data(virq); in irq_domain_associate_locked()
559 if (WARN(!irq_data, "error: virq%i is not allocated", virq)) in irq_domain_associate_locked()
561 if (WARN(irq_data->domain, "error: virq%i is already associated", virq)) in irq_domain_associate_locked()
567 ret = domain->ops->map(domain, virq, hwirq); in irq_domain_associate_locked()
576 domain->name, hwirq, virq, ret); in irq_domain_associate_locked()
591 irq_clear_status_flags(virq, IRQ_NOREQUEST); in irq_domain_associate_locked()
596 int irq_domain_associate(struct irq_domain *domain, unsigned int virq, in irq_domain_associate() argument
602 ret = irq_domain_associate_locked(domain, virq, hwirq); in irq_domain_associate()
638 unsigned int virq; in irq_create_direct_mapping() local
[all …]
Dmsi.c138 static int msi_domain_alloc(struct irq_domain *domain, unsigned int virq, in msi_domain_alloc() argument
150 ret = irq_domain_alloc_irqs_parent(domain, virq, nr_irqs, arg); in msi_domain_alloc()
156 ret = ops->msi_init(domain, info, virq + i, hwirq + i, arg); in msi_domain_alloc()
160 ops->msi_free(domain, info, virq + i); in msi_domain_alloc()
162 irq_domain_free_irqs_top(domain, virq, nr_irqs); in msi_domain_alloc()
170 static void msi_domain_free(struct irq_domain *domain, unsigned int virq, in msi_domain_free() argument
178 info->ops->msi_free(domain, info, virq + i); in msi_domain_free()
180 irq_domain_free_irqs_top(domain, virq, nr_irqs); in msi_domain_free()
211 unsigned int virq, irq_hw_number_t hwirq, in msi_domain_ops_init() argument
214 irq_domain_set_hwirq_and_chip(domain, virq, hwirq, info->chip, in msi_domain_ops_init()
[all …]
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()
307 int ipi_send_single(unsigned int virq, unsigned int cpu) in ipi_send_single() argument
[all …]
Dgeneric-chip.c378 int irq_map_generic_chip(struct irq_domain *d, unsigned int virq, in irq_map_generic_chip() argument
381 struct irq_data *data = irq_domain_get_irq_data(d, virq); in irq_map_generic_chip()
415 irq_set_lockdep_class(virq, &irq_nested_lock_class, in irq_map_generic_chip()
423 irq_domain_set_info(d, virq, hw_irq, chip, gc, ct->handler, NULL, NULL); in irq_map_generic_chip()
424 irq_modify_status(virq, dgc->irq_flags_to_clear, dgc->irq_flags_to_set); in irq_map_generic_chip()
428 static void irq_unmap_generic_chip(struct irq_domain *d, unsigned int virq) in irq_unmap_generic_chip() argument
430 struct irq_data *data = irq_domain_get_irq_data(d, virq); in irq_unmap_generic_chip()
443 irq_domain_set_info(d, virq, hw_irq, &no_irq_chip, NULL, NULL, NULL, in irq_unmap_generic_chip()
541 unsigned int i, virq; in irq_remove_generic_chip() local
557 virq = irq_find_mapping(gc->domain, gc->irq_base + i); in irq_remove_generic_chip()
[all …]
Dirq_sim.c122 unsigned int virq, irq_hw_number_t hw) in irq_sim_domain_map() argument
131 irq_set_chip(virq, &irq_sim_irqchip); in irq_sim_domain_map()
132 irq_set_chip_data(virq, irq_ctx); in irq_sim_domain_map()
133 irq_set_handler(virq, handle_simple_irq); in irq_sim_domain_map()
134 irq_modify_status(virq, IRQ_NOREQUEST | IRQ_NOAUTOEN, IRQ_NOPROBE); in irq_sim_domain_map()
140 static void irq_sim_domain_unmap(struct irq_domain *domain, unsigned int virq) in irq_sim_domain_unmap() argument
145 irqd = irq_domain_get_irq_data(domain, virq); in irq_sim_domain_unmap()
148 irq_set_handler(virq, NULL); in irq_sim_domain_unmap()