Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


337f590939fcc5b01fcf686f52533e91bebad23c
[palacios-OLD.git] / Kconfig
1 mainmenu "Palacios VMM Configuration"
2
3 menu "Target Configuration"
4
5
6 config KITTEN
7         bool "Set defaults needed for the Kitten OS"
8         default y
9         help
10           This enables the necesary options to compile Palacios with Kitten
11
12
13 config CRAY_XT
14         bool "Red Storm (Cray XT3/XT4)"
15         help
16           Support for Cray XT3 and XT4 systems.
17
18 config SVM
19         bool "AMD SVM Support"
20         default y
21         help
22           Compile with support for AMD SVM
23
24 config VMX
25         bool "Intel VMX Support"
26         default y
27         help 
28           Compile with support for Intel VMX
29
30
31 config MULTITHREAD_OS
32         bool "Compile for a multi threaded OS"
33         default y
34         help 
35           This allows Palacios to use OS thread mechanisms
36
37
38 config MAX_CPUS
39         int "Maximum number of cpus"
40         range 1 255
41         default "16"
42         help 
43           Specifies the maximum number of hardware cpus Palacios can support
44
45           For uniprocessor environments, set this to 1
46
47
48 config SOCKET
49         bool "Include Network Socket Support"
50         default y
51         help 
52           Enable networking support in Palacios
53
54
55
56
57 config TELEMETRY
58         bool "Enable VMM telemetry support"
59         default n
60         help 
61           Enable the telemetry framework in Palacios
62           -----
63           This is a framwork that allows components of palacios to record 
64           information that is periodically reported to the log output.
65           Telemetry is automatically collected for vmexits. Subsystem telemetry 
66           is configured separately
67
68
69 config SHADOW_PAGING_TELEMETRY
70         bool "Enable Shadow Paging Telemetry"
71         default y
72         depends on TELEMETRY
73         help
74           Enable telemetry information for shadow paging 
75
76
77 config PASSTHROUGH_VIDEO
78         bool "Enable Passthrough Video"
79         default y
80         help 
81           Configures Palacios to map a guest's framebuffer directly 
82           to the hardware framebuffer
83
84 config INSTRUMENT_VMM
85         bool "Enable VMM instrumentation"
86         default n
87         help 
88           Enable the instrumentation framework
89           --------
90           This is much heavier weight than profiling
91
92 config EXPERIMENTAL
93         bool "Enable Experimental options"
94         default n
95         help 
96           This allows the selection of experimental features. This includes incomplete or unreviewed code. 
97           Only enable this feature if you are working on the features in question. 
98           IMPORTANT: Non-experimental code MUST NOT use, require, or rely on experimental features. 
99           Any code that violates this will be immediately deleted without warning. 
100           -- 
101           The purpose of this option is to allow features under development to be committed to the mainline
102           to more easily track changes and provide access to multiple developers
103
104 config VNET
105         depends on EXPERIMENTAL
106         bool "Enable Vnet in Palacios"
107         default n
108         help
109           Enable the Vnet in Palacios
110
111 endmenu
112
113
114 source "Kconfig.stdlibs"
115
116
117
118 menu "Virtual Paging"
119
120 config SHADOW_PAGING
121         bool "Enable shadow paging"
122         default y
123         help 
124            Enables shadow paging for virtual machines
125
126
127 config SHADOW_PAGING_VTLB
128         bool "Virtual TLB"
129         default y
130         depends on SHADOW_PAGING
131         help 
132            Enables Virtual TLB implemenation for shadow paging
133
134
135 config DEBUG_SHDW_PG_VTLB
136         bool "Enable VTLB debugging"
137         default n
138         depends on SHADOW_PAGING_VTLB
139         help
140           Enables debugging messages for VTLB implementation
141
142 endmenu
143
144
145 menu "Symbiotic Functions"
146
147 config SYMBIOTIC
148         bool "Enable Symbiotic Functionality"
149         default n
150         help 
151           Enable Symbiotic components of the VMM
152
153
154
155 config SYMCALL
156         bool "Symbiotic upcalls"
157         default n
158         depends on SYMBIOTIC && EXPERIMENTAL
159         help
160           Enables the Symbiotic upcall interface
161
162 config SYMMOD
163         bool "Symbiotic Modules"
164         default n
165         depends on SYMBIOTIC && EXPERIMENTAL
166         help
167           Enable Symbiotic module loading
168
169
170 config SWAPBYPASS
171         bool "SwapBypass"
172         default n
173         depends on SYMBIOTIC && SYMCALL && EXPERIMENTAL
174         help 
175           This enables the SwapBypass architecture
176
177 config SWAPBYPASS_TELEMETRY
178         bool "Enable SwapBypass Telemetry"
179         default n
180         depends on TELEMETRY && SWAPBYPASS
181         help 
182           Enable the telemetry information for the SwapBypass subsystem
183
184
185 endmenu
186
187
188
189 menu "Debug configuration"
190
191 config CONFIG_DEBUG_INFO
192         bool "Compile with Debug information"
193         default n
194         help 
195          This adds the -g flag to the compilation flags
196
197
198 ## Is unwind information useful
199
200 config DEBUG_ON
201         bool "Enable Debugging"
202         default y
203         help
204           This turns on debugging support
205
206
207 config DEBUG_SHADOW_PAGING
208         bool "Shadow paging"
209         default n
210         depends on DEBUG_ON
211         help 
212           This turns on debugging for the shadow paging system
213
214
215 config DEBUG_NESTED_PAGING
216         bool "Nested paging"
217         default n
218         depends on DEBUG_ON
219         help 
220           This turns on debugging for the nested paging system
221
222
223 config DEBUG_CTRL_REGS
224         bool "Control registers"
225         default n
226         depends on DEBUG_ON
227         help 
228           This turns on debugging for the control register handlers
229
230
231 config DEBUG_INTERRUPTS
232         bool "Interrupts"
233         default n
234         depends on DEBUG_ON
235         help 
236           This turns on debugging for the interrupt system
237
238
239
240 config DEBUG_IO
241         bool "IO"
242         default n
243         depends on DEBUG_ON
244         help 
245           This turns on debugging for the IO handlers
246
247
248 config DEBUG_EMULATOR
249         bool "Instruction Emulator"
250         default n
251         depends on DEBUG_ON
252         help 
253           This turns on debugging for the Instruction Emulator
254
255
256 config DEBUG_XED
257         bool "XED"
258         default n
259         depends on DEBUG_ON
260         help 
261           This turns on debugging for the Xed Decoder
262
263 config DEBUG_HALT
264         bool "Halt"
265         default n
266         depends on DEBUG_ON
267         help 
268           This turns on debugging for the halt instruction handler
269
270 config DEBUG_DEV_MGR
271         bool "Device Manager"
272         default n
273         depends on DEBUG_ON
274         help 
275           This turns on debugging for the device manager
276
277
278
279
280 endmenu
281
282
283 menu "BIOS Selection"
284
285 config ROMBIOS_PATH
286         string "Path to pre-built ROMBIOS binary"
287         default "./bios/rombios/BIOS-bochs-latest"
288         help
289           This is the rombios that will be used for the guests
290
291 config VGABIOS_PATH
292         string "Path to pre-built VGABIOS binary"
293         default "./bios/vgabios/VGABIOS-lgpl-latest.bin"
294         help
295           This is the vgabios that will be used for the guests
296
297 config VMXASSIST_PATH
298         string "Path to pre-built VMXASSIST binary"
299         depends on VMX
300         default "./bios/vmxassist/vmxassist.bin"
301         help
302           This is vmxassist image to boot real mode guests on 
303           Intel VMX Platforms
304
305 endmenu
306
307
308 source "palacios/src/devices/Kconfig"
309