]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blame - arch/powerpc/kvm/Kconfig
kvm: powerpc: book3s: pr: Rename KVM_BOOK3S_PR to KVM_BOOK3S_PR_POSSIBLE
[mirror_ubuntu-focal-kernel.git] / arch / powerpc / kvm / Kconfig
CommitLineData
bbf45ba5
HB
1#
2# KVM configuration
3#
4
0ba12d10 5source "virt/kvm/Kconfig"
5d9b8e30 6
bbf45ba5
HB
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
74ef740d 20 bool
bbf45ba5
HB
21 select PREEMPT_NOTIFIERS
22 select ANON_INODES
0e673fb6 23 select HAVE_KVM_EVENTFD
74ef740d 24
c14dea04
AG
25config KVM_BOOK3S_HANDLER
26 bool
27
4f841390
AG
28config KVM_BOOK3S_32_HANDLER
29 bool
30 select KVM_BOOK3S_HANDLER
de56a948 31 select KVM_MMIO
4f841390 32
c4f9c779
AG
33config KVM_BOOK3S_64_HANDLER
34 bool
c14dea04 35 select KVM_BOOK3S_HANDLER
c4f9c779 36
7aa79938 37config KVM_BOOK3S_PR_POSSIBLE
de56a948
PM
38 bool
39 select KVM_MMIO
9b0cb3c8 40 select MMU_NOTIFIER
de56a948 41
4f841390
AG
42config 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
57config 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 71config 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
91config 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
96config KVM_BOOKE_HV
97 bool
98
74ef740d
HB
99config 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
113config 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
124config 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 139config 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
155config 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
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
3a4d5c94 175source drivers/vhost/Kconfig
bbf45ba5
HB
176
177endif # VIRTUALIZATION