blob: 78133deb4b64d91e482c6c3b1579ce099f1ee1b5 [file] [log] [blame]
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -05001#
2# KVM configuration
3#
4
Avi Kivity0ba12d12009-05-21 16:45:19 +03005source "virt/kvm/Kconfig"
Avi Kivity5d9b8e32009-01-04 18:04:18 +02006
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -05007menuconfig 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
Hollis Blanchard74ef7402008-11-07 13:15:13 -060020 bool
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -050021 select PREEMPT_NOTIFIERS
22 select ANON_INODES
Hollis Blanchard74ef7402008-11-07 13:15:13 -060023
Alexander Grafc14dea02010-04-16 00:11:41 +020024config KVM_BOOK3S_HANDLER
25 bool
26
Alexander Graf4f841392010-04-16 00:11:58 +020027config KVM_BOOK3S_32_HANDLER
28 bool
29 select KVM_BOOK3S_HANDLER
Paul Mackerrasde56a942011-06-29 00:21:34 +000030 select KVM_MMIO
Alexander Graf4f841392010-04-16 00:11:58 +020031
Alexander Grafc4f9c772009-10-30 05:47:24 +000032config KVM_BOOK3S_64_HANDLER
33 bool
Alexander Grafc14dea02010-04-16 00:11:41 +020034 select KVM_BOOK3S_HANDLER
Alexander Grafc4f9c772009-10-30 05:47:24 +000035
Paul Mackerrasde56a942011-06-29 00:21:34 +000036config KVM_BOOK3S_PR
37 bool
38 select KVM_MMIO
39
Alexander Graf4f841392010-04-16 00:11:58 +020040config KVM_BOOK3S_32
41 tristate "KVM support for PowerPC book3s_32 processors"
42 depends on EXPERIMENTAL && PPC_BOOK3S_32 && !SMP && !PTE_64BIT
43 select KVM
44 select KVM_BOOK3S_32_HANDLER
Paul Mackerrasde56a942011-06-29 00:21:34 +000045 select KVM_BOOK3S_PR
Alexander Graf4f841392010-04-16 00:11:58 +020046 ---help---
47 Support running unmodified book3s_32 guest kernels
48 in virtual machines on book3s_32 host processors.
49
50 This module provides access to the hardware capabilities through
51 a character device node named /dev/kvm.
52
53 If unsure, say N.
54
Alexander Grafc4f9c772009-10-30 05:47:24 +000055config KVM_BOOK3S_64
56 tristate "KVM support for PowerPC book3s_64 processors"
Alexander Graf00c3a372010-04-16 00:11:42 +020057 depends on EXPERIMENTAL && PPC_BOOK3S_64
Alexander Grafc4f9c772009-10-30 05:47:24 +000058 select KVM_BOOK3S_64_HANDLER
Paul Mackerrasde56a942011-06-29 00:21:34 +000059 select KVM
Alexander Grafc4f9c772009-10-30 05:47:24 +000060 ---help---
61 Support running unmodified book3s_64 and book3s_32 guest kernels
62 in virtual machines on book3s_64 host processors.
63
64 This module provides access to the hardware capabilities through
65 a character device node named /dev/kvm.
66
67 If unsure, say N.
68
Paul Mackerrasde56a942011-06-29 00:21:34 +000069config KVM_BOOK3S_64_HV
Paul Mackerras9e368f22011-06-29 00:40:08 +000070 bool "KVM support for POWER7 and PPC970 using hypervisor mode in host"
Paul Mackerrasde56a942011-06-29 00:21:34 +000071 depends on KVM_BOOK3S_64
72 ---help---
73 Support running unmodified book3s_64 guest kernels in
Paul Mackerras9e368f22011-06-29 00:40:08 +000074 virtual machines on POWER7 and PPC970 processors that have
75 hypervisor mode available to the host.
Paul Mackerrasde56a942011-06-29 00:21:34 +000076
77 If you say Y here, KVM will use the hardware virtualization
78 facilities of POWER7 (and later) processors, meaning that
79 guest operating systems will run at full hardware speed
80 using supervisor and user modes. However, this also means
81 that KVM is not usable under PowerVM (pHyp), is only usable
Paul Mackerras9e368f22011-06-29 00:40:08 +000082 on POWER7 (or later) processors and PPC970-family processors,
83 and cannot emulate a different processor from the host processor.
Paul Mackerrasde56a942011-06-29 00:21:34 +000084
85 If unsure, say N.
86
87config KVM_BOOK3S_64_PR
88 def_bool y
89 depends on KVM_BOOK3S_64 && !KVM_BOOK3S_64_HV
90 select KVM_BOOK3S_PR
91
Hollis Blanchard74ef7402008-11-07 13:15:13 -060092config KVM_440
93 bool "KVM support for PowerPC 440 processors"
94 depends on EXPERIMENTAL && 44x
95 select KVM
Paul Mackerrasde56a942011-06-29 00:21:34 +000096 select KVM_MMIO
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -050097 ---help---
Hollis Blanchard74ef7402008-11-07 13:15:13 -060098 Support running unmodified 440 guest kernels in virtual machines on
99 440 host processors.
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -0500100
101 This module provides access to the hardware capabilities through
102 a character device node named /dev/kvm.
103
104 If unsure, say N.
105
Hollis Blanchard73e75b42008-12-02 15:51:57 -0600106config KVM_EXIT_TIMING
107 bool "Detailed exit timing"
Alexander Grafe1f829b2009-12-20 22:24:06 +0100108 depends on KVM_440 || KVM_E500
Hollis Blanchard73e75b42008-12-02 15:51:57 -0600109 ---help---
110 Calculate elapsed time for every exit/enter cycle. A per-vcpu
111 report is available in debugfs kvm/vm#_vcpu#_timing.
112 The overhead is relatively small, however it is not recommended for
113 production environments.
114
115 If unsure, say N.
116
Hollis Blanchardbc8080c2009-01-03 16:23:10 -0600117config KVM_E500
118 bool "KVM support for PowerPC E500 processors"
119 depends on EXPERIMENTAL && E500
120 select KVM
Paul Mackerrasde56a942011-06-29 00:21:34 +0000121 select KVM_MMIO
Hollis Blanchardbc8080c2009-01-03 16:23:10 -0600122 ---help---
123 Support running unmodified E500 guest kernels in virtual machines on
124 E500 host processors.
125
126 This module provides access to the hardware capabilities through
127 a character device node named /dev/kvm.
128
129 If unsure, say N.
130
Michael S. Tsirkin3a4d5c92010-01-14 06:17:27 +0000131source drivers/vhost/Kconfig
Hollis Blanchardbbf45ba2008-04-16 23:28:09 -0500132
133endif # VIRTUALIZATION