xref: /openbmc/linux/arch/arm64/kvm/Kconfig (revision 8564d637)
1# SPDX-License-Identifier: GPL-2.0
2#
3# KVM configuration
4#
5
6source "virt/kvm/Kconfig"
7source "virt/lib/Kconfig"
8
9menuconfig VIRTUALIZATION
10	bool "Virtualization"
11	---help---
12	  Say Y here to get to see options for using your Linux host to run
13	  other operating systems inside virtual machines (guests).
14	  This option alone does not add any kernel code.
15
16	  If you say N, all options in this submenu will be skipped and
17	  disabled.
18
19if VIRTUALIZATION
20
21config KVM
22	bool "Kernel-based Virtual Machine (KVM) support"
23	depends on OF
24	select MMU_NOTIFIER
25	select PREEMPT_NOTIFIERS
26	select HAVE_KVM_CPU_RELAX_INTERCEPT
27	select HAVE_KVM_ARCH_TLB_FLUSH_ALL
28	select KVM_MMIO
29	select KVM_ARM_HOST
30	select KVM_GENERIC_DIRTYLOG_READ_PROTECT
31	select SRCU
32	select KVM_VFIO
33	select HAVE_KVM_EVENTFD
34	select HAVE_KVM_IRQFD
35	select KVM_ARM_PMU if HW_PERF_EVENTS
36	select HAVE_KVM_MSI
37	select HAVE_KVM_IRQCHIP
38	select HAVE_KVM_IRQ_ROUTING
39	select IRQ_BYPASS_MANAGER
40	select HAVE_KVM_IRQ_BYPASS
41	select HAVE_KVM_VCPU_RUN_PID_CHANGE
42	select SCHEDSTATS
43	---help---
44	  Support hosting virtualized guest machines.
45	  We don't support KVM with 16K page tables yet, due to the multiple
46	  levels of fake page tables.
47
48	  If unsure, say N.
49
50config KVM_ARM_HOST
51	bool
52	---help---
53	  Provides host support for ARM processors.
54
55config KVM_ARM_PMU
56	bool
57	---help---
58	  Adds support for a virtual Performance Monitoring Unit (PMU) in
59	  virtual machines.
60
61config KVM_INDIRECT_VECTORS
62       def_bool KVM && (HARDEN_BRANCH_PREDICTOR || HARDEN_EL2_VECTORS)
63
64source "drivers/vhost/Kconfig"
65
66endif # VIRTUALIZATION
67