]>
Commit | Line | Data |
---|---|---|
ec8f24b7 | 1 | # SPDX-License-Identifier: GPL-2.0-only |
ec3d41c4 | 2 | config VIRTIO |
c6fd4701 | 3 | tristate |
a7f7f624 | 4 | help |
387daf17 | 5 | This option is selected by any driver which implements the virtio |
ecda85e7 JG |
6 | bus, such as CONFIG_VIRTIO_PCI, CONFIG_VIRTIO_MMIO, CONFIG_RPMSG |
7 | or CONFIG_S390_GUEST. | |
0a8a69dd | 8 | |
7b95fec6 VL |
9 | menuconfig VIRTIO_MENU |
10 | bool "Virtio drivers" | |
11 | default y | |
12 | ||
13 | if VIRTIO_MENU | |
e7254219 | 14 | |
3343660d | 15 | config VIRTIO_PCI |
d72c5a8c KC |
16 | tristate "PCI driver for virtio devices" |
17 | depends on PCI | |
3343660d | 18 | select VIRTIO |
a7f7f624 | 19 | help |
b2a6d51d | 20 | This driver provides support for virtio based paravirtual device |
3343660d AL |
21 | drivers over PCI. This requires that your VMM has appropriate PCI |
22 | virtio backends. Most QEMU based VMMs should support these devices | |
23 | (like KVM or Xen). | |
24 | ||
3343660d AL |
25 | If unsure, say M. |
26 | ||
46506da5 MT |
27 | config VIRTIO_PCI_LEGACY |
28 | bool "Support for legacy virtio draft 0.9.X and older devices" | |
29 | default y | |
30 | depends on VIRTIO_PCI | |
a7f7f624 | 31 | help |
46506da5 MT |
32 | Virtio PCI Card 0.9.X Draft (circa 2014) and older device support. |
33 | ||
34 | This option enables building a transitional driver, supporting | |
35 | both devices conforming to Virtio 1 specification, and legacy devices. | |
36 | If disabled, you get a slightly smaller, non-transitional driver, | |
37 | with no legacy compatibility. | |
38 | ||
39 | So look out into your driveway. Do you have a flying car? If | |
40 | so, you can happily disable this option and virtio will not | |
41 | break. Otherwise, leave it set. Unless you're testing what | |
42 | life will be like in The Future. | |
43 | ||
44 | If unsure, say Y. | |
45 | ||
c043b4a8 JW |
46 | config VIRTIO_VDPA |
47 | tristate "vDPA driver for virtio devices" | |
58ad1372 | 48 | depends on VDPA |
c043b4a8 JW |
49 | select VIRTIO |
50 | help | |
51 | This driver provides support for virtio based paravirtual | |
52 | device driver over vDPA bus. For this to be useful, you need | |
53 | an appropriate vDPA device implementation that operates on a | |
54 | physical device to allow the datapath of virtio to be | |
55 | offloaded to hardware. | |
56 | ||
57 | If unsure, say M. | |
58 | ||
6e84200c PG |
59 | config VIRTIO_PMEM |
60 | tristate "Support for virtio pmem driver" | |
61 | depends on VIRTIO | |
62 | depends on LIBNVDIMM | |
63 | help | |
64 | This driver provides access to virtio-pmem devices, storage devices | |
65 | that are mapped into the physical address space - similar to NVDIMMs | |
66 | - with a virtio-based flushing interface. | |
67 | ||
68 | If unsure, say Y. | |
69 | ||
6b35e407 | 70 | config VIRTIO_BALLOON |
7a23eb28 RR |
71 | tristate "Virtio balloon driver" |
72 | depends on VIRTIO | |
09316c09 | 73 | select MEMORY_BALLOON |
b0c504f1 | 74 | select PAGE_REPORTING |
a7f7f624 | 75 | help |
6b35e407 RR |
76 | This driver supports increasing and decreasing the amount |
77 | of memory within a KVM guest. | |
78 | ||
79 | If unsure, say M. | |
80 | ||
5f1f79bb DH |
81 | config VIRTIO_MEM |
82 | tristate "Virtio mem driver" | |
83 | default m | |
84 | depends on X86_64 | |
85 | depends on VIRTIO | |
86 | depends on MEMORY_HOTPLUG_SPARSE | |
87 | depends on MEMORY_HOTREMOVE | |
255f5985 | 88 | select CONTIG_ALLOC |
5f1f79bb DH |
89 | help |
90 | This driver provides access to virtio-mem paravirtualized memory | |
91 | devices, allowing to hotplug and hotunplug memory. | |
92 | ||
93 | This driver was only tested under x86-64, but should theoretically | |
94 | work on all architectures that support memory hotplug and hotremove. | |
95 | ||
96 | If unsure, say M. | |
97 | ||
271c8651 GH |
98 | config VIRTIO_INPUT |
99 | tristate "Virtio input driver" | |
100 | depends on VIRTIO | |
101 | depends on INPUT | |
a7f7f624 | 102 | help |
271c8651 GH |
103 | This driver supports virtio input devices such as |
104 | keyboards, mice and tablets. | |
105 | ||
106 | If unsure, say M. | |
107 | ||
6166e533 | 108 | config VIRTIO_MMIO |
d72c5a8c | 109 | tristate "Platform bus driver for memory mapped virtio devices" |
780bc790 | 110 | depends on HAS_IOMEM && HAS_DMA |
6166e533 | 111 | select VIRTIO |
a7f7f624 | 112 | help |
6166e533 | 113 | This drivers provides support for memory mapped virtio |
edfd52e6 PM |
114 | platform device driver. |
115 | ||
116 | If unsure, say N. | |
117 | ||
81a054ce PM |
118 | config VIRTIO_MMIO_CMDLINE_DEVICES |
119 | bool "Memory mapped virtio devices parameter parsing" | |
120 | depends on VIRTIO_MMIO | |
a7f7f624 | 121 | help |
81a054ce PM |
122 | Allow virtio-mmio devices instantiation via the kernel command line |
123 | or module parameters. Be aware that using incorrect parameters (base | |
124 | address in particular) can crash your system - you have been warned. | |
8c27ceff | 125 | See Documentation/admin-guide/kernel-parameters.rst for details. |
81a054ce PM |
126 | |
127 | If unsure, say 'N'. | |
128 | ||
7b95fec6 | 129 | endif # VIRTIO_MENU |