xref: /linux/drivers/virtio/Kconfig (revision ec8f24b7faaf3d4799a7c3f4c1b87f6b02778ad1)
1*ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2ec3d41c4SRusty Russellconfig VIRTIO
3c6fd4701SRusty Russell	tristate
4387daf17SRusty Russell	---help---
5387daf17SRusty Russell	  This option is selected by any driver which implements the virtio
6ecda85e7SJuergen Gross	  bus, such as CONFIG_VIRTIO_PCI, CONFIG_VIRTIO_MMIO, CONFIG_RPMSG
7ecda85e7SJuergen Gross	  or CONFIG_S390_GUEST.
80a8a69ddSRusty Russell
97b95fec6SVincent Legollmenuconfig VIRTIO_MENU
107b95fec6SVincent Legoll	bool "Virtio drivers"
117b95fec6SVincent Legoll	default y
127b95fec6SVincent Legoll
137b95fec6SVincent Legollif VIRTIO_MENU
14e7254219SOhad Ben-Cohen
153343660dSAnthony Liguoriconfig VIRTIO_PCI
16d72c5a8cSKees Cook	tristate "PCI driver for virtio devices"
17d72c5a8cSKees Cook	depends on PCI
183343660dSAnthony Liguori	select VIRTIO
193343660dSAnthony Liguori	---help---
20b2a6d51dSMichael S. Tsirkin	  This driver provides support for virtio based paravirtual device
213343660dSAnthony Liguori	  drivers over PCI.  This requires that your VMM has appropriate PCI
223343660dSAnthony Liguori	  virtio backends.  Most QEMU based VMMs should support these devices
233343660dSAnthony Liguori	  (like KVM or Xen).
243343660dSAnthony Liguori
253343660dSAnthony Liguori	  If unsure, say M.
263343660dSAnthony Liguori
2746506da5SMichael S. Tsirkinconfig VIRTIO_PCI_LEGACY
2846506da5SMichael S. Tsirkin	bool "Support for legacy virtio draft 0.9.X and older devices"
2946506da5SMichael S. Tsirkin	default y
3046506da5SMichael S. Tsirkin	depends on VIRTIO_PCI
3146506da5SMichael S. Tsirkin	---help---
3246506da5SMichael S. Tsirkin          Virtio PCI Card 0.9.X Draft (circa 2014) and older device support.
3346506da5SMichael S. Tsirkin
3446506da5SMichael S. Tsirkin	  This option enables building a transitional driver, supporting
3546506da5SMichael S. Tsirkin	  both devices conforming to Virtio 1 specification, and legacy devices.
3646506da5SMichael S. Tsirkin	  If disabled, you get a slightly smaller, non-transitional driver,
3746506da5SMichael S. Tsirkin	  with no legacy compatibility.
3846506da5SMichael S. Tsirkin
3946506da5SMichael S. Tsirkin          So look out into your driveway.  Do you have a flying car?  If
4046506da5SMichael S. Tsirkin          so, you can happily disable this option and virtio will not
4146506da5SMichael S. Tsirkin          break.  Otherwise, leave it set.  Unless you're testing what
4246506da5SMichael S. Tsirkin          life will be like in The Future.
4346506da5SMichael S. Tsirkin
4446506da5SMichael S. Tsirkin	  If unsure, say Y.
4546506da5SMichael S. Tsirkin
466b35e407SRusty Russellconfig VIRTIO_BALLOON
477a23eb28SRusty Russell	tristate "Virtio balloon driver"
487a23eb28SRusty Russell	depends on VIRTIO
4909316c09SKonstantin Khlebnikov	select MEMORY_BALLOON
506b35e407SRusty Russell	---help---
516b35e407SRusty Russell	 This driver supports increasing and decreasing the amount
526b35e407SRusty Russell	 of memory within a KVM guest.
536b35e407SRusty Russell
546b35e407SRusty Russell	 If unsure, say M.
556b35e407SRusty Russell
56271c8651SGerd Hoffmannconfig VIRTIO_INPUT
57271c8651SGerd Hoffmann	tristate "Virtio input driver"
58271c8651SGerd Hoffmann	depends on VIRTIO
59271c8651SGerd Hoffmann	depends on INPUT
60271c8651SGerd Hoffmann	---help---
61271c8651SGerd Hoffmann	 This driver supports virtio input devices such as
62271c8651SGerd Hoffmann	 keyboards, mice and tablets.
63271c8651SGerd Hoffmann
64271c8651SGerd Hoffmann	 If unsure, say M.
65271c8651SGerd Hoffmann
66edfd52e6SPawel Moll config VIRTIO_MMIO
67d72c5a8cSKees Cook	tristate "Platform bus driver for memory mapped virtio devices"
68780bc790SAndy Lutomirski	depends on HAS_IOMEM && HAS_DMA
69edfd52e6SPawel Moll 	select VIRTIO
70edfd52e6SPawel Moll 	---help---
71edfd52e6SPawel Moll 	 This drivers provides support for memory mapped virtio
72edfd52e6SPawel Moll	 platform device driver.
73edfd52e6SPawel Moll
74edfd52e6SPawel Moll 	 If unsure, say N.
75edfd52e6SPawel Moll
7681a054ceSPawel Mollconfig VIRTIO_MMIO_CMDLINE_DEVICES
7781a054ceSPawel Moll	bool "Memory mapped virtio devices parameter parsing"
7881a054ceSPawel Moll	depends on VIRTIO_MMIO
7981a054ceSPawel Moll	---help---
8081a054ceSPawel Moll	 Allow virtio-mmio devices instantiation via the kernel command line
8181a054ceSPawel Moll	 or module parameters. Be aware that using incorrect parameters (base
8281a054ceSPawel Moll	 address in particular) can crash your system - you have been warned.
838c27ceffSMauro Carvalho Chehab	 See Documentation/admin-guide/kernel-parameters.rst for details.
8481a054ceSPawel Moll
8581a054ceSPawel Moll	 If unsure, say 'N'.
8681a054ceSPawel Moll
877b95fec6SVincent Legollendif # VIRTIO_MENU
88