x86/cpu/amd: Make erratum #1054 a legacy erratum
[linux-2.6-microblaze.git] / drivers / vhost / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 config VHOST_IOTLB
3         tristate
4         help
5           Generic IOTLB implementation for vhost and vringh.
6           This option is selected by any driver which needs to support
7           an IOMMU in software.
8
9 config VHOST_RING
10         tristate
11         select VHOST_IOTLB
12         help
13           This option is selected by any driver which needs to access
14           the host side of a virtio ring.
15
16 config VHOST_DPN
17         bool
18         depends on !ARM || AEABI
19         default y
20         help
21           Anything selecting VHOST or VHOST_RING must depend on VHOST_DPN.
22           This excludes the deprecated ARM ABI since that forces a 4 byte
23           alignment on all structs - incompatible with virtio spec requirements.
24
25 config VHOST
26         tristate
27         select VHOST_IOTLB
28         help
29           This option is selected by any driver which needs to access
30           the core of vhost.
31
32 menuconfig VHOST_MENU
33         bool "VHOST drivers"
34         default y
35
36 if VHOST_MENU
37
38 config VHOST_NET
39         tristate "Host kernel accelerator for virtio net"
40         depends on NET && EVENTFD && (TUN || !TUN) && (TAP || !TAP) && VHOST_DPN
41         select VHOST
42         ---help---
43           This kernel module can be loaded in host kernel to accelerate
44           guest networking with virtio_net. Not to be confused with virtio_net
45           module itself which needs to be loaded in guest kernel.
46
47           To compile this driver as a module, choose M here: the module will
48           be called vhost_net.
49
50 config VHOST_SCSI
51         tristate "VHOST_SCSI TCM fabric driver"
52         depends on TARGET_CORE && EVENTFD && VHOST_DPN
53         select VHOST
54         default n
55         ---help---
56         Say M here to enable the vhost_scsi TCM fabric module
57         for use with virtio-scsi guests
58
59 config VHOST_VSOCK
60         tristate "vhost virtio-vsock driver"
61         depends on VSOCKETS && EVENTFD && VHOST_DPN
62         select VHOST
63         select VIRTIO_VSOCKETS_COMMON
64         default n
65         ---help---
66         This kernel module can be loaded in the host kernel to provide AF_VSOCK
67         sockets for communicating with guests.  The guests must have the
68         virtio_transport.ko driver loaded to use the virtio-vsock device.
69
70         To compile this driver as a module, choose M here: the module will be called
71         vhost_vsock.
72
73 config VHOST_VDPA
74         tristate "Vhost driver for vDPA-based backend"
75         depends on EVENTFD && VHOST_DPN
76         select VHOST
77         depends on VDPA
78         help
79           This kernel module can be loaded in host kernel to accelerate
80           guest virtio devices with the vDPA-based backends.
81
82           To compile this driver as a module, choose M here: the module
83           will be called vhost_vdpa.
84
85 config VHOST_CROSS_ENDIAN_LEGACY
86         bool "Cross-endian support for vhost"
87         default n
88         ---help---
89           This option allows vhost to support guests with a different byte
90           ordering from host while using legacy virtio.
91
92           Userspace programs can control the feature using the
93           VHOST_SET_VRING_ENDIAN and VHOST_GET_VRING_ENDIAN ioctls.
94
95           This is only useful on a few platforms (ppc64 and arm64). Since it
96           adds some overhead, it is disabled by default.
97
98           If unsure, say "N".
99
100 endif