diff options
Diffstat (limited to 'arch/powerpc/include/asm/kvm_para.h')
| -rw-r--r-- | arch/powerpc/include/asm/kvm_para.h | 117 | 
1 files changed, 6 insertions, 111 deletions
diff --git a/arch/powerpc/include/asm/kvm_para.h b/arch/powerpc/include/asm/kvm_para.h index 50533f9adf4..336a91acb8b 100644 --- a/arch/powerpc/include/asm/kvm_para.h +++ b/arch/powerpc/include/asm/kvm_para.h @@ -16,40 +16,10 @@   *   * Authors: Hollis Blanchard <hollisb@us.ibm.com>   */ -  #ifndef __POWERPC_KVM_PARA_H__  #define __POWERPC_KVM_PARA_H__ -#include <linux/types.h> - -struct kvm_vcpu_arch_shared { -	__u64 scratch1; -	__u64 scratch2; -	__u64 scratch3; -	__u64 critical;		/* Guest may not get interrupts if == r1 */ -	__u64 sprg0; -	__u64 sprg1; -	__u64 sprg2; -	__u64 sprg3; -	__u64 srr0; -	__u64 srr1; -	__u64 dar; -	__u64 msr; -	__u32 dsisr; -	__u32 int_pending;	/* Tells the guest if we have an interrupt */ -	__u32 sr[16]; -}; - -#define KVM_SC_MAGIC_R0		0x4b564d21 /* "KVM!" */ -#define HC_VENDOR_KVM		(42 << 16) -#define HC_EV_SUCCESS		0 -#define HC_EV_UNIMPLEMENTED	12 - -#define KVM_FEATURE_MAGIC_PAGE	1 - -#define KVM_MAGIC_FEAT_SR	(1 << 0) - -#ifdef __KERNEL__ +#include <uapi/asm/kvm_para.h>  #ifdef CONFIG_KVM_GUEST @@ -69,10 +39,6 @@ static inline int kvm_para_available(void)  	return 1;  } -extern unsigned long kvm_hypercall(unsigned long *in, -				   unsigned long *out, -				   unsigned long nr); -  #else  static inline int kvm_para_available(void) @@ -80,82 +46,8 @@ static inline int kvm_para_available(void)  	return 0;  } -static unsigned long kvm_hypercall(unsigned long *in, -				   unsigned long *out, -				   unsigned long nr) -{ -	return HC_EV_UNIMPLEMENTED; -} -  #endif -static inline long kvm_hypercall0_1(unsigned int nr, unsigned long *r2) -{ -	unsigned long in[8]; -	unsigned long out[8]; -	unsigned long r; - -	r = kvm_hypercall(in, out, nr | HC_VENDOR_KVM); -	*r2 = out[0]; - -	return r; -} - -static inline long kvm_hypercall0(unsigned int nr) -{ -	unsigned long in[8]; -	unsigned long out[8]; - -	return kvm_hypercall(in, out, nr | HC_VENDOR_KVM); -} - -static inline long kvm_hypercall1(unsigned int nr, unsigned long p1) -{ -	unsigned long in[8]; -	unsigned long out[8]; - -	in[0] = p1; -	return kvm_hypercall(in, out, nr | HC_VENDOR_KVM); -} - -static inline long kvm_hypercall2(unsigned int nr, unsigned long p1, -				  unsigned long p2) -{ -	unsigned long in[8]; -	unsigned long out[8]; - -	in[0] = p1; -	in[1] = p2; -	return kvm_hypercall(in, out, nr | HC_VENDOR_KVM); -} - -static inline long kvm_hypercall3(unsigned int nr, unsigned long p1, -				  unsigned long p2, unsigned long p3) -{ -	unsigned long in[8]; -	unsigned long out[8]; - -	in[0] = p1; -	in[1] = p2; -	in[2] = p3; -	return kvm_hypercall(in, out, nr | HC_VENDOR_KVM); -} - -static inline long kvm_hypercall4(unsigned int nr, unsigned long p1, -				  unsigned long p2, unsigned long p3, -				  unsigned long p4) -{ -	unsigned long in[8]; -	unsigned long out[8]; - -	in[0] = p1; -	in[1] = p2; -	in[2] = p3; -	in[3] = p4; -	return kvm_hypercall(in, out, nr | HC_VENDOR_KVM); -} - -  static inline unsigned int kvm_arch_para_features(void)  {  	unsigned long r; @@ -163,12 +55,15 @@ static inline unsigned int kvm_arch_para_features(void)  	if (!kvm_para_available())  		return 0; -	if(kvm_hypercall0_1(KVM_HC_FEATURES, &r)) +	if(epapr_hypercall0_1(KVM_HCALL_TOKEN(KVM_HC_FEATURES), &r))  		return 0;  	return r;  } -#endif /* __KERNEL__ */ +static inline bool kvm_check_and_clear_guest_paused(void) +{ +	return false; +}  #endif /* __POWERPC_KVM_PARA_H__ */  | 
