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.


Restructure device configuration menus to make things clearer -
Peter Dinda [Fri, 4 Oct 2013 15:16:24 +0000 (10:16 -0500)]
we have too many devices to just have a giant list

palacios/src/devices/Kconfig

index d5d8c1d..f08d5b2 100644 (file)
@@ -1,5 +1,20 @@
 menu "Virtual Devices"
 
+
+menu "Interrupt Logic and Multicore"
+
+config PIC
+       bool "8259A PIC"
+       default y
+       help
+         Includes the Virtual 8259a PIC Device
+
+config DEBUG_PIC
+       bool "PIC debugging"
+       depends on PIC && DEBUG_ON
+       help 
+         Enable debugging for the PIC  
+
 config APIC
        bool "APIC" 
        default y
@@ -35,7 +50,6 @@ config DEBUG_IO_APIC
        help 
          Enable debugging for the IO APIC
 
-
 config MPTABLE
        bool "MPTABLE"
        default y
@@ -44,37 +58,47 @@ config MPTABLE
          Includes the MPTABLE to map the APICs and IO-APIC
 
 
-config BOCHS_DEBUG
-       bool "Bochs Debug Console Device"
-       default y
-       help 
-         Includes the Bochs Debug console device
+endmenu
 
+menu "Platform Devices and PCI"
 
 
-config GENERIC
-       bool "Generic Device"
+config KEYBOARD
+       bool "Keyboard and mouse (PS/2)"
        default y
        help 
-         Includes the virtual generic device.  This device allows you
-          to see guest I/O port and memory region interaction with a physical
-          device on the underlying hardware, as well as to ignore such
-          interaction.  The generic device also serves as a front-end
-          device for non-PCI host-based virtual device implementations.  If
-          you want to handle either host-based virtual or physical devices
-          that are not PCI devices, this is what you want.  If you want
-          to handle a host-based virtual device that is a PCI device, you  
-          want to use the PCI front-end device.  If you want to handle
-          a physical PCI device, you want the passthrough PCI device.  
+         Includes the virtual standard PS/2 keyboard and mouse
 
-config DEBUG_GENERIC
-       bool "Generic device Debugging"
+config DEBUG_KEYBOARD
+       bool "Keyboard Debugging"
        default n
-       depends on GENERIC && DEBUG_ON 
+       depends on KEYBOARD && DEBUG_ON 
        help 
-         Enable debugging for Generic
+         Enable debugging for the Keyboard
+
+config NVRAM
+       bool "NVRAM"
+       default y
+       help
+         Includes the Virtual CMOS NVRAM Device
 
+config DEBUG_NVRAM
+       bool "NVRAM debugging"
+       depends on NVRAM && DEBUG_ON
+       help 
+         Enable debugging for the NVRAM
+
+config PIT
+       bool "PIT"
+       default y
+       help
+         Includes the Virtual 8254 Programmable Interrupt Timer Device
 
+config DEBUG_PIT
+       bool "PIT debugging"
+       depends on PIT && DEBUG_ON
+       help 
+         Enable debugging for the PIT  
 
 config I440FX
        bool "i440fx Northbridge"
@@ -83,52 +107,88 @@ config I440FX
        help 
          Includes the Virtual Northbridge
 
+config PIIX3
+       bool "PIIX3 Southbridge"
+       default y
+       help
+         Includes the Virtual Piix3 Southbridge
+
 
-config IDE
-       bool "IDE"
+config PCI
+       bool "PCI"
        default y
+       help
+         Includes the Virtual PCI Bus
+
+config DEBUG_PCI
+       bool "PCI debugging"
+       depends on PCI && DEBUG_ON
        help 
-         Includes the Virtual IDE layer
+         Enable debugging for the PCI  
 
-config DEBUG_IDE
-       bool "IDE Debugging"
-       default n
-       depends on IDE && DEBUG_ON 
+config PASSTHROUGH_PCI
+       bool "Passthrough PCI"
+       default y 
+       depends on PCI && EXPERIMENTAL && SYMBIOTIC
        help 
-         Enable debugging for the IDE Layer
+         Enables hardware devices to be passed through to the VM
 
 
+config PCI_FRONT
+       bool "PCI front-end device"
+       default y 
+       depends on PCI && HOST_DEVICE
+       help 
+         PCI front-end device for a host-based PCI device implementation
+          This device allows you to project a host-based *virtual* device 
+          into the guest as a PCI device.   If you want to project a 
+          physical PCI device, use Passthrough PCI instead.  If you want
+          to project a non-PCI virtual or physical device, 
+          use the generic device.
+          
 
