blob: d62f1d8ed8fee4a012af590e811f5793df260842 [file] [log] [blame]
David Woodhouse61491cf2022-12-03 09:51:13 -08001/*
2 * Xen HVM emulation support in KVM
3 *
4 * Copyright © 2019 Oracle and/or its affiliates. All rights reserved.
5 * Copyright © 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
6 *
7 * This work is licensed under the terms of the GNU GPL, version 2 or later.
8 * See the COPYING file in the top-level directory.
9 *
10 */
11
12#ifndef QEMU_I386_KVM_XEN_EMU_H
13#define QEMU_I386_KVM_XEN_EMU_H
14
Joao Martinsf66b8a82022-12-06 10:48:53 +000015#define XEN_HYPERCALL_MSR 0x40000000
16#define XEN_HYPERCALL_MSR_HYPERV 0x40000200
David Woodhouse61491cf2022-12-03 09:51:13 -080017
Joao Martinsf66b8a82022-12-06 10:48:53 +000018#define XEN_CPUID_SIGNATURE 0
19#define XEN_CPUID_VENDOR 1
20#define XEN_CPUID_HVM_MSR 2
21#define XEN_CPUID_TIME 3
22#define XEN_CPUID_HVM 4
23
24#define XEN_VERSION(maj, min) ((maj) << 16 | (min))
25
26int kvm_xen_init(KVMState *s, uint32_t hypercall_msr);
David Woodhouse5e691a92022-12-16 11:05:29 +000027int kvm_xen_init_vcpu(CPUState *cs);
David Woodhouse61491cf2022-12-03 09:51:13 -080028
29#endif /* QEMU_I386_KVM_XEN_EMU_H */