1 | /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ |
2 | #ifndef _UAPI__LINUX_KVM_PARA_H |
3 | #define _UAPI__LINUX_KVM_PARA_H |
4 | |
5 | /* |
6 | * This header file provides a method for making a hypercall to the host |
7 | * Architectures should define: |
8 | * - kvm_hypercall0, kvm_hypercall1... |
9 | * - kvm_arch_para_features |
10 | * - kvm_para_available |
11 | */ |
12 | |
13 | /* Return values for hypercalls */ |
14 | #define KVM_ENOSYS 1000 |
15 | #define KVM_EFAULT EFAULT |
16 | #define KVM_EINVAL EINVAL |
17 | #define KVM_E2BIG E2BIG |
18 | #define KVM_EPERM EPERM |
19 | #define KVM_EOPNOTSUPP 95 |
20 | |
21 | #define KVM_HC_VAPIC_POLL_IRQ 1 |
22 | #define KVM_HC_MMU_OP 2 |
23 | #define KVM_HC_FEATURES 3 |
24 | #define KVM_HC_PPC_MAP_MAGIC_PAGE 4 |
25 | #define KVM_HC_KICK_CPU 5 |
26 | #define KVM_HC_MIPS_GET_CLOCK_FREQ 6 |
27 | #define KVM_HC_MIPS_EXIT_VM 7 |
28 | #define KVM_HC_MIPS_CONSOLE_OUTPUT 8 |
29 | #define KVM_HC_CLOCK_PAIRING 9 |
30 | #define KVM_HC_SEND_IPI 10 |
31 | #define KVM_HC_SCHED_YIELD 11 |
32 | #define KVM_HC_MAP_GPA_RANGE 12 |
33 | |
34 | /* |
35 | * hypercalls use architecture specific |
36 | */ |
37 | #include <asm/kvm_para.h> |
38 | |
39 | #endif /* _UAPI__LINUX_KVM_PARA_H */ |
40 | |