Merge tag 'kbuild-v5.8-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy...
[linux-block.git] / arch / mips / kvm / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 #
3 # KVM configuration
4 #
5 source "virt/kvm/Kconfig"
6
7 menuconfig VIRTUALIZATION
8         bool "Virtualization"
9         help
10           Say Y here to get to see options for using your Linux host to run
11           other operating systems inside virtual machines (guests).
12           This option alone does not add any kernel code.
13
14           If you say N, all options in this submenu will be skipped and disabled.
15
16 if VIRTUALIZATION
17
18 config KVM
19         tristate "Kernel-based Virtual Machine (KVM) support"
20         depends on HAVE_KVM
21         depends on MIPS_FP_SUPPORT
22         select EXPORT_UASM
23         select PREEMPT_NOTIFIERS
24         select KVM_GENERIC_DIRTYLOG_READ_PROTECT
25         select HAVE_KVM_EVENTFD
26         select HAVE_KVM_VCPU_ASYNC_IOCTL
27         select KVM_MMIO
28         select MMU_NOTIFIER
29         select SRCU
30         help
31           Support for hosting Guest kernels.
32
33 choice
34         prompt "Virtualization mode"
35         depends on KVM
36         default KVM_MIPS_TE
37
38 config KVM_MIPS_TE
39         bool "Trap & Emulate"
40         help
41           Use trap and emulate to virtualize 32-bit guests in user mode. This
42           does not require any special hardware Virtualization support beyond
43           standard MIPS32/64 r2 or later, but it does require the guest kernel
44           to be configured with CONFIG_KVM_GUEST=y so that it resides in the
45           user address segment.
46
47 config KVM_MIPS_VZ
48         bool "MIPS Virtualization (VZ) ASE"
49         help
50           Use the MIPS Virtualization (VZ) ASE to virtualize guests. This
51           supports running unmodified guest kernels (with CONFIG_KVM_GUEST=n),
52           but requires hardware support.
53
54 endchoice
55
56 config KVM_MIPS_DYN_TRANS
57         bool "KVM/MIPS: Dynamic binary translation to reduce traps"
58         depends on KVM_MIPS_TE
59         default y
60         help
61           When running in Trap & Emulate mode patch privileged
62           instructions to reduce the number of traps.
63
64           If unsure, say Y.
65
66 config KVM_MIPS_DEBUG_COP0_COUNTERS
67         bool "Maintain counters for COP0 accesses"
68         depends on KVM
69         help
70           Maintain statistics for Guest COP0 accesses.
71           A histogram of COP0 accesses is printed when the VM is
72           shutdown.
73
74           If unsure, say N.
75
76 endif # VIRTUALIZATION