]> git.proxmox.com Git - mirror_qemu.git/blame - include/sysemu/hvf.h
hw/i2c: Document the I2C qdev helpers
[mirror_qemu.git] / include / sysemu / hvf.h
CommitLineData
c97d6d2c
SAGDR
1/*
2 * QEMU Hypervisor.framework (HVF) support
3 *
4 * Copyright Google Inc., 2017
5 *
6 * This work is licensed under the terms of the GNU GPL, version 2 or later.
7 * See the COPYING file in the top-level directory.
8 *
9 */
10
11/* header to be included in non-HVF-specific code */
a8b991b5
MA
12
13#ifndef HVF_H
14#define HVF_H
c97d6d2c 15
c97d6d2c 16#ifdef CONFIG_HVF
c97d6d2c
SAGDR
17uint32_t hvf_get_supported_cpuid(uint32_t func, uint32_t idx,
18 int reg);
f291cf54 19extern bool hvf_allowed;
92cc3aaa 20#define hvf_enabled() (hvf_allowed)
f291cf54 21#else /* !CONFIG_HVF */
c97d6d2c
SAGDR
22#define hvf_enabled() 0
23#define hvf_get_supported_cpuid(func, idx, reg) 0
f291cf54 24#endif /* !CONFIG_HVF */
c97d6d2c 25
c97d6d2c
SAGDR
26int hvf_init_vcpu(CPUState *);
27int hvf_vcpu_exec(CPUState *);
c97d6d2c
SAGDR
28void hvf_cpu_synchronize_state(CPUState *);
29void hvf_cpu_synchronize_post_reset(CPUState *);
30void hvf_cpu_synchronize_post_init(CPUState *);
c97d6d2c 31void hvf_vcpu_destroy(CPUState *);
c97d6d2c 32void hvf_reset_vcpu(CPUState *);
c97d6d2c
SAGDR
33
34#define TYPE_HVF_ACCEL ACCEL_CLASS_NAME("hvf")
35
36#define HVF_STATE(obj) \
37 OBJECT_CHECK(HVFState, (obj), TYPE_HVF_ACCEL)
38
39#endif