blob: 8af0792dfd67b3dd15da26c5e4344e4663c95dcc [file] [log] [blame]
Randy Dunlap27fb7f02010-03-05 13:44:18 -08001menu "Xen driver support"
2 depends on XEN
3
Jeremy Fitzhardinge17758262008-04-02 10:54:13 -07004config XEN_BALLOON
5 bool "Xen memory balloon driver"
Jeremy Fitzhardinge17758262008-04-02 10:54:13 -07006 default y
7 help
8 The balloon driver allows the Xen domain to request more memory from
9 the system to expand the domain's memory allocation, or alternatively
10 return unneeded memory to the system.
11
12config XEN_SCRUB_PAGES
13 bool "Scrub pages before returning them to system"
14 depends on XEN_BALLOON
15 default y
16 help
17 Scrub pages before returning them to the system for reuse by
18 other domains. This makes sure that any confidential data
19 is not accidentally visible to other domains. Is it more
20 secure, but slightly less efficient.
21 If in doubt, say yes.
Alex Zeffertt1107ba82009-01-07 18:07:11 -080022
Ian Campbellf7116282009-02-06 19:21:19 -080023config XEN_DEV_EVTCHN
24 tristate "Xen /dev/xen/evtchn device"
Ian Campbellf7116282009-02-06 19:21:19 -080025 default y
26 help
27 The evtchn driver allows a userspace process to triger event
28 channels and to receive notification of an event channel
29 firing.
30 If in doubt, say yes.
31
Ian Campbelldf660252009-02-09 12:05:51 -080032config XEN_BACKEND
Jeremy Fitzhardinge329620a2009-03-21 23:29:34 -070033 bool "Backend driver support"
Ian Campbelldf660252009-02-09 12:05:51 -080034 depends on XEN_DOM0
35 default y
36 help
37 Support for backend device drivers that provide I/O services
38 to other virtual machines.
39
Alex Zeffertt1107ba82009-01-07 18:07:11 -080040config XENFS
41 tristate "Xen filesystem"
Alex Zeffertt1107ba82009-01-07 18:07:11 -080042 default y
43 help
44 The xen filesystem provides a way for domains to share
45 information with each other and with the hypervisor.
46 For example, by reading and writing the "xenbus" file, guests
47 may pass arbitrary information to the initial domain.
48 If in doubt, say yes.
49
50config XEN_COMPAT_XENFS
51 bool "Create compatibility mount point /proc/xen"
52 depends on XENFS
53 default y
54 help
55 The old xenstore userspace tools expect to find "xenbus"
56 under /proc/xen, but "xenbus" is now found at the root of the
57 xenfs filesystem. Selecting this causes the kernel to create
Matt LaPlante692105b2009-01-26 11:12:25 +010058 the compatibility mount point /proc/xen if it is running on
Alex Zeffertt1107ba82009-01-07 18:07:11 -080059 a xen platform.
60 If in doubt, say yes.
61
Jeremy Fitzhardingecff7e812009-03-10 14:39:59 -070062config XEN_SYS_HYPERVISOR
63 bool "Create xen entries under /sys/hypervisor"
Randy Dunlap27fb7f02010-03-05 13:44:18 -080064 depends on SYSFS
Jeremy Fitzhardingecff7e812009-03-10 14:39:59 -070065 select SYS_HYPERVISOR
66 default y
67 help
68 Create entries under /sys/hypervisor describing the Xen
69 hypervisor environment. When running native or in another
70 virtual environment, /sys/hypervisor will still be present,
Randy Dunlap27fb7f02010-03-05 13:44:18 -080071 but will have no xen contents.
72
Ian Campbell2de06cc2009-02-09 12:05:51 -080073config XEN_XENBUS_FRONTEND
Linus Torvalds9c4bc1c2011-01-13 18:46:48 -080074 tristate
75
Gerd Hoffmannab315232010-12-14 18:40:46 +000076config XEN_GNTDEV
77 tristate "userspace grant access device driver"
78 depends on XEN
Stefano Stabellini1f169f62011-02-10 12:08:21 +000079 default m
Gerd Hoffmannab315232010-12-14 18:40:46 +000080 select MMU_NOTIFIER
81 help
82 Allows userspace processes to use grants.
Ian Campbell6bac7f92010-12-10 14:39:15 +000083
Daniel De Graafdd314052011-02-07 17:23:05 -050084config XEN_GRANT_DEV_ALLOC
85 tristate "User-space grant reference allocator driver"
86 depends on XEN
Stefano Stabellini1f169f62011-02-10 12:08:21 +000087 default m
Daniel De Graafdd314052011-02-07 17:23:05 -050088 help
89 Allows userspace processes to create pages with access granted
90 to other domains. This can be used to implement frontend drivers
91 or as part of an inter-domain shared memory channel.
92
Stefano Stabellini183d03c2010-05-17 17:08:21 +010093config XEN_PLATFORM_PCI
94 tristate "xen platform pci device driver"
Konrad Rzeszutek Wilke528db52011-01-12 12:58:06 -050095 depends on XEN_PVHVM && PCI
Stefano Stabellini183d03c2010-05-17 17:08:21 +010096 default m
97 help
98 Driver for the Xen PCI Platform device: it is responsible for
99 initializing xenbus and grant_table when running in a Xen HVM
100 domain. As a consequence this driver is required to run any Xen PV
101 frontend on Xen HVM.
Linus Torvalds26f0cf92010-08-12 09:09:41 -0700102
Konrad Rzeszutek Wilkb0971862010-05-11 10:05:49 -0400103config SWIOTLB_XEN
104 def_bool y
Konrad Rzeszutek Wilk27756092010-10-08 11:06:20 -0400105 depends on PCI
106 select SWIOTLB
Konrad Rzeszutek Wilkb0971862010-05-11 10:05:49 -0400107
Konrad Rzeszutek Wilk30edc142009-10-13 17:22:20 -0400108config XEN_PCIDEV_BACKEND
109 tristate "Xen PCI-device backend driver"
110 depends on PCI && X86 && XEN
111 depends on XEN_BACKEND
112 help
113 The PCI device backend driver allows the kernel to export arbitrary
114 PCI devices to other guests. If you select this to be a module, you
115 will need to make sure no other driver has bound to the device(s)
116 you want to make visible to other guests.
117
118choice
119 prompt "PCI Backend Mode"
120 depends on XEN_PCIDEV_BACKEND
121
122config XEN_PCIDEV_BACKEND_VPCI
123 bool "Virtual PCI"
124 help
125 This PCI Backend hides the true PCI topology and makes the frontend
126 think there is a single PCI bus with only the exported devices on it.
127 For example, a device at 03:05.0 will be re-assigned to 00:00.0. A
128 second device at 02:1a.1 will be re-assigned to 00:01.1.
129
130config XEN_PCIDEV_BACKEND_PASS
131 bool "Passthrough"
132 help
133 This PCI Backend provides a real view of the PCI topology to the
134 frontend (for example, a device at 06:01.b will still appear at
135 06:01.b to the frontend). This is similar to how Xen 2.0.x exposed
136 PCI devices to its driver domains. This may be required for drivers
137 which depend on finding their hardward in certain bus/slot
138 locations.
139
140endchoice
141
142config XEN_PCIDEV_BE_DEBUG
143 bool "Xen PCI Backend Debugging"
144 depends on XEN_PCIDEV_BACKEND
145 default n
146 help
147 Allows to observe all of the traffic from the frontend/backend
148 when reading and writting to the configuration registers.
149 If in doubt, say no.
150
Randy Dunlap27fb7f02010-03-05 13:44:18 -0800151endmenu