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.


da55c11cd452456c92299bf7f1da95b07aeb2800
[palacios.git] / palacios / src / devices / Kconfig
1 menu "Virtual Devices"
2
3
4 menu "Interrupt Logic and Multicore"
5
6 config PIC
7         bool "8259A PIC"
8         default y
9         help
10           Includes the Virtual 8259a PIC Device
11
12 config DEBUG_PIC
13         bool "PIC debugging"
14         depends on PIC && DEBUG_ON
15         help 
16           Enable debugging for the PIC  
17
18 config APIC
19         bool "APIC" 
20         default y
21         help 
22           Includes the Virtual APIC device
23
24 config APIC_ENQUEUE_MISSED_TMR_IRQS
25         bool "Enqueue missed APIC timer interrpts"
26         default n
27         depends on APIC
28         help
29           Make up missed APIC periodic timer interrupts on later 
30           exits into the virtual machine
31
32 config DEBUG_APIC
33         bool "APIC Debugging"
34         default n
35         depends on APIC && DEBUG_ON 
36         help 
37           Enable debugging for the APIC
38
39 config IO_APIC
40         bool "IOAPIC"
41         depends on APIC
42         default y
43         help 
44           Includes the Virtual IO APIC
45
46 config DEBUG_IO_APIC
47         bool "IO APIC Debugging"
48         default n
49         depends on IO_APIC && DEBUG_ON 
50         help 
51           Enable debugging for the IO APIC
52
53 config MPTABLE
54         bool "MPTABLE"
55         default y
56         depends on APIC
57         help 
58           Includes the MPTABLE to map the APICs and IO-APIC
59
60
61 endmenu
62
63 menu "Platform Devices and PCI"
64
65
66 config KEYBOARD
67         bool "Keyboard and mouse (PS/2)"
68         default y
69         help 
70           Includes the virtual standard PS/2 keyboard and mouse
71
72 config DEBUG_KEYBOARD
73         bool "Keyboard Debugging"
74         default n
75         depends on KEYBOARD && DEBUG_ON 
76         help 
77           Enable debugging for the Keyboard
78
79 config NVRAM
80         bool "NVRAM"
81         default y
82         help
83           Includes the Virtual CMOS NVRAM Device
84
85 config DEBUG_NVRAM
86         bool "NVRAM debugging"
87         depends on NVRAM && DEBUG_ON
88         help 
89           Enable debugging for the NVRAM
90
91 config PIT
92         bool "PIT"
93         default y
94         help
95           Includes the Virtual 8254 Programmable Interrupt Timer Device
96
97 config DEBUG_PIT
98         bool "PIT debugging"
99         depends on PIT && DEBUG_ON
100         help 
101           Enable debugging for the PIT  
102
103 config HPET
104     bool "HPET"
105     default n
106     help
107       Includes the High-Precision Event Timer Device
108
109 config DEBUG_HPET
110     bool "HPET debugging"
111     depends on HPET && DEBUG_ON
112     help
113       Enable debugging for the HPET
114
115
116 config I440FX
117         bool "i440fx Northbridge"
118         depends on PCI
119         default y
120         help 
121           Includes the Virtual Northbridge
122
123 config PIIX3
124         bool "PIIX3 Southbridge"
125         default y
126         help
127           Includes the Virtual Piix3 Southbridge
128
129
130 config PCI
131         bool "PCI"
132         default y
133         help
134           Includes the Virtual PCI Bus
135
136 config DEBUG_PCI
137         bool "PCI debugging"
138         depends on PCI && DEBUG_ON
139         help 
140           Enable debugging for the PCI  
141
142 config PASSTHROUGH_PCI
143         bool "Passthrough PCI"
144         default y 
145         depends on PCI && EXPERIMENTAL && SYMBIOTIC
146         help 
147           Enables hardware devices to be passed through to the VM
148
149
150 config PCI_FRONT
151         bool "PCI front-end device"
152         default y 
153         depends on PCI && HOST_DEVICE
154         help 
155           PCI front-end device for a host-based PCI device implementation
156           This device allows you to project a host-based *virtual* device 
157           into the guest as a PCI device.   If you want to project a 
158           physical PCI device, use Passthrough PCI instead.  If you want
159           to project a non-PCI virtual or physical device, 
160           use the generic device.
161           
162
163 config DEBUG_PCI_FRONT
164         bool "PCI front-end debugging"
165         depends on PCI_FRONT && DEBUG_ON
166         help 
167           Enable debugging for the PCI front-end device 
168           
169
170 config HOST_PCI_SELPRIV
171         bool "Host PCI selective privilege"
172         depends on HOST_PCI
173         depends on EXT_PRIV
174         default n
175         help
176           This device enables selective direct access to hardware for
177           passthrough PCI devices. The privilege extension under
178           GEARS must be enabled for this option.  This device
179           is a variant of the "always on" "host_pci" device.
180
181 config DEBUG_HOST_PCI_SELPRIV
182     bool "Host PCI Debugging"
183     depends on HOST_PCI_SELPRIV
184     default n
185     help
186       This enables debugging output for the host_pci_selpriv device
187
188
189 endmenu
190
191 menu "Storage Controllers"
192
193 config IDE
194         bool "IDE"
195         default y
196         help 
197           Includes the Virtual IDE layer
198
199 config DEBUG_IDE
200         bool "IDE Debugging"
201         default n
202         depends on IDE && DEBUG_ON 
203         help 
204           Enable debugging for the IDE Layer
205
206 config LINUX_VIRTIO_BLOCK
207         bool "Linux Virtio Block Device"
208         default y
209         depends on PCI
210         help 
211           Includes the Linux virtio block device
212
213 config DEBUG_VIRTIO_BLOCK
214         bool "Linux Virtio Block Debugging"
215         default n
216         depends on LINUX_VIRTIO_BLOCK  && DEBUG_ON 
217         help 
218           Enable debugging for the Linux Virtio Block Device
219
220 endmenu
221
222
223 menu "Block Device Backends"
224
225 config RAMDISK
226         bool "RAMDISK storage backend"
227         default y
228         depends on IDE || LINUX_VIRTIO_BLOCK
229         help 
230           Includes the RAM based disk backend
231
232 config DEBUG_RAMDISK
233         bool "RAMDISK backend debugging"
234         depends on RAMDISK && DEBUG_ON
235         help 
236           Enable debugging for the ram based disk backend       
237
238
239 config FILEDISK
240         bool "FILEDISK storage backend"
241         default y
242         depends on FILE && (IDE || LINUX_VIRTIO_BLOCK)
243         help
244           Includes the file based disk backend
245
246 config DEBUG_FILEDISK
247         bool "FILEDISK backend debugging"
248         depends on FILEDISK && DEBUG_ON
249         help 
250           Enable debugging for the file based disk backend      
251
252 config NETDISK
253         bool "NETDISK storage backend"
254         default y
255         depends on SOCKET && (IDE || LINUX_VIRTIO_BLOCK)
256         help 
257           Includes the Network based disk backend
258
259 config TMPDISK
260         bool "TMPDISK storage backend"
261         default y
262         depends on IDE || LINUX_VIRTIO_BLOCK
263         help 
264           Includes the temporary RAM disk 
265
266
267 endmenu
268
269
270 menu "Network Devices"
271
272 config LINUX_VIRTIO_NET
273         bool "Enable Virtio Network Device"
274         default n
275         depends on PCI
276         help
277           Enable the Virtio Net
278
279 config DEBUG_VIRTIO_NET
280         bool "Linux Virtio Net Debugging"
281         default n
282         depends on LINUX_VIRTIO_NET && DEBUG_ON
283         help
284           Enable debugging for the Linux Virtio Network Device
285
286 config LINUX_VIRTIO_VNET
287         bool "Enable Virtio VNET interface"
288         default n
289         depends on PCI && VNET
290         help
291           Enable the Virtio VNET interface for Control VM
292
293 config NE2K
294         bool "NE2K"
295         depends on EXPERIMENTAL
296         default n
297         help
298           Includes the Virtual NE2K network card
299
300 config DEBUG_NE2K
301         bool "NE2K debugging"
302         default n
303         depends on NE2K && DEBUG_ON
304         help 
305           Enable debugging for the NE2K
306
307 config RTL8139
308         bool "RTL8139"
309         depends on EXPERIMENTAL
310         default n
311         help
312           Includes the Virtual RTL8139 network card
313
314 config DEBUG_RTL8139
315         bool "RTL8139 debugging"
316         default n
317         depends on RTL8139 && DEBUG_ON
318         help
319           Enable debugging for the RTL8139
320
321
322 endmenu
323
324 menu "Network Backends"
325
326
327 config DEBUG_LINUX_VIRTIO_VNET
328         bool "Virtio VNET Interface Debugging"
329         default n
330         depends on LINUX_VIRTIO_VNET && DEBUG_ON
331         help
332           Enable debugging for the VNET Virtio interface
333
334 config VNET_NIC
335         bool "Enable VNET Backend Device"
336         default n
337         depends on PCI && VNET
338         help
339           Enable the VNET backend device
340
341 config DEBUG_VNET_NIC
342         bool "VNET Backend Device Debugging"
343         default n
344         depends on VNET_NIC && DEBUG_ON
345         help
346           Enable debugging for the VNET NIC Device
347
348 config VNET_GUEST_IFACE
349         bool "Enable VNET guest hypercall interface"
350         default n
351         depends on VNET
352         help
353           Allows the guest to query for info, such as headers, from VNET
354
355 config DEBUG_VNET_GUEST_IFACE
356         bool "VNET guest hypercall interface debugging"
357         default n
358         depends on VNET_GUEST_IFACE && DEBUG_ON
359         help
360           Enable debugging for the VNET guest hypercall interface
361
362 config NIC_BRIDGE
363         bool "Enable Direct Bridge to Host network"
364         default n
365         depends on EXPERIMENTAL && PACKET
366         help
367           Enable Host Direct Network Bridge backend device for all network front devices
368
369 config DEBUG_NIC_BRIDGE
370         bool "Debugging Direct Bridge to Host network"
371         default n
372         depends on NIC_BRIDGE && DEBUG_ON
373         help
374           Enable Debugging on Host Direct Network Bridge backend device
375
376 endmenu
377
378
379
380
381 menu "Consoles and Character Devices"
382
383 config CGA
384         bool "CGA"
385         default n
386         help
387           Includes the Virtual CGA video support
388
389
390 config DEBUG_CGA
391         int "DEBUG_CGA"
392         default 0
393         depends on CGA
394         help
395           Enables Debugging for the CGA device (2 = Verbose, 1 = Debug, 0 = Off)
396
397 config TELNET_CONSOLE
398         bool "Telnet Virtual Console"
399         default n
400         depends on CGA
401         help
402           Includes the virtual telnet console 
403
404 config CURSES_CONSOLE
405         bool "Curses Virtual Console"
406         default n
407         depends on CGA && CONSOLE
408         help
409           Includes the virtual curses console 
410
411 config VGA
412         bool "VGA"
413         default n
414         depends GRAPHICS_CONSOLE
415         help
416           Includes the Virtual VGA video support, and will 
417           eventually also include SVGA
418           Host frame buffer support (GRAPHICS_CONSOLE) is needed
419           for the hostframebuf option to work
420
421
422 config DEBUG_VGA
423         bool "DEBUG_VGA"
424         default n
425         depends on VGA
426         help
427           Enables debugging output for the VGA device 
428
429 config PARAGRAPH
430         bool "PARAGRAPH paravirtualized graphics card"
431         default n
432         depends GRAPHICS_CONSOLE
433         help
434           Includes a paravirtualized graphics card
435
436 config DEBUG_PARAGRAPH
437         bool "DEBUG_PARAGRAPH"
438         default n
439         depends on PARAGRAPH
440         help
441           Enables debugging output for the PARAGRAPH device
442
443 config SERIAL_UART
444         bool "Serial Port"
445         default y
446         help 
447           Include virtual serial port
448
449 config DEBUG_SERIAL
450         bool "Debug Serial Port"
451         default n
452         depends on SERIAL_UART
453         help
454           Debugging virtual serial port
455
456 config LINUX_VIRTIO_CONSOLE
457         bool "Enable Virtio Console Device"
458         default n
459         depends on PCI
460         help
461           Enable the Virtio Console
462
463
464 endmenu
465
466 menu "Character Device Backends"
467
468 config CHAR_STREAM
469         bool "Stream based character frontend"
470         depends on STREAM
471         default n
472         help
473           Include Stream based character device frontend
474
475 endmenu
476
477 menu "BIOS and Guest OS Debugging Devices"
478
479 config BOCHS_DEBUG
480         bool "BIOS Debug Console Device"
481         default y
482         help 
483           Includes the BIOS debug console device
484
485 config OS_DEBUG
486         bool "OS Debug Console Device"
487         default y
488         help 
489           Includes the OS debug console device
490
491 endmenu
492
493
494 menu "Symbiotic Devices"
495
496 config LINUX_VIRTIO_SYM
497         bool "Linux Virtio Symbiotic Device"
498         default y
499         depends on PCI && SYMBIOTIC
500         help 
501           Includes the Linux virtio symbiotic device
502
503 config DEBUG_VIRTIO_SYM
504         bool "Linux Virtio Symbiotic Debugging"
505         default n
506         depends on LINUX_VIRTIO_SYM && DEBUG_ON 
507         help 
508           Enable debugging for the Linux Virtio Symbiotic Device
509
510 config SWAPBYPASS_DISK_CACHE
511         bool "SwapBypass disk cache"
512         default y
513         depends on SWAPBYPASS && (LINUX_VIRTIO_BLOCK || IDE)
514         help 
515           Includes the SwapBypass ram based swap disk cache
516
517 config SWAPBYPASS_DISK_CACHE2
518         bool "SwapBypass disk cache v2"
519         default y
520         depends on SWAPBYPASS && (LINUX_VIRTIO_BLOCK || IDE)
521         help 
522           Includes the SwapBypass ram based swap disk cache
523 endmenu
524
525 menu "Other Devices"
526
527 config LINUX_VIRTIO_BALLOON
528         bool "Linux Virtio Balloon Device"
529         default y
530         depends on PCI
531         help 
532           Includes the Linux virtio balloon device
533
534 config DEBUG_VIRTIO_BALLOON
535         bool "Linux Virtio Balloon Debugging"
536         default n
537         depends on LINUX_VIRTIO_BALLOON  && DEBUG_ON 
538         help 
539           Enable debugging for the Linux Virtio Balloon Device
540
541
542 config GENERIC
543         bool "Generic Device"
544         default y
545         help 
546           Includes the virtual generic device.  This device allows you
547           to see guest I/O port and memory region interaction with a physical
548           device on the underlying hardware, as well as to ignore such
549           interaction.  The generic device also serves as a front-end
550           device for non-PCI host-based virtual device implementations.  If
551           you want to handle either host-based virtual or physical devices
552           that are not PCI devices, this is what you want.  If you want
553           to handle a host-based virtual device that is a PCI device, you  
554           want to use the PCI front-end device.  If you want to handle
555           a physical PCI device, you want the passthrough PCI device.  
556
557 config DEBUG_GENERIC
558         bool "Generic device Debugging"
559         default n
560         depends on GENERIC && DEBUG_ON 
561         help 
562           Enable debugging for Generic
563
564
565 config DISK_MODEL
566         bool "Disk Performance Model"
567         default y
568         depends on LINUX_VIRTIO_BLOCK || IDE
569         help 
570           Includes Performance model filter for disk operations
571
572
573 endmenu
574
575 endmenu
576