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