xref: /linux/arch/mips/include/uapi/asm/kvm.h (revision 5070158804b5339c71809f5e673cea1cfacd804d)
1 /*
2 * This file is subject to the terms and conditions of the GNU General Public
3 * License.  See the file "COPYING" in the main directory of this archive
4 * for more details.
5 *
6 * Copyright (C) 2012  MIPS Technologies, Inc.  All rights reserved.
7 * Authors: Sanjay Lal <sanjayl@kymasys.com>
8 */
9 
10 #ifndef __LINUX_KVM_MIPS_H
11 #define __LINUX_KVM_MIPS_H
12 
13 #include <linux/types.h>
14 
15 #define __KVM_MIPS
16 
17 #define N_MIPS_COPROC_REGS      32
18 #define N_MIPS_COPROC_SEL   	8
19 
20 /* for KVM_GET_REGS and KVM_SET_REGS */
21 struct kvm_regs {
22 	__u32 gprs[32];
23 	__u32 hi;
24 	__u32 lo;
25 	__u32 pc;
26 
27 	__u32 cp0reg[N_MIPS_COPROC_REGS][N_MIPS_COPROC_SEL];
28 };
29 
30 /* for KVM_GET_SREGS and KVM_SET_SREGS */
31 struct kvm_sregs {
32 };
33 
34 /* for KVM_GET_FPU and KVM_SET_FPU */
35 struct kvm_fpu {
36 };
37 
38 struct kvm_debug_exit_arch {
39 };
40 
41 /* for KVM_SET_GUEST_DEBUG */
42 struct kvm_guest_debug_arch {
43 };
44 
45 struct kvm_mips_interrupt {
46 	/* in */
47 	__u32 cpu;
48 	__u32 irq;
49 };
50 
51 /* definition of registers in kvm_run */
52 struct kvm_sync_regs {
53 };
54 
55 #endif /* __LINUX_KVM_MIPS_H */
56