/kernel/irq/ |
D | irqdomain.c | 28 static int irq_domain_alloc_irqs_locked(struct irq_domain *domain, int irq_base, 31 static void irq_domain_check_hierarchy(struct irq_domain *domain); 137 struct irq_domain *domain; in __irq_domain_create() local 146 domain = kzalloc_node(struct_size(domain, revmap, size), in __irq_domain_create() 148 if (!domain) in __irq_domain_create() 157 domain->fwnode = fwnode; in __irq_domain_create() 158 domain->name = kstrdup(fwid->name, GFP_KERNEL); in __irq_domain_create() 159 if (!domain->name) { in __irq_domain_create() 160 kfree(domain); in __irq_domain_create() 163 domain->flags |= IRQ_DOMAIN_NAME_ALLOCATED; in __irq_domain_create() [all …]
|
D | msi.c | 469 static void msi_check_level(struct irq_domain *domain, struct msi_msg *msg) in msi_check_level() argument 471 struct msi_domain_info *info = domain->host_data; in msi_check_level() 503 msi_check_level(irq_data->domain, msg); in msi_domain_set_affinity() 510 static int msi_domain_activate(struct irq_domain *domain, in msi_domain_activate() argument 516 msi_check_level(irq_data->domain, msg); in msi_domain_activate() 521 static void msi_domain_deactivate(struct irq_domain *domain, in msi_domain_deactivate() argument 530 static int msi_domain_alloc(struct irq_domain *domain, unsigned int virq, in msi_domain_alloc() argument 533 struct msi_domain_info *info = domain->host_data; in msi_domain_alloc() 538 if (irq_find_mapping(domain, hwirq) > 0) in msi_domain_alloc() 541 if (domain->parent) { in msi_domain_alloc() [all …]
|
D | irq_sim.c | 18 struct irq_domain *domain; member 112 irqnum = irq_find_mapping(work_ctx->domain, offset); in irq_sim_handle_irq() 117 static int irq_sim_domain_map(struct irq_domain *domain, in irq_sim_domain_map() argument 120 struct irq_sim_work_ctx *work_ctx = domain->host_data; in irq_sim_domain_map() 136 static void irq_sim_domain_unmap(struct irq_domain *domain, unsigned int virq) in irq_sim_domain_unmap() argument 141 irqd = irq_domain_get_irq_data(domain, virq); in irq_sim_domain_unmap() 177 work_ctx->domain = irq_domain_create_linear(fwnode, num_irqs, in irq_domain_create_sim() 180 if (!work_ctx->domain) in irq_domain_create_sim() 186 return work_ctx->domain; in irq_domain_create_sim() 203 void irq_domain_remove_sim(struct irq_domain *domain) in irq_domain_remove_sim() argument [all …]
|
D | ipi.c | 23 int irq_reserve_ipi(struct irq_domain *domain, in irq_reserve_ipi() argument 30 if (!domain ||!irq_domain_is_ipi(domain)) { in irq_reserve_ipi() 46 if (irq_domain_is_ipi_single(domain)) { in irq_reserve_ipi() 84 virq = __irq_domain_alloc_irqs(domain, virq, nr_irqs, NUMA_NO_NODE, in irq_reserve_ipi() 119 struct irq_domain *domain; in irq_destroy_ipi() local 125 domain = data->domain; in irq_destroy_ipi() 126 if (WARN_ON(domain == NULL)) in irq_destroy_ipi() 129 if (!irq_domain_is_ipi(domain)) { in irq_destroy_ipi() 142 if (irq_domain_is_ipi_per_cpu(domain)) { in irq_destroy_ipi() 181 if (irq_domain_is_ipi_per_cpu(data->domain)) in ipi_get_hwirq() [all …]
|
D | debugfs.c | 87 data->domain ? data->domain->name : ""); in irq_debug_show_data() 90 if (data->domain && data->domain->ops && data->domain->ops->debug_show) in irq_debug_show_data() 91 data->domain->ops->debug_show(m, NULL, data, ind + 1); in irq_debug_show_data()
|
D | irqdesc.c | 190 if (desc->irq_data.domain) in hwirq_show() 703 int generic_handle_domain_irq(struct irq_domain *domain, unsigned int hwirq) in generic_handle_domain_irq() argument 705 return handle_irq_desc(irq_resolve_mapping(domain, hwirq)); in generic_handle_domain_irq() 721 int generic_handle_domain_irq_safe(struct irq_domain *domain, unsigned int hwirq) in generic_handle_domain_irq_safe() argument 727 ret = handle_irq_desc(irq_resolve_mapping(domain, hwirq)); in generic_handle_domain_irq_safe() 744 int generic_handle_domain_nmi(struct irq_domain *domain, unsigned int hwirq) in generic_handle_domain_nmi() argument 747 return handle_irq_desc(irq_resolve_mapping(domain, hwirq)); in generic_handle_domain_nmi()
|
D | generic-chip.c | 330 gc->domain = d; in __irq_alloc_domain_generic_chips() 562 if (gc->domain) { in irq_remove_generic_chip() 563 virq = irq_find_mapping(gc->domain, gc->irq_base + i); in irq_remove_generic_chip() 583 if (!gc->domain) in irq_gc_get_irq_data() 593 virq = irq_find_mapping(gc->domain, gc->irq_base + __ffs(gc->installed)); in irq_gc_get_irq_data()
|
D | Kconfig | 93 # Generic MSI hierarchical interrupt domain support
|
D | proc.c | 515 if (desc->irq_data.domain) in show_interrupts()
|
D | chip.c | 1581 if (data->domain) in irq_get_parent_device() 1582 return data->domain->dev; in irq_get_parent_device()
|
/kernel/ |
D | async.c | 74 struct async_domain *domain; member 87 static async_cookie_t lowest_in_progress(struct async_domain *domain) in lowest_in_progress() argument 95 if (domain) { in lowest_in_progress() 96 if (!list_empty(&domain->pending)) in lowest_in_progress() 97 first = list_first_entry(&domain->pending, in lowest_in_progress() 150 struct async_domain *domain, in __async_schedule_node_domain() argument 161 entry->domain = domain; in __async_schedule_node_domain() 168 list_add_tail(&entry->domain_list, &domain->pending); in __async_schedule_node_domain() 169 if (domain->registered) in __async_schedule_node_domain() 199 int node, struct async_domain *domain) in async_schedule_node_domain() argument [all …]
|