1# 2# KVM configuration 3# 4 5source "virt/kvm/Kconfig" 6 7menuconfig 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 15 disabled. 16 17if VIRTUALIZATION 18 19config KVM 20 bool 21 select PREEMPT_NOTIFIERS 22 select ANON_INODES 23 select HAVE_KVM_EVENTFD 24 25config KVM_BOOK3S_HANDLER 26 bool 27 28config KVM_BOOK3S_32_HANDLER 29 bool 30 select KVM_BOOK3S_HANDLER 31 select KVM_MMIO 32 33config KVM_BOOK3S_64_HANDLER 34 bool 35 select KVM_BOOK3S_HANDLER 36 37config KVM_BOOK3S_PR 38 bool 39 select KVM_MMIO 40 select MMU_NOTIFIER 41 42config KVM_BOOK3S_32 43 tristate "KVM support for PowerPC book3s_32 processors" 44 depends on PPC_BOOK3S_32 && !SMP && !PTE_64BIT 45 select KVM 46 select KVM_BOOK3S_32_HANDLER 47 select KVM_BOOK3S_PR 48 ---help--- 49 Support running unmodified book3s_32 guest kernels 50 in virtual machines on book3s_32 host processors. 51 52 This module provides access to the hardware capabilities through 53 a character device node named /dev/kvm. 54 55 If unsure, say N. 56 57config KVM_BOOK3S_64 58 tristate "KVM support for PowerPC book3s_64 processors" 59 depends on PPC_BOOK3S_64 60 select KVM_BOOK3S_64_HANDLER 61 select KVM 62 ---help--- 63 Support running unmodified book3s_64 and book3s_32 guest kernels 64 in virtual machines on book3s_64 host processors. 65 66 This module provides access to the hardware capabilities through 67 a character device node named /dev/kvm. 68 69 If unsure, say N. 70 71config KVM_BOOK3S_64_HV 72 bool "KVM support for POWER7 and PPC970 using hypervisor mode in host" 73 depends on KVM_BOOK3S_64 74 select MMU_NOTIFIER 75 ---help--- 76 Support running unmodified book3s_64 guest kernels in 77 virtual machines on POWER7 and PPC970 processors that have 78 hypervisor mode available to the host. 79 80 If you say Y here, KVM will use the hardware virtualization 81 facilities of POWER7 (and later) processors, meaning that 82 guest operating systems will run at full hardware speed 83 using supervisor and user modes. However, this also means 84 that KVM is not usable under PowerVM (pHyp), is only usable 85 on POWER7 (or later) processors and PPC970-family processors, 86 and cannot emulate a different processor from the host processor. 87 88 If unsure, say N. 89 90config KVM_BOOK3S_64_PR 91 def_bool y 92 depends on KVM_BOOK3S_64 && !KVM_BOOK3S_64_HV 93 select KVM_BOOK3S_PR 94 95config KVM_BOOKE_HV 96 bool 97 98config KVM_440 99 bool "KVM support for PowerPC 440 processors" 100 depends on 44x 101 select KVM 102 select KVM_MMIO 103 ---help--- 104 Support running unmodified 440 guest kernels in virtual machines on 105 440 host processors. 106 107 This module provides access to the hardware capabilities through 108 a character device node named /dev/kvm. 109 110 If unsure, say N. 111 112config KVM_EXIT_TIMING 113 bool "Detailed exit timing" 114 depends on KVM_440 || KVM_E500V2 || KVM_E500MC 115 ---help--- 116 Calculate elapsed time for every exit/enter cycle. A per-vcpu 117 report is available in debugfs kvm/vm#_vcpu#_timing. 118 The overhead is relatively small, however it is not recommended for 119 production environments. 120 121 If unsure, say N. 122 123config KVM_E500V2 124 bool "KVM support for PowerPC E500v2 processors" 125 depends on E500 && !PPC_E500MC 126 select KVM 127 select KVM_MMIO 128 select MMU_NOTIFIER 129 ---help--- 130 Support running unmodified E500 guest kernels in virtual machines on 131 E500v2 host processors. 132 133 This module provides access to the hardware capabilities through 134 a character device node named /dev/kvm. 135 136 If unsure, say N. 137 138config KVM_E500MC 139 bool "KVM support for PowerPC E500MC/E5500/E6500 processors" 140 depends on PPC_E500MC 141 select KVM 142 select KVM_MMIO 143 select KVM_BOOKE_HV 144 select MMU_NOTIFIER 145 ---help--- 146 Support running unmodified E500MC/E5500/E6500 guest kernels in 147 virtual machines on E500MC/E5500/E6500 host processors. 148 149 This module provides access to the hardware capabilities through 150 a character device node named /dev/kvm. 151 152 If unsure, say N. 153 154config KVM_MPIC 155 bool "KVM in-kernel MPIC emulation" 156 depends on KVM && E500 157 select HAVE_KVM_IRQCHIP 158 select HAVE_KVM_IRQ_ROUTING 159 select HAVE_KVM_MSI 160 help 161 Enable support for emulating MPIC devices inside the 162 host kernel, rather than relying on userspace to emulate. 163 Currently, support is limited to certain versions of 164 Freescale's MPIC implementation. 165 166config KVM_XICS 167 bool "KVM in-kernel XICS emulation" 168 depends on KVM_BOOK3S_64 && !KVM_MPIC 169 ---help--- 170 Include support for the XICS (eXternal Interrupt Controller 171 Specification) interrupt controller architecture used on 172 IBM POWER (pSeries) servers. 173 174source drivers/vhost/Kconfig 175 176endif # VIRTUALIZATION 177