/linux-6.1.9/arch/powerpc/sysdev/xics/ |
D | icp-native.c | 35 } xirr; member 51 unsigned int xirr; in icp_native_get_xirr() local 54 xirr = kvmppc_get_xics_latch(); in icp_native_get_xirr() 55 if (xirr) in icp_native_get_xirr() 56 return xirr; in icp_native_get_xirr() 58 return in_be32(&icp_native_regs[cpu]->xirr.word); in icp_native_get_xirr() 65 out_be32(&icp_native_regs[cpu]->xirr.word, value); in icp_native_set_xirr() 72 out_8(&icp_native_regs[cpu]->xirr.bytes[0], value); in icp_native_set_cppr() 118 unsigned int xirr = icp_native_get_xirr(); in icp_native_get_irq() local 119 unsigned int vec = xirr & 0x00ffffff; in icp_native_get_irq() [all …]
|
D | icp-opal.c | 64 unsigned int xirr; in icp_opal_get_irq() local 68 xirr = icp_opal_get_xirr(); in icp_opal_get_irq() 69 vec = xirr & 0x00ffffff; in icp_opal_get_irq() 83 if (opal_int_eoi(xirr) > 0) in icp_opal_get_irq() 150 unsigned int xirr; in icp_opal_flush_interrupt() local 154 xirr = icp_opal_get_xirr(); in icp_opal_flush_interrupt() 155 vec = xirr & 0x00ffffff; in icp_opal_flush_interrupt() 170 } while (opal_int_eoi(xirr) > 0); in icp_opal_flush_interrupt()
|
D | icp-hv.c | 106 unsigned int xirr = icp_hv_get_xirr(xics_cppr_top()); in icp_hv_get_irq() local 107 unsigned int vec = xirr & 0x00ffffff; in icp_hv_get_irq() 123 icp_hv_set_xirr(xirr); in icp_hv_get_irq()
|
/linux-6.1.9/arch/powerpc/kvm/ |
D | book3s_hv_builtin.c | 338 static int kvmppc_check_passthru(u32 xisr, __be32 xirr, bool *again) in kvmppc_check_passthru() argument 357 return kvmppc_deliver_irq_passthru(vcpu, xirr, irq_map, pimap, again); in kvmppc_check_passthru() 361 static inline int kvmppc_check_passthru(u32 xisr, __be32 xirr, bool *again) in kvmppc_check_passthru() argument 400 __be32 xirr; in kvmppc_read_one_intr() local 417 rc = opal_int_get_xirr(&xirr, false); in kvmppc_read_one_intr() 419 xirr = __raw_rm_readl(xics_phys + XICS_XIRR); in kvmppc_read_one_intr() 429 h_xirr = be32_to_cpu(xirr); in kvmppc_read_one_intr() 450 __raw_rm_writel(xirr, xics_phys + XICS_XIRR); in kvmppc_read_one_intr() 490 return kvmppc_check_passthru(xisr, xirr, again); in kvmppc_read_one_intr()
|
D | book3s_hv_rm_xics.c | 493 u32 xirr; in xics_rm_h_xirr() local 511 xirr = old_state.xisr | (((u32)old_state.cppr) << 24); in xics_rm_h_xirr() 521 vcpu->arch.regs.gpr[4] = xirr; in xics_rm_h_xirr() 734 int xics_rm_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr) in xics_rm_h_eoi() argument 738 u32 irq = xirr & 0x00ffffff; in xics_rm_h_eoi() 757 icp_rm_down_cppr(xics, icp, xirr >> 24); in xics_rm_h_eoi() 768 static void icp_eoi(struct irq_data *d, u32 hwirq, __be32 xirr, bool *again) in icp_eoi() argument 783 __raw_rm_writel(xirr, xics_phys + XICS_XIRR); in icp_eoi() 785 rc = opal_int_eoi(be32_to_cpu(xirr)); in icp_eoi() 845 __be32 xirr, in kvmppc_deliver_irq_passthru() argument [all …]
|
D | book3s_xics.c | 590 u32 xirr; in kvmppc_h_xirr() local 605 xirr = old_state.xisr | (((u32)old_state.cppr) << 24); in kvmppc_h_xirr() 614 XICS_DBG("h_xirr vcpu %d xirr %#x\n", vcpu->vcpu_id, xirr); in kvmppc_h_xirr() 616 return xirr; in kvmppc_h_xirr() 817 static noinline int kvmppc_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr) in kvmppc_h_eoi() argument 821 u32 irq = xirr & 0x00ffffff; in kvmppc_h_eoi() 823 XICS_DBG("h_eoi vcpu %d eoi %#lx\n", vcpu->vcpu_id, xirr); in kvmppc_h_eoi() 839 icp_down_cppr(xics, icp, xirr >> 24); in kvmppc_h_eoi()
|
D | book3s_xics.h | 150 extern int xics_rm_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr);
|
D | book3s_xive.c | 515 static int xive_vm_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr) in xive_vm_h_eoi() argument 522 u8 new_cppr = xirr >> 24; in xive_vm_h_eoi() 523 u32 irq = xirr & 0x00ffffff, hw_num; in xive_vm_h_eoi() 527 pr_devel("H_EOI(xirr=%08lx)\n", xirr); in xive_vm_h_eoi()
|
/linux-6.1.9/arch/powerpc/include/asm/ |
D | kvm_ppc.h | 437 u32 xirr; in kvmppc_get_xics_latch() local 439 xirr = get_paca()->kvm_hstate.saved_xirr; in kvmppc_get_xics_latch() 441 return xirr; in kvmppc_get_xics_latch() 625 extern long kvmppc_deliver_irq_passthru(struct kvm_vcpu *vcpu, __be32 xirr,
|
D | opal.h | 235 int64_t opal_int_eoi(uint32_t xirr);
|