xref: /openbmc/linux/drivers/vhost/Kconfig (revision fb574682)
1# SPDX-License-Identifier: GPL-2.0-only
2config 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
9config 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
16config VHOST
17	tristate
18	select VHOST_IOTLB
19	help
20	  This option is selected by any driver which needs to access
21	  the core of vhost.
22
23menuconfig VHOST_MENU
24	bool "VHOST drivers"
25	default y
26
27if VHOST_MENU
28
29config VHOST_NET
30	tristate "Host kernel accelerator for virtio net"
31	depends on NET && EVENTFD && (TUN || !TUN) && (TAP || !TAP)
32	select VHOST
33	help
34	  This kernel module can be loaded in host kernel to accelerate
35	  guest networking with virtio_net. Not to be confused with virtio_net
36	  module itself which needs to be loaded in guest kernel.
37
38	  To compile this driver as a module, choose M here: the module will
39	  be called vhost_net.
40
41config VHOST_SCSI
42	tristate "VHOST_SCSI TCM fabric driver"
43	depends on TARGET_CORE && EVENTFD
44	select VHOST
45	default n
46	help
47	Say M here to enable the vhost_scsi TCM fabric module
48	for use with virtio-scsi guests
49
50config VHOST_VSOCK
51	tristate "vhost virtio-vsock driver"
52	depends on VSOCKETS && EVENTFD
53	select VHOST
54	select VIRTIO_VSOCKETS_COMMON
55	default n
56	help
57	This kernel module can be loaded in the host kernel to provide AF_VSOCK
58	sockets for communicating with guests.  The guests must have the
59	virtio_transport.ko driver loaded to use the virtio-vsock device.
60
61	To compile this driver as a module, choose M here: the module will be called
62	vhost_vsock.
63
64config VHOST_VDPA
65	tristate "Vhost driver for vDPA-based backend"
66	depends on EVENTFD
67	select VHOST
68	depends on VDPA
69	help
70	  This kernel module can be loaded in host kernel to accelerate
71	  guest virtio devices with the vDPA-based backends.
72
73	  To compile this driver as a module, choose M here: the module
74	  will be called vhost_vdpa.
75
76config VHOST_CROSS_ENDIAN_LEGACY
77	bool "Cross-endian support for vhost"
78	default n
79	help
80	  This option allows vhost to support guests with a different byte
81	  ordering from host while using legacy virtio.
82
83	  Userspace programs can control the feature using the
84	  VHOST_SET_VRING_ENDIAN and VHOST_GET_VRING_ENDIAN ioctls.
85
86	  This is only useful on a few platforms (ppc64 and arm64). Since it
87	  adds some overhead, it is disabled by default.
88
89	  If unsure, say "N".
90
91endif
92