Searched refs:imsic (Results 1 – 4 of 4) sorted by relevance
/openbmc/qemu/hw/intc/ |
H A D | riscv_imsic.c | 49 static uint32_t riscv_imsic_topei(RISCVIMSICState *imsic, uint32_t page) in riscv_imsic_topei() argument 53 base = page * imsic->num_irqs; in riscv_imsic_topei() 54 max_irq = (imsic->eithreshold[page] && in riscv_imsic_topei() 55 (imsic->eithreshold[page] <= imsic->num_irqs)) ? in riscv_imsic_topei() 56 imsic->eithreshold[page] : imsic->num_irqs; in riscv_imsic_topei() 58 if ((qatomic_read(&imsic->eistate[base + i]) & IMSIC_EISTATE_ENPEND) == in riscv_imsic_topei() 67 static void riscv_imsic_update(RISCVIMSICState *imsic, uint32_t page) in riscv_imsic_update() argument 69 uint32_t base = page * imsic->num_irqs; in riscv_imsic_update() 81 if (qatomic_fetch_and(&imsic->eistate[base], ~IMSIC_EISTATE_ENPEND)) { in riscv_imsic_update() 82 qemu_irq_lower(imsic->external_irqs[page]); in riscv_imsic_update() [all …]
|
/openbmc/linux/arch/riscv/kvm/ |
H A D | aia_imsic.c | 33 struct imsic { struct 588 static void imsic_vsfile_cleanup(struct imsic *imsic) in imsic_vsfile_cleanup() argument 599 write_lock_irqsave(&imsic->vsfile_lock, flags); in imsic_vsfile_cleanup() 600 old_vsfile_hgei = imsic->vsfile_hgei; in imsic_vsfile_cleanup() 601 old_vsfile_cpu = imsic->vsfile_cpu; in imsic_vsfile_cleanup() 602 imsic->vsfile_cpu = imsic->vsfile_hgei = -1; in imsic_vsfile_cleanup() 603 imsic->vsfile_va = NULL; in imsic_vsfile_cleanup() 604 imsic->vsfile_pa = 0; in imsic_vsfile_cleanup() 605 write_unlock_irqrestore(&imsic->vsfile_lock, flags); in imsic_vsfile_cleanup() 607 memset(imsic->swfile, 0, sizeof(*imsic->swfile)); in imsic_vsfile_cleanup() [all …]
|
/openbmc/qemu/docs/specs/ |
H A D | riscv-iommu.rst | 51 -M virt,aia=aplic-imsic,aia-guests=5 \ 58 -M virt,aia=aplic-imsic,aia-guests=5 \
|
/openbmc/qemu/docs/system/riscv/ |
H A D | virt.rst | 116 - aia=[none|aplic|aplic-imsic] 121 interrupts whereas the "aia=aplic-imsic" selects APLIC and IMSIC (incoming 129 having AIA IMSIC (i.e. "aia=aplic-imsic" selected). When not specified,
|