Home
last modified time | relevance | path

Searched refs:imsic (Results 1 – 6 of 6) sorted by relevance

/linux/drivers/irqchip/
H A Dirq-riscv-imsic-state.c59 struct imsic_priv *imsic; variable
63 return imsic ? &imsic->global : NULL; in imsic_get_global_config()
135 for_each_set_bit(i, lpriv->dirty_bitmap, imsic->global.nr_ids + 1) { in __imsic_local_sync()
155 mlocal = per_cpu_ptr(imsic->global.local, mvec->cpu); in __imsic_local_sync()
169 struct imsic_local_priv *lpriv = this_cpu_ptr(imsic->lpriv); in imsic_local_sync_all()
173 bitmap_fill(lpriv->dirty_bitmap, imsic->global.nr_ids + 1); in imsic_local_sync_all()
193 struct imsic_local_priv *lpriv = this_cpu_ptr(imsic->lpriv); in imsic_local_timer_callback()
241 lpriv = per_cpu_ptr(imsic->lpriv, vec->cpu); in imsic_vector_mask()
263 lpriv = per_cpu_ptr(imsic->lpriv, vec->cpu); in imsic_vector_unmask()
311 old_lpriv = per_cpu_ptr(imsic->lpriv, old_vec->cpu); in imsic_vector_move()
[all …]
H A Dirq-riscv-imsic-platform.c31 global = &imsic->global; in imsic_cpu_page_phys()
61 local = per_cpu_ptr(imsic->global.local, vec->cpu); in imsic_irq_retrigger()
317 if (!imsic || !imsic->fwnode) { in imsic_irqdomain_init()
322 if (imsic->base_domain) { in imsic_irqdomain_init()
323 pr_err("%pfwP: irq domain already created\n", imsic->fwnode); in imsic_irqdomain_init()
328 imsic->base_domain = irq_domain_create_tree(imsic->fwnode, in imsic_irqdomain_init()
329 &imsic_base_domain_ops, imsic); in imsic_irqdomain_init()
330 if (!imsic->base_domain) { in imsic_irqdomain_init()
331 pr_err("%pfwP: failed to create IMSIC base domain\n", imsic->fwnode); in imsic_irqdomain_init()
334 imsic->base_domain->flags |= IRQ_DOMAIN_FLAG_MSI_PARENT; in imsic_irqdomain_init()
[all …]
H A Dirq-riscv-imsic-early.c28 struct imsic_local_config *local = per_cpu_ptr(imsic->global.local, cpu); in imsic_ipi_send()
58 pr_info("%pfwP: providing IPIs using interrupt %d\n", imsic->fwnode, IMSIC_IPI_ID); in imsic_ipi_domain_init()
91 if (unlikely(!imsic->base_domain)) in imsic_handle_irq()
100 err = generic_handle_domain_irq(imsic->base_domain, vec->hwirq); in imsic_handle_irq()
218 struct acpi_madt_imsic *imsic = (struct acpi_madt_imsic *)header; in imsic_early_acpi_init() local
228 rc = imsic_setup_state(imsic_acpi_fwnode, imsic); in imsic_early_acpi_init()
H A DMakefile103 obj-$(CONFIG_RISCV_IMSIC) += irq-riscv-imsic-state.o irq-riscv-imsic-early.o irq-riscv-imsic-platf…
H A Dirq-riscv-imsic-state.h63 extern struct imsic_priv *imsic;
/linux/
H A DMAINTAINERS20103 F: drivers/irqchip/irq-riscv-imsic-*.c
20104 F: drivers/irqchip/irq-riscv-imsic-*.h
20107 F: include/linux/irqchip/riscv-imsic.h