+config DEBUG_PCI_FRONT
+       bool "PCI front-end debugging"
+       depends on PCI_FRONT && DEBUG_ON
+       help 
+         Enable debugging for the PCI front-end device 
+          
 
+config HOST_PCI_SELPRIV
+        bool "Host PCI selective privilege"
+        depends on HOST_PCI
+        depends on EXT_PRIV
+        default n
+        help
+          This device enables selective direct access to hardware for
+          passthrough PCI devices. The privilege extension under
+          GEARS must be enabled for this option.  This device
+          is a variant of the "always on" "host_pci" device.
 
-config KEYBOARD
-       bool "Keyboard"
-       default y
-       help 
-         Includes the Virtual standard PC Keyboard device
+config DEBUG_HOST_PCI_SELPRIV
+    bool "Host PCI Debugging"
+    depends on HOST_PCI_SELPRIV
+    default n
+    help
+      This enables debugging output for the host_pci_selpriv device
 
-config DEBUG_KEYBOARD
-       bool "Keyboard Debugging"
-       default n
-       depends on KEYBOARD && DEBUG_ON 
-       help 
-         Enable debugging for the Keyboard
 
+endmenu
 
-config LINUX_VIRTIO_BALLOON
-       bool "Linux Virtio Balloon Device"
+menu "Storage Controllers"
+
+config IDE
+       bool "IDE"
        default y
-       depends on PCI
        help 
-         Includes the Linux virtio balloon device
+         Includes the Virtual IDE layer
 
-config DEBUG_VIRTIO_BALLOON
-       bool "Linux Virtio Balloon Debugging"
+config DEBUG_IDE
+       bool "IDE Debugging"
        default n
-       depends on LINUX_VIRTIO_BALLOON  && DEBUG_ON 
+       depends on IDE && DEBUG_ON 
        help 
-         Enable debugging for the Linux Virtio Balloon Device
-
+         Enable debugging for the IDE Layer
 
 config LINUX_VIRTIO_BLOCK
        bool "Linux Virtio Block Device"
@@ -144,32 +204,62 @@ config DEBUG_VIRTIO_BLOCK
        help 
          Enable debugging for the Linux Virtio Block Device
 
-config LINUX_VIRTIO_SYM
-       bool "Linux Virtio Symbiotic Device"
+endmenu
+
+
+menu "Block Device Backends"
+
+config RAMDISK
+       bool "RAMDISK storage backend"
        default y
-       depends on PCI && SYMBIOTIC
+       depends on IDE || LINUX_VIRTIO_BLOCK
        help 
-         Includes the Linux virtio symbiotic device
+         Includes the RAM based disk backend
 
-config DEBUG_VIRTIO_SYM
-       bool "Linux Virtio Symbiotic Debugging"
-       default n
-       depends on LINUX_VIRTIO_SYM && DEBUG_ON 
+config DEBUG_RAMDISK
+       bool "RAMDISK backend debugging"
+       depends on RAMDISK && DEBUG_ON
        help 
-         Enable debugging for the Linux Virtio Symbiotic Device
+         Enable debugging for the ram based disk backend       
 
-config LINUX_VIRTIO_CONSOLE
-        bool "Enable Virtio Console Device"
-        default n
-       depends on PCI
-        help
-          Enable the Virtio Console
 
+config FILEDISK
+       bool "FILEDISK storage backend"
+       default y
+       depends on FILE && (IDE || LINUX_VIRTIO_BLOCK)
+       help
+         Includes the file based disk backend
+
+config DEBUG_FILEDISK
+       bool "FILEDISK backend debugging"
+       depends on FILEDISK && DEBUG_ON
+       help 
+         Enable debugging for the file based disk backend      
+
+config NETDISK
+       bool "NETDISK storage backend"
+       default y
+       depends on SOCKET && (IDE || LINUX_VIRTIO_BLOCK)
+       help 
+         Includes the Network based disk backend
+
+config TMPDISK
+       bool "TMPDISK storage backend"
+       default y
+       depends on IDE || LINUX_VIRTIO_BLOCK
+       help 
+         Includes the temporary RAM disk 
+
+
+endmenu
+
+
+menu "Network Devices"
 
 config LINUX_VIRTIO_NET
         bool "Enable Virtio Network Device"
         default n
-       depends on PCI && VNET
+       depends on PCI
         help
           Enable the Virtio Net
 
@@ -180,7 +270,6 @@ config DEBUG_VIRTIO_NET
         help
           Enable debugging for the Linux Virtio Network Device
 
