Home
last modified time | relevance | path

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

/linux-6.15/arch/riscv/kvm/
H A Daia_imsic.c33 struct imsic { struct
602 imsic->vsfile_cpu = imsic->vsfile_hgei = -1; in imsic_vsfile_cleanup()
607 memset(imsic->swfile, 0, sizeof(*imsic->swfile)); in imsic_vsfile_cleanup()
690 imsic->vsfile_cpu = imsic->vsfile_hgei = -1; in kvm_riscv_vcpu_aia_imsic_release()
739 struct imsic *imsic = vaia->imsic_state; in kvm_riscv_vcpu_aia_imsic_update() local
886 struct imsic *imsic; in kvm_riscv_aia_imsic_rw_attr() local
928 struct imsic *imsic; in kvm_riscv_aia_imsic_has_attr() local
1023 struct imsic *imsic; in kvm_riscv_vcpu_aia_imsic_init() local
1032 imsic = kzalloc(sizeof(*imsic), GFP_KERNEL); in kvm_riscv_vcpu_aia_imsic_init()
1040 imsic->nr_eix = BITS_TO_U64(imsic->nr_msis); in kvm_riscv_vcpu_aia_imsic_init()
[all …]
/linux-6.15/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()
504 imsic->lpriv = alloc_percpu(typeof(*imsic->lpriv)); in imsic_local_init()
505 if (!imsic->lpriv) in imsic_local_init()
579 if (!imsic->matrix) in imsic_matrix_init()
812 if (imsic) { in imsic_setup_state()
822 imsic = kzalloc(sizeof(*imsic), GFP_KERNEL); in imsic_setup_state()
823 if (!imsic) in imsic_setup_state()
825 imsic->fwnode = fwnode; in imsic_setup_state()
965 kfree(imsic); in imsic_setup_state()
[all …]
H A Dirq-riscv-imsic-platform.c32 global = &imsic->global; in imsic_cpu_page_phys()
62 local = per_cpu_ptr(imsic->global.local, vec->cpu); in imsic_irq_retrigger()
312 if (!imsic || !imsic->fwnode) { in imsic_irqdomain_init()
317 if (imsic->base_domain) { in imsic_irqdomain_init()
323 imsic->base_domain = irq_domain_create_tree(imsic->fwnode, in imsic_irqdomain_init()
324 &imsic_base_domain_ops, imsic); in imsic_irqdomain_init()
325 if (!imsic->base_domain) { in imsic_irqdomain_init()
329 imsic->base_domain->flags |= IRQ_DOMAIN_FLAG_MSI_PARENT; in imsic_irqdomain_init()
334 global = &imsic->global; in imsic_irqdomain_init()
340 imsic->fwnode, global->nr_ids, &global->base_addr); 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()
97 if (unlikely(!imsic->base_domain)) in imsic_handle_irq()
222 struct acpi_madt_imsic *imsic = (struct acpi_madt_imsic *)header; in imsic_early_acpi_init() local
232 rc = imsic_setup_state(imsic_acpi_fwnode, imsic); in imsic_early_acpi_init()
H A Dirq-riscv-imsic-state.h64 extern struct imsic_priv *imsic;
H A DMakefile104 obj-$(CONFIG_RISCV_IMSIC) += irq-riscv-imsic-state.o irq-riscv-imsic-early.o irq-riscv-imsic-platf…
/linux-6.15/
H A DMAINTAINERS20942 F: drivers/irqchip/irq-riscv-imsic-*.c
20943 F: drivers/irqchip/irq-riscv-imsic-*.h
20946 F: include/linux/irqchip/riscv-imsic.h