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