-
 config LINUX_VIRTIO_VNET
         bool "Enable Virtio VNET interface"
         default n
@@ -188,6 +277,40 @@ config LINUX_VIRTIO_VNET
         help
           Enable the Virtio VNET interface for Control VM
 
+config NE2K
+       bool "NE2K"
+       depends on EXPERIMENTAL
+       default n
+       help
+         Includes the Virtual NE2K network card
+
+config DEBUG_NE2K
+       bool "NE2K debugging"
+       default n
+       depends on NE2K && DEBUG_ON
+       help 
+         Enable debugging for the NE2K
+
+config RTL8139
+        bool "RTL8139"
+        depends on EXPERIMENTAL
+        default n
+        help
+          Includes the Virtual RTL8139 network card
+
+config DEBUG_RTL8139
+        bool "RTL8139 debugging"
+        default n
+        depends on RTL8139 && DEBUG_ON
+        help
+          Enable debugging for the RTL8139
+
+
+endmenu
+
+menu "Network Backends"
+
+
 config DEBUG_LINUX_VIRTIO_VNET
         bool "Virtio VNET Interface Debugging"
         default n
@@ -195,8 +318,6 @@ config DEBUG_LINUX_VIRTIO_VNET
         help
           Enable debugging for the VNET Virtio interface
 
-
-
 config VNET_NIC
         bool "Enable VNET Backend Device"
         default n
@@ -225,35 +346,6 @@ config DEBUG_VNET_GUEST_IFACE
         help
           Enable debugging for the VNET guest hypercall interface
 
-
-config NE2K
-       bool "NE2K"
-       depends on EXPERIMENTAL
-       default n
-       help
-         Includes the Virtual NE2K network card
-
-config DEBUG_NE2K
-       bool "NE2K debugging"
-       default n
-       depends on NE2K && DEBUG_ON
-       help 
-         Enable debugging for the NE2K
-
-config RTL8139
-        bool "RTL8139"
-        depends on EXPERIMENTAL
-        default n
-        help
-          Includes the Virtual RTL8139 network card
-
-config DEBUG_RTL8139
-        bool "RTL8139 debugging"
-        default n
-        depends on RTL8139 && DEBUG_ON
-        help
-          Enable debugging for the RTL8139
-
 config NIC_BRIDGE
         bool "Enable Direct Bridge to Host network"
         default n
@@ -268,162 +360,139 @@ config DEBUG_NIC_BRIDGE
         help
           Enable Debugging on Host Direct Network Bridge backend device
 
+endmenu
 
 
 
-config NVRAM
-       bool "NVRAM"
-       default y
-       help
-         Includes the Virtual CMOS NVRAM Device
-
-config DEBUG_NVRAM
-       bool "NVRAM debugging"
-       depends on NVRAM && DEBUG_ON
-       help 
-         Enable debugging for the NVRAM
 
+menu "Consoles and Character Devices"
 
+config CGA
+       bool "CGA"
+       default n
+       help
+         Includes the Virtual CGA video support
 
-config OS_DEBUG
-       bool "OS Debug Console Device"
-       default y
-       help 
-         Includes the OS Debug console device
 
+config DEBUG_CGA
+       int "DEBUG_CGA"
+       default 0
+       depends on CGA
+       help
+         Enables Debugging for the CGA device (2 = Verbose, 1 = Debug, 0 = Off)
 
-config PIIX3
-       bool "PIIX3 Southbridge"
-       default y
+config TELNET_CONSOLE
+       bool "Telnet Virtual Console"
+       default n
+       depends on CGA
        help
-         Includes the Virtual Piix3 Southbridge
+         Includes the virtual telnet console 
 
+config CURSES_CONSOLE
+       bool "Curses Virtual Console"
+       default n
+       depends on CGA && CONSOLE
+       help
+         Includes the virtual curses console 
 
-config PCI
-       bool "PCI"
-       default y
+config VGA
+       bool "VGA"
+       default n
+       depends GRAPHICS_CONSOLE
        help
-         Includes the Virtual PCI Bus
+         Includes the Virtual VGA video support, and will 
+          eventually also include SVGA
+          Host frame buffer support (GRAPHICS_CONSOLE) is needed
+          for the hostframebuf option to work
 
-config PASSTHROUGH_PCI
-       bool "Passthrough PCI"
-       default y 
-       depends on PCI && EXPERIMENTAL && SYMBIOTIC
-       help 
-         Enables hardware devices to be passed through to the VM
 
+config DEBUG_VGA
+       bool "DEBUG_VGA"
+       default n
+       depends on VGA
+       help
+         Enables debugging output for the VGA device 
 
