diff options
author | Paul Mackerras <paulus@samba.org> | 2013-04-17 16:32:26 -0400 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2013-04-26 14:27:34 -0400 |
commit | 8b78645c93b5d469e8006d68dbc92edc2640c654 (patch) | |
tree | 5f558213cc4bd2677069232d7dc1a78c96aee165 /arch/powerpc/include/asm/kvm_ppc.h | |
parent | d19bd86204f85d42873e07bb64a27587fc380b5b (diff) |
KVM: PPC: Book3S: Facilities to save/restore XICS presentation ctrler state
This adds the ability for userspace to save and restore the state
of the XICS interrupt presentation controllers (ICPs) via the
KVM_GET/SET_ONE_REG interface. Since there is one ICP per vcpu, we
simply define a new 64-bit register in the ONE_REG space for the ICP
state. The state includes the CPU priority setting, the pending IPI
priority, and the priority and source number of any pending external
interrupt.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'arch/powerpc/include/asm/kvm_ppc.h')
-rw-r--r-- | arch/powerpc/include/asm/kvm_ppc.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/kvm_ppc.h b/arch/powerpc/include/asm/kvm_ppc.h index cfaa47995c0e..d7339df19259 100644 --- a/arch/powerpc/include/asm/kvm_ppc.h +++ b/arch/powerpc/include/asm/kvm_ppc.h | |||
@@ -313,6 +313,8 @@ extern void kvmppc_xics_free_icp(struct kvm_vcpu *vcpu); | |||
313 | extern int kvmppc_xics_create_icp(struct kvm_vcpu *vcpu, unsigned long server); | 313 | extern int kvmppc_xics_create_icp(struct kvm_vcpu *vcpu, unsigned long server); |
314 | extern int kvm_vm_ioctl_xics_irq(struct kvm *kvm, struct kvm_irq_level *args); | 314 | extern int kvm_vm_ioctl_xics_irq(struct kvm *kvm, struct kvm_irq_level *args); |
315 | extern int kvmppc_xics_hcall(struct kvm_vcpu *vcpu, u32 cmd); | 315 | extern int kvmppc_xics_hcall(struct kvm_vcpu *vcpu, u32 cmd); |
316 | extern u64 kvmppc_xics_get_icp(struct kvm_vcpu *vcpu); | ||
317 | extern int kvmppc_xics_set_icp(struct kvm_vcpu *vcpu, u64 icpval); | ||
316 | #else | 318 | #else |
317 | static inline int kvmppc_xics_enabled(struct kvm_vcpu *vcpu) | 319 | static inline int kvmppc_xics_enabled(struct kvm_vcpu *vcpu) |
318 | { return 0; } | 320 | { return 0; } |