]>
Commit | Line | Data |
---|---|---|
bbf45ba5 HB |
1 | # |
2 | # KVM configuration | |
3 | # | |
4 | ||
0ba12d10 | 5 | source "virt/kvm/Kconfig" |
5d9b8e30 | 6 | |
bbf45ba5 HB |
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 | |
15 | disabled. | |
16 | ||
17 | if VIRTUALIZATION | |
18 | ||
19 | config KVM | |
74ef740d | 20 | bool |
bbf45ba5 HB |
21 | select PREEMPT_NOTIFIERS |
22 | select ANON_INODES | |
0e673fb6 | 23 | select HAVE_KVM_EVENTFD |
74ef740d | 24 | |
c14dea04 AG |
25 | config KVM_BOOK3S_HANDLER |
26 | bool | |
27 | ||
4f841390 AG |
28 | config KVM_BOOK3S_32_HANDLER |
29 | bool | |
30 | select KVM_BOOK3S_HANDLER | |
de56a948 | 31 | select KVM_MMIO |
4f841390 | 32 | |
c4f9c779 AG |
33 | config KVM_BOOK3S_64_HANDLER |
34 | bool | |
c14dea04 | 35 | select KVM_BOOK3S_HANDLER |
c4f9c779 | 36 | |
7aa79938 | 37 | config KVM_BOOK3S_PR_POSSIBLE |
de56a948 PM |
38 | bool |
39 | select KVM_MMIO | |
9b0cb3c8 | 40 | select MMU_NOTIFIER |
de56a948 | 41 | |
4f841390 AG |
42 | config KVM_BOOK3S_32 |
43 | tristate "KVM support for PowerPC book3s_32 processors" | |
07ff8b53 | 44 | depends on PPC_BOOK3S_32 && !SMP && !PTE_64BIT |
4f841390 AG |
45 | select KVM |
46 | select KVM_BOOK3S_32_HANDLER | |
7aa79938 | 47 | select KVM_BOOK3S_PR_POSSIBLE |
4f841390 AG |
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 | ||
c4f9c779 AG |
57 | config KVM_BOOK3S_64 |
58 | tristate "KVM support for PowerPC book3s_64 processors" | |
07ff8b53 | 59 | depends on PPC_BOOK3S_64 |
c4f9c779 | 60 | select KVM_BOOK3S_64_HANDLER |
de56a948 | 61 | select KVM |
c4f9c779 AG |
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 | ||
de56a948 | 71 | config KVM_BOOK3S_64_HV |
9e368f29 | 72 | bool "KVM support for POWER7 and PPC970 using hypervisor mode in host" |
de56a948 | 73 | depends on KVM_BOOK3S_64 |
342d3db7 | 74 | select MMU_NOTIFIER |
fa61a4e3 | 75 | select CMA |
de56a948 PM |
76 | ---help--- |
77 | Support running unmodified book3s_64 guest kernels in | |
9e368f29 PM |
78 | virtual machines on POWER7 and PPC970 processors that have |
79 | hypervisor mode available to the host. | |
de56a948 PM |
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 | |
9e368f29 PM |
86 | on POWER7 (or later) processors and PPC970-family processors, |
87 | and cannot emulate a different processor from the host processor. | |
de56a948 PM |
88 | |
89 | If unsure, say N. | |
90 | ||
91 | config KVM_BOOK3S_64_PR | |
92 | def_bool y | |
93 | depends on KVM_BOOK3S_64 && !KVM_BOOK3S_64_HV | |
7aa79938 | 94 | select KVM_BOOK3S_PR_POSSIBLE |
de56a948 | 95 | |
d30f6e48 SW |
96 | config KVM_BOOKE_HV |
97 | bool | |
98 | ||
74ef740d HB |
99 | config KVM_440 |
100 | bool "KVM support for PowerPC 440 processors" | |
07ff8b53 | 101 | depends on 44x |
74ef740d | 102 | select KVM |
de56a948 | 103 | select KVM_MMIO |
bbf45ba5 | 104 | ---help--- |
74ef740d HB |
105 | Support running unmodified 440 guest kernels in virtual machines on |
106 | 440 host processors. | |
bbf45ba5 HB |
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 | ||
73e75b41 HB |
113 | config KVM_EXIT_TIMING |
114 | bool "Detailed exit timing" | |
bf7ca4bd | 115 | depends on KVM_440 || KVM_E500V2 || KVM_E500MC |
73e75b41 HB |
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 | ||
bf7ca4bd AG |
124 | config KVM_E500V2 |
125 | bool "KVM support for PowerPC E500v2 processors" | |
07ff8b53 | 126 | depends on E500 && !PPC_E500MC |
bc8080cb | 127 | select KVM |
de56a948 | 128 | select KVM_MMIO |
862d31f7 | 129 | select MMU_NOTIFIER |
bc8080cb HB |
130 | ---help--- |
131 | Support running unmodified E500 guest kernels in virtual machines on | |
bf7ca4bd | 132 | E500v2 host processors. |
bc8080cb HB |
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 | ||
73196cd3 | 139 | config KVM_E500MC |
d9ce6041 | 140 | bool "KVM support for PowerPC E500MC/E5500/E6500 processors" |
07ff8b53 | 141 | depends on PPC_E500MC |
73196cd3 SW |
142 | select KVM |
143 | select KVM_MMIO | |
144 | select KVM_BOOKE_HV | |
862d31f7 | 145 | select MMU_NOTIFIER |
73196cd3 | 146 | ---help--- |
d9ce6041 MC |
147 | Support running unmodified E500MC/E5500/E6500 guest kernels in |
148 | virtual machines on E500MC/E5500/E6500 host processors. | |
73196cd3 SW |
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 | ||
5df554ad SW |
155 | config KVM_MPIC |
156 | bool "KVM in-kernel MPIC emulation" | |
447a03c0 | 157 | depends on KVM && E500 |
de9ba2f3 AG |
158 | select HAVE_KVM_IRQCHIP |
159 | select HAVE_KVM_IRQ_ROUTING | |
160 | select HAVE_KVM_MSI | |
5df554ad SW |
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 | ||
bc5ad3f3 BH |
167 | config 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 | ||
3a4d5c94 | 175 | source drivers/vhost/Kconfig |
bbf45ba5 HB |
176 | |
177 | endif # VIRTUALIZATION |