-config DEBUG_PCI
-       bool "PCI debugging"
-       depends on PCI && DEBUG_ON
-       help 
-         Enable debugging for the PCI  
+config PARAGRAPH
+        bool "PARAGRAPH paravirtualized graphics card"
+        default n
+        depends GRAPHICS_CONSOLE
+        help
+          Includes a paravirtualized graphics card
 
+config DEBUG_PARAGRAPH
+        bool "DEBUG_PARAGRAPH"
+        default n
+        depends on PARAGRAPH
+        help
+          Enables debugging output for the PARAGRAPH device
 
-config PCI_FRONT
-       bool "PCI front-end device"
-       default y 
-       depends on PCI && HOST_DEVICE
+config SERIAL_UART
+       bool "Serial Port"
+       default y
        help 
-         PCI front-end device for a host-based PCI device implementation
-          This device allows you to project a host-based *virtual* device 
-          into the guest as a PCI device.   If you want to project a 
-          physical PCI device, use Passthrough PCI instead.  If you want
-          to project a non-PCI virtual or physical device, 
-          use the generic device.
-          
+         Include virtual serial port
 
-config DEBUG_PCI_FRONT
-       bool "PCI front-end debugging"
-       depends on PCI_FRONT && DEBUG_ON
-       help 
-         Enable debugging for the PCI front-end device 
-          
+config DEBUG_SERIAL
+        bool "Debug Serial Port"
+        default n
+        depends on SERIAL_UART
+        help
+          Debugging virtual serial port
 
-config HOST_PCI_SELPRIV
-        bool "Host PCI selective privilege"
-        depends on HOST_PCI
-        depends on EXT_PRIV
+config LINUX_VIRTIO_CONSOLE
+        bool "Enable Virtio Console Device"
         default n
+       depends on PCI
         help
-          This device enables selective direct access to hardware for
-          passthrough PCI devices. The privilege extension under
-          GEARS must be enabled for this option.  This device
-          is a variant of the "always on" "host_pci" device.
+          Enable the Virtio Console
 
-config DEBUG_HOST_PCI_SELPRIV
-    bool "Host PCI Debugging"
-    depends on HOST_PCI_SELPRIV
-    default n
-    help
-      This enables debugging output for the host_pci_selpriv device
 
+endmenu
 
+menu "Character Device Backends"
 
-config PIC
-       bool "8259A PIC"
-       default y
+config CHAR_STREAM
+       bool "Stream based character frontend"
+       depends on STREAM
+       default n
        help
-         Includes the Virtual 8259a PIC Device
+         Include Stream based character device frontend
 
-config DEBUG_PIC
-       bool "PIC debugging"
-       depends on PIC && DEBUG_ON
-       help 
-         Enable debugging for the PIC  
+endmenu
 
+menu "BIOS and Guest OS Debugging Devices"
 
-config PIT
-       bool "PIT"
+config BOCHS_DEBUG
+       bool "BIOS Debug Console Device"
        default y
-       help
-         Includes the Virtual 8254 PIT Device
-
-config DEBUG_PIT
-       bool "PIT debugging"
-       depends on PIT && DEBUG_ON
        help 
-         Enable debugging for the PIT  
+         Includes the BIOS debug console device
 
-config FILEDISK
-       bool "FILEDISK storage backend"
+config OS_DEBUG
+       bool "OS Debug Console Device"
        default y
-       depends on FILE && (IDE || LINUX_VIRTIO_BLOCK)
-       help
-         Includes the file based disk backend
-
-config DEBUG_FILEDISK
-       bool "FILEDISK backend debugging"
-       depends on FILEDISK && DEBUG_ON
        help 
-         Enable debugging for the file based disk backend      
+         Includes the OS debug console device
 
-config NETDISK
-       bool "NETDISK storage backend"
-       default y
-       depends on SOCKET && (IDE || LINUX_VIRTIO_BLOCK)
-       help 
-         Includes the Network based disk backend
+endmenu
 
-config RAMDISK
-       bool "RAMDISK storage backend"
-       default y
-       depends on IDE || LINUX_VIRTIO_BLOCK
-       help 
-         Includes the RAM based disk backend
 
-config DEBUG_RAMDISK
-       bool "RAMDISK backend debugging"
-       depends on RAMDISK && DEBUG_ON
-       help 
-         Enable debugging for the ram based disk backend       
+menu "Symbiotic Devices"
 
-config TMPDISK
-       bool "TMPDISK storage backend"
+config LINUX_VIRTIO_SYM
+       bool "Linux Virtio Symbiotic Device"
        default y
