Searched refs:imsic (Results 1 – 7 of 7) sorted by relevance
| /linux-6.15/arch/riscv/kvm/ |
| H A D | aia_imsic.c | 33 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 D | irq-riscv-imsic-state.c | 59 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 D | irq-riscv-imsic-platform.c | 32 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 D | irq-riscv-imsic-early.c | 28 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 D | irq-riscv-imsic-state.h | 64 extern struct imsic_priv *imsic;
|
| H A D | Makefile | 104 obj-$(CONFIG_RISCV_IMSIC) += irq-riscv-imsic-state.o irq-riscv-imsic-early.o irq-riscv-imsic-platf…
|
| /linux-6.15/ |
| H A D | MAINTAINERS | 20942 F: drivers/irqchip/irq-riscv-imsic-*.c 20943 F: drivers/irqchip/irq-riscv-imsic-*.h 20946 F: include/linux/irqchip/riscv-imsic.h
|