/arch/powerpc/sysdev/xics/ |
D | icp-opal.c | 67 unsigned int xirr; in icp_opal_get_irq() local 71 xirr = icp_opal_get_xirr(); in icp_opal_get_irq() 72 vec = xirr & 0x00ffffff; in icp_opal_get_irq() 86 if (opal_int_eoi(xirr) > 0) in icp_opal_get_irq() 153 unsigned int xirr; in icp_opal_flush_interrupt() local 157 xirr = icp_opal_get_xirr(); in icp_opal_flush_interrupt() 158 vec = xirr & 0x00ffffff; in icp_opal_flush_interrupt() 173 } while (opal_int_eoi(xirr) > 0); in icp_opal_flush_interrupt()
|
D | icp-native.c | 39 } xirr; member 55 unsigned int xirr; in icp_native_get_xirr() local 58 xirr = kvmppc_get_xics_latch(); in icp_native_get_xirr() 59 if (xirr) in icp_native_get_xirr() 60 return xirr; in icp_native_get_xirr() 62 return in_be32(&icp_native_regs[cpu]->xirr.word); in icp_native_get_xirr() 69 out_be32(&icp_native_regs[cpu]->xirr.word, value); in icp_native_set_xirr() 76 out_8(&icp_native_regs[cpu]->xirr.bytes[0], value); in icp_native_set_cppr() 122 unsigned int xirr = icp_native_get_xirr(); in icp_native_get_irq() local 123 unsigned int vec = xirr & 0x00ffffff; in icp_native_get_irq() [all …]
|
D | icp-hv.c | 110 unsigned int xirr = icp_hv_get_xirr(xics_cppr_top()); in icp_hv_get_irq() local 111 unsigned int vec = xirr & 0x00ffffff; in icp_hv_get_irq() 127 icp_hv_set_xirr(xirr); in icp_hv_get_irq()
|
/arch/powerpc/kvm/ |
D | book3s_hv_builtin.c | 46 int (*__xive_vm_h_eoi)(struct kvm_vcpu *vcpu, unsigned long xirr); 369 static int kvmppc_check_passthru(u32 xisr, __be32 xirr, bool *again) in kvmppc_check_passthru() argument 388 return kvmppc_deliver_irq_passthru(vcpu, xirr, irq_map, pimap, again); in kvmppc_check_passthru() 392 static inline int kvmppc_check_passthru(u32 xisr, __be32 xirr, bool *again) in kvmppc_check_passthru() argument 431 __be32 xirr; in kvmppc_read_one_intr() local 448 rc = opal_int_get_xirr(&xirr, false); in kvmppc_read_one_intr() 450 xirr = __raw_rm_readl(xics_phys + XICS_XIRR); in kvmppc_read_one_intr() 460 h_xirr = be32_to_cpu(xirr); in kvmppc_read_one_intr() 481 __raw_rm_writel(xirr, xics_phys + XICS_XIRR); in kvmppc_read_one_intr() 521 return kvmppc_check_passthru(xisr, xirr, again); in kvmppc_read_one_intr() [all …]
|
D | book3s_hv_rm_xics.c | 492 u32 xirr; in xics_rm_h_xirr() local 510 xirr = old_state.xisr | (((u32)old_state.cppr) << 24); in xics_rm_h_xirr() 520 vcpu->arch.gpr[4] = xirr; in xics_rm_h_xirr() 732 int xics_rm_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr) in xics_rm_h_eoi() argument 736 u32 irq = xirr & 0x00ffffff; in xics_rm_h_eoi() 755 icp_rm_down_cppr(xics, icp, xirr >> 24); in xics_rm_h_eoi() 766 static void icp_eoi(struct irq_chip *c, u32 hwirq, __be32 xirr, bool *again) in icp_eoi() argument 781 __raw_rm_writel(xirr, xics_phys + XICS_XIRR); in icp_eoi() 783 rc = opal_int_eoi(be32_to_cpu(xirr)); in icp_eoi() 843 __be32 xirr, in kvmppc_deliver_irq_passthru() argument [all …]
|
D | book3s_xive_template.c | 426 X_STATIC int GLUE(X_PFX,h_eoi)(struct kvm_vcpu *vcpu, unsigned long xirr) in GLUE() 433 u8 new_cppr = xirr >> 24; in GLUE() 434 u32 irq = xirr & 0x00ffffff, hw_num; in GLUE() 438 pr_devel("H_EOI(xirr=%08lx)\n", xirr); in GLUE()
|
D | book3s_xive.h | 245 extern int xive_rm_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr); 252 extern int (*__xive_vm_h_eoi)(struct kvm_vcpu *vcpu, unsigned long xirr);
|
D | book3s_xics.c | 593 u32 xirr; in kvmppc_h_xirr() local 609 xirr = old_state.xisr | (((u32)old_state.cppr) << 24); in kvmppc_h_xirr() 618 XICS_DBG("h_xirr vcpu %d xirr %#x\n", vcpu->vcpu_id, xirr); in kvmppc_h_xirr() 620 return xirr; in kvmppc_h_xirr() 822 static noinline int kvmppc_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr) in kvmppc_h_eoi() argument 826 u32 irq = xirr & 0x00ffffff; in kvmppc_h_eoi() 828 XICS_DBG("h_eoi vcpu %d eoi %#lx\n", vcpu->vcpu_id, xirr); in kvmppc_h_eoi() 844 icp_down_cppr(xics, icp, xirr >> 24); in kvmppc_h_eoi()
|
D | book3s_xics.h | 152 extern int xics_rm_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr);
|
/arch/powerpc/include/asm/ |
D | kvm_ppc.h | 444 u32 xirr; in kvmppc_get_xics_latch() local 446 xirr = get_paca()->kvm_hstate.saved_xirr; in kvmppc_get_xics_latch() 448 return xirr; in kvmppc_get_xics_latch() 523 extern long kvmppc_deliver_irq_passthru(struct kvm_vcpu *vcpu, __be32 xirr, 644 int kvmppc_rm_h_eoi(struct kvm_vcpu *vcpu, unsigned long xirr);
|
D | opal.h | 231 int64_t opal_int_eoi(uint32_t xirr);
|