Commit | Line | Data |
---|---|---|
102d8325 IM |
1 | #ifndef __LINUX_KVM_PARA_H |
2 | #define __LINUX_KVM_PARA_H | |
3 | ||
5f43238d CB |
4 | /* |
5 | * This header file provides a method for making a hypercall to the host | |
6 | * Architectures should define: | |
7 | * - kvm_hypercall0, kvm_hypercall1... | |
8 | * - kvm_arch_para_features | |
9 | * - kvm_para_available | |
102d8325 | 10 | */ |
102d8325 | 11 | |
7aa81cc0 AL |
12 | /* Return values for hypercalls */ |
13 | #define KVM_ENOSYS 1000 | |
102d8325 | 14 | |
b93463aa AK |
15 | #define KVM_HC_VAPIC_POLL_IRQ 1 |
16 | ||
7aa81cc0 | 17 | #ifdef __KERNEL__ |
5f43238d CB |
18 | /* |
19 | * hypercalls use architecture specific | |
c21415e8 | 20 | */ |
5f43238d | 21 | #include <asm/kvm_para.h> |
7aa81cc0 AL |
22 | |
23 | static inline int kvm_para_has_feature(unsigned int feature) | |
24 | { | |
5f43238d | 25 | if (kvm_arch_para_features() & (1UL << feature)) |
7aa81cc0 AL |
26 | return 1; |
27 | return 0; | |
28 | } | |
5f43238d CB |
29 | #endif /* __KERNEL__ */ |
30 | #endif /* __LINUX_KVM_PARA_H */ | |
7aa81cc0 | 31 |