blob: bf6cd7d5cac27883c2feffb0bab762522242ff6e [file] [log] [blame]
David Howells607ca462012-10-13 10:46:48 +01001#ifndef _UAPI__LINUX_KVM_PARA_H
2#define _UAPI__LINUX_KVM_PARA_H
3
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
10 */
11
12/* Return values for hypercalls */
13#define KVM_ENOSYS 1000
14#define KVM_EFAULT EFAULT
15#define KVM_E2BIG E2BIG
16#define KVM_EPERM EPERM
17
18#define KVM_HC_VAPIC_POLL_IRQ 1
19#define KVM_HC_MMU_OP 2
20#define KVM_HC_FEATURES 3
21#define KVM_HC_PPC_MAP_MAGIC_PAGE 4
Raghavendra K T3a3bb002013-08-09 19:52:00 +053022#define KVM_HC_KICK_CPU 5
David Daney90dfdc72014-05-28 23:52:12 +020023#define KVM_HC_MIPS_GET_CLOCK_FREQ 6
24#define KVM_HC_MIPS_EXIT_VM 7
25#define KVM_HC_MIPS_CONSOLE_OUTPUT 8
David Howells607ca462012-10-13 10:46:48 +010026
27/*
28 * hypercalls use architecture specific
29 */
30#include <asm/kvm_para.h>
31
32#endif /* _UAPI__LINUX_KVM_PARA_H */