diff options
author | Vadim Rozenfeld <vrozenfe@redhat.com> | 2011-12-18 22:48:13 +0200 |
---|---|---|
committer | Marcelo Tosatti <mtosatti@redhat.com> | 2012-01-19 08:32:12 -0200 |
commit | 28f52cc04d341045e810bd487a478fa9ec5f40be (patch) | |
tree | 2e92fa49e8ea688f9013ed5d8b1dd553a95f2d42 /target-i386/hyperv.h | |
parent | 8c4ec5c0269bda18bb777a64b2008088d1c632dc (diff) |
hyper-v: introduce Hyper-V support infrastructure.
[Jan: fix build with CONFIG_USER_ONLY]
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'target-i386/hyperv.h')
-rw-r--r-- | target-i386/hyperv.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/target-i386/hyperv.h b/target-i386/hyperv.h new file mode 100644 index 0000000000..15467bf397 --- /dev/null +++ b/target-i386/hyperv.h @@ -0,0 +1,43 @@ +/* + * QEMU Hyper-V support + * + * Copyright Red Hat, Inc. 2011 + * + * Author: Vadim Rozenfeld <vrozenfe@redhat.com> + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + * + */ + +#ifndef QEMU_HW_HYPERV_H +#define QEMU_HW_HYPERV_H 1 + +#include "qemu-common.h" +#include <asm/hyperv.h> + +#ifndef HYPERV_SPINLOCK_NEVER_RETRY +#define HYPERV_SPINLOCK_NEVER_RETRY 0xFFFFFFFF +#endif + +#ifndef KVM_CPUID_SIGNATURE_NEXT +#define KVM_CPUID_SIGNATURE_NEXT 0x40000100 +#endif + +#ifndef CONFIG_USER_ONLY +void hyperv_enable_vapic_recommended(bool val); +void hyperv_enable_relaxed_timing(bool val); +void hyperv_set_spinlock_retries(int val); +#else +static inline void hyperv_enable_vapic_recommended(bool val) { } +static inline void hyperv_enable_relaxed_timing(bool val) { } +static inline void hyperv_set_spinlock_retries(int val) { } +#endif + +bool hyperv_enabled(void); +bool hyperv_hypercall_available(void); +bool hyperv_vapic_recommended(void); +bool hyperv_relaxed_timing_enabled(void); +int hyperv_get_spinlock_retries(void); + +#endif /* QEMU_HW_HYPERV_H */ |