-       depends on IDE || LINUX_VIRTIO_BLOCK
+       depends on PCI && SYMBIOTIC
        help 
-         Includes the temporary RAM disk 
+         Includes the Linux virtio symbiotic device
+
+config DEBUG_VIRTIO_SYM
+       bool "Linux Virtio Symbiotic Debugging"
+       default n
+       depends on LINUX_VIRTIO_SYM && DEBUG_ON 
+       help 
+         Enable debugging for the Linux Virtio Symbiotic Device
 
 config SWAPBYPASS_DISK_CACHE
        bool "SwapBypass disk cache"
@@ -438,94 +507,57 @@ config SWAPBYPASS_DISK_CACHE2
        depends on SWAPBYPASS && (LINUX_VIRTIO_BLOCK || IDE)
        help 
          Includes the SwapBypass ram based swap disk cache
+endmenu
 
-config DISK_MODEL
-       bool "Disk Performance Model"
+menu "Other Devices"
+
+config LINUX_VIRTIO_BALLOON
+       bool "Linux Virtio Balloon Device"
        default y
-       depends on LINUX_VIRTIO_BLOCK || IDE
+       depends on PCI
        help 
-         Includes Performance model filter for disk operations
-
-config VGA
-       bool "VGA"
-       default n
-       depends GRAPHICS_CONSOLE
-       help
-         Includes the Virtual VGA video support, and will 
-          eventually also include SVGA
-          Host frame buffer support (GRAPHICS_CONSOLE) is needed
-          for the hostframebuf option to work
-
-
-config DEBUG_VGA
-       bool "DEBUG_VGA"
-       default n
-       depends on VGA
-       help
-         Enables debugging output for the VGA device 
-
-config PARAGRAPH
-        bool "PARAGRAPH paravirtualized graphics card"
-        default n
-        depends GRAPHICS_CONSOLE
-        help
-          Includes a paravirtualized graphics card
-
-config DEBUG_PARAGRAPH
-        bool "DEBUG_PARAGRAPH"
-        default n
-        depends on PARAGRAPH
-        help
-          Enables debugging output for the PARAGRAPH device
-
+         Includes the Linux virtio balloon device
 
-config CGA
-       bool "CGA"
+config DEBUG_VIRTIO_BALLOON
+       bool "Linux Virtio Balloon Debugging"
        default n
-       help
-         Includes the Virtual CGA video support
+       depends on LINUX_VIRTIO_BALLOON  && DEBUG_ON 
+       help 
+         Enable debugging for the Linux Virtio Balloon Device
 
 
-config DEBUG_CGA
-       int "DEBUG_CGA"
-       default 0
-       depends on CGA
-       help
-         Enables Debugging for the CGA device (2 = Verbose, 1 = Debug, 0 = Off)
+config GENERIC
+       bool "Generic Device"
+       default y
+       help 
+         Includes the virtual generic device.  This device allows you
+          to see guest I/O port and memory region interaction with a physical
+          device on the underlying hardware, as well as to ignore such
+          interaction.  The generic device also serves as a front-end
+          device for non-PCI host-based virtual device implementations.  If
+          you want to handle either host-based virtual or physical devices
+          that are not PCI devices, this is what you want.  If you want
+          to handle a host-based virtual device that is a PCI device, you  
+          want to use the PCI front-end device.  If you want to handle
+          a physical PCI device, you want the passthrough PCI device.  
 
-config TELNET_CONSOLE
-       bool "Telnet Virtual Console"
+config DEBUG_GENERIC
+       bool "Generic device Debugging"
        default n
-       depends on CGA
-       help
-         Includes the virtual telnet console 
+       depends on GENERIC && DEBUG_ON 
+       help 
+         Enable debugging for Generic
 
-config CURSES_CONSOLE
-       bool "Curses Virtual Console"
-       default n
-       depends on CGA && CONSOLE
-       help
-         Includes the virtual curses console 
 
-config SERIAL_UART
-       bool "Serial Port"
+config DISK_MODEL
+       bool "Disk Performance Model"
        default y
+       depends on LINUX_VIRTIO_BLOCK || IDE
        help 
-         Include virtual serial port
+         Includes Performance model filter for disk operations
 
-config DEBUG_SERIAL
-        bool "Debug Serial Port"
-        default n
-        depends on SERIAL_UART
-        help
-          Debugging virtual serial port
 
-config CHAR_STREAM
-       bool "Stream based character frontend"
-       depends on STREAM
-       default n
-       help
-         Include Stream based character device frontend
+endmenu
 
 endmenu