xref: /openbmc/qemu/include/sysemu/whpx.h (revision 29b22c79bcacce7839209c7344948e8c305fa2d3)
1*29b22c79SJustin Terry (VM) /*
2*29b22c79SJustin Terry (VM)  * QEMU Windows Hypervisor Platform accelerator (WHPX) support
3*29b22c79SJustin Terry (VM)  *
4*29b22c79SJustin Terry (VM)  * Copyright Microsoft, Corp. 2017
5*29b22c79SJustin Terry (VM)  *
6*29b22c79SJustin Terry (VM)  * Authors:
7*29b22c79SJustin Terry (VM)  *
8*29b22c79SJustin Terry (VM)  * This work is licensed under the terms of the GNU GPL, version 2 or later.
9*29b22c79SJustin Terry (VM)  * See the COPYING file in the top-level directory.
10*29b22c79SJustin Terry (VM)  *
11*29b22c79SJustin Terry (VM)  */
12*29b22c79SJustin Terry (VM) 
13*29b22c79SJustin Terry (VM) #ifndef QEMU_WHPX_H
14*29b22c79SJustin Terry (VM) #define QEMU_WHPX_H
15*29b22c79SJustin Terry (VM) 
16*29b22c79SJustin Terry (VM) #include "config-host.h"
17*29b22c79SJustin Terry (VM) #include "qemu-common.h"
18*29b22c79SJustin Terry (VM) 
19*29b22c79SJustin Terry (VM) int whpx_init_vcpu(CPUState *cpu);
20*29b22c79SJustin Terry (VM) int whpx_vcpu_exec(CPUState *cpu);
21*29b22c79SJustin Terry (VM) void whpx_destroy_vcpu(CPUState *cpu);
22*29b22c79SJustin Terry (VM) void whpx_vcpu_kick(CPUState *cpu);
23*29b22c79SJustin Terry (VM) 
24*29b22c79SJustin Terry (VM) 
25*29b22c79SJustin Terry (VM) void whpx_cpu_synchronize_state(CPUState *cpu);
26*29b22c79SJustin Terry (VM) void whpx_cpu_synchronize_post_reset(CPUState *cpu);
27*29b22c79SJustin Terry (VM) void whpx_cpu_synchronize_post_init(CPUState *cpu);
28*29b22c79SJustin Terry (VM) void whpx_cpu_synchronize_pre_loadvm(CPUState *cpu);
29*29b22c79SJustin Terry (VM) 
30*29b22c79SJustin Terry (VM) #ifdef CONFIG_WHPX
31*29b22c79SJustin Terry (VM) 
32*29b22c79SJustin Terry (VM) int whpx_enabled(void);
33*29b22c79SJustin Terry (VM) 
34*29b22c79SJustin Terry (VM) #else /* CONFIG_WHPX */
35*29b22c79SJustin Terry (VM) 
36*29b22c79SJustin Terry (VM) #define whpx_enabled() (0)
37*29b22c79SJustin Terry (VM) 
38*29b22c79SJustin Terry (VM) #endif /* CONFIG_WHPX */
39*29b22c79SJustin Terry (VM) 
40*29b22c79SJustin Terry (VM) #endif /* QEMU_WHPX_H */
41