blob: f591026347a5083b58c4c97dcec052026c337b7e [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Christoffer Dall749cf76c2013-01-20 18:28:06 -05002#
3# KVM configuration
4#
5
6source "virt/kvm/Kconfig"
Eric Auger24124052017-10-27 15:28:31 +01007source "virt/lib/Kconfig"
Christoffer Dall749cf76c2013-01-20 18:28:06 -05008
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"
Christoffer Dall662d9712015-03-11 14:21:31 +010023 depends on MMU && OF
Christoffer Dall749cf76c2013-01-20 18:28:06 -050024 select PREEMPT_NOTIFIERS
Arnd Bergmann4a5d69b2015-10-12 15:22:31 +020025 select ARM_GIC
Marc Zyngier7129a9d2017-10-27 15:28:33 +010026 select ARM_GIC_V3
27 select ARM_GIC_V3_ITS
Marc Zyngier58d5ec82013-10-08 18:38:13 +010028 select HAVE_KVM_CPU_RELAX_INTERCEPT
Mario Smarduch72fc36b2015-01-15 15:58:55 -080029 select HAVE_KVM_ARCH_TLB_FLUSH_ALL
Christoffer Dall749cf76c2013-01-20 18:28:06 -050030 select KVM_MMIO
31 select KVM_ARM_HOST
Mario Smarduch53c810c2015-01-15 15:58:57 -080032 select KVM_GENERIC_DIRTYLOG_READ_PROTECT
Pranith Kumar83fe27e2014-12-05 11:24:45 -050033 select SRCU
Christoffer Dall662d9712015-03-11 14:21:31 +010034 select MMU_NOTIFIER
Kim Phillips88895832015-06-05 16:21:49 +010035 select KVM_VFIO
Eric Auger174178f2015-03-04 11:14:36 +010036 select HAVE_KVM_EVENTFD
37 select HAVE_KVM_IRQFD
Eric Auger180ae7b2016-07-22 16:20:41 +000038 select HAVE_KVM_IRQCHIP
39 select HAVE_KVM_IRQ_ROUTING
Vladimir Murzin29885092016-11-02 11:55:34 +000040 select HAVE_KVM_MSI
Eric Auger24124052017-10-27 15:28:31 +010041 select IRQ_BYPASS_MANAGER
42 select HAVE_KVM_IRQ_BYPASS
Christoffer Dall662d9712015-03-11 14:21:31 +010043 depends on ARM_VIRT_EXT && ARM_LPAE && ARM_ARCH_TIMER
Christoffer Dall749cf76c2013-01-20 18:28:06 -050044 ---help---
Christoffer Dall662d9712015-03-11 14:21:31 +010045 Support hosting virtualized guest machines.
Christoffer Dall749cf76c2013-01-20 18:28:06 -050046
47 This module provides access to the hardware capabilities through
48 a character device node named /dev/kvm.
49
50 If unsure, say N.
51
52config KVM_ARM_HOST
Christoffer Dall662d9712015-03-11 14:21:31 +010053 bool
Christoffer Dall749cf76c2013-01-20 18:28:06 -050054 ---help---
55 Provides host support for ARM processors.
56
Masahiro Yamada8636a1f2018-12-11 20:01:04 +090057source "drivers/vhost/Kconfig"
Wei Huang75755c62015-10-09 10:08:43 -050058
Christoffer Dall749cf76c2013-01-20 18:28:06 -050059endif # VIRTUALIZATION