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 select CMA 76 ---help--- 77 Support running unmodified book3s_64 guest kernels in 78 virtual machines on POWER7 and PPC970 processors that have 79 hypervisor mode available to the host. 80 81 If you say Y here, KVM will use the hardware virtualization 82 facilities of POWER7 (and later) processors, meaning that 83 guest operating systems will run at full hardware speed 84 using supervisor and user modes. However, this also means 85 that KVM is not usable under PowerVM (pHyp), is only usable 86 on POWER7 (or later) processors and PPC970-family processors, 87 and cannot emulate a different processor from the host processor. 88 89 If unsure, say N. 90 91config KVM_BOOK3S_64_PR 92 def_bool y 93 depends on KVM_BOOK3S_64 && !KVM_BOOK3S_64_HV 94 select KVM_BOOK3S_PR 95 96config KVM_BOOKE_HV 97 bool 98 99config KVM_440 100 bool "KVM support for PowerPC 440 processors" 101 depends on 44x 102 select KVM 103 select KVM_MMIO 104 ---help--- 105 Support running unmodified 440 guest kernels in virtual machines on 106 440 host processors. 107 108 This module provides access to the hardware capabilities through 109 a character device node named /dev/kvm. 110 111 If unsure, say N. 112 113config KVM_EXIT_TIMING 114 bool "Detailed exit timing" 115 depends on KVM_440 || KVM_E500V2 || KVM_E500MC 116 ---help--- 117 Calculate elapsed time for every exit/enter cycle. A per-vcpu 118 report is available in debugfs kvm/vm#_vcpu#_timing. 119 The overhead is relatively small, however it is not recommended for 120 production environments. 121 122 If unsure, say N. 123 124config KVM_E500V2 125 bool "KVM support for PowerPC E500v2 processors" 126 depends on E500 && !PPC_E500MC 127 select KVM 128 select KVM_MMIO 129 select MMU_NOTIFIER 130 ---help--- 131 Support running unmodified E500 guest kernels in virtual machines on 132 E500v2 host processors. 133 134 This module provides access to the hardware capabilities through 135 a character device node named /dev/kvm. 136 137 If unsure, say N. 138 139config KVM_E500MC 140 bool "KVM support for PowerPC E500MC/E5500/E6500 processors" 141 depends on PPC_E500MC 142 select KVM 143 select KVM_MMIO 144 select KVM_BOOKE_HV 145 select MMU_NOTIFIER 146 ---help--- 147 Support running unmodified E500MC/E5500/E6500 guest kernels in 148 virtual machines on E500MC/E5500/E6500 host processors. 149 150 This module provides access to the hardware capabilities through 151 a character device node named /dev/kvm. 152 153 If unsure, say N. 154 155config KVM_MPIC 156 bool "KVM in-kernel MPIC emulation" 157 depends on KVM && E500 158 select HAVE_KVM_IRQCHIP 159 select HAVE_KVM_IRQ_ROUTING 160 select HAVE_KVM_MSI 161 help 162 Enable support for emulating MPIC devices inside the 163 host kernel, rather than relying on userspace to emulate. 164 Currently, support is limited to certain versions of 165 Freescale's MPIC implementation. 166 167config KVM_XICS 168 bool "KVM in-kernel XICS emulation" 169 depends on KVM_BOOK3S_64 && !KVM_MPIC 170 ---help--- 171 Include support for the XICS (eXternal Interrupt Controller 172 Specification) interrupt controller architecture used on 173 IBM POWER (pSeries) servers. 174 175source drivers/vhost/Kconfig 176 177endif # VIRTUALIZATION 178