1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Vsock protocol
4#
5
6config VSOCKETS
7	tristate "Virtual Socket protocol"
8	help
9	  Virtual Socket Protocol is a socket protocol similar to TCP/IP
10	  allowing communication between Virtual Machines and hypervisor
11	  or host.
12
13	  You should also select one or more hypervisor-specific transports
14	  below.
15
16	  To compile this driver as a module, choose M here: the module
17	  will be called vsock. If unsure, say N.
18
19config VSOCKETS_DIAG
20	tristate "Virtual Sockets monitoring interface"
21	depends on VSOCKETS
22	default y
23	help
24	  Support for PF_VSOCK sockets monitoring interface used by the ss tool.
25	  If unsure, say Y.
26
27	  Enable this module so userspace applications can query open sockets.
28
29config VSOCKETS_LOOPBACK
30	tristate "Virtual Sockets loopback transport"
31	depends on VSOCKETS
32	default y
33	select VIRTIO_VSOCKETS_COMMON
34	help
35	  This module implements a loopback transport for Virtual Sockets,
36	  using vmw_vsock_virtio_transport_common.
37
38	  To compile this driver as a module, choose M here: the module
39	  will be called vsock_loopback. If unsure, say N.
40
41config VMWARE_VMCI_VSOCKETS
42	tristate "VMware VMCI transport for Virtual Sockets"
43	depends on VSOCKETS && VMWARE_VMCI
44	help
45	  This module implements a VMCI transport for Virtual Sockets.
46
47	  Enable this transport if your Virtual Machine runs on a VMware
48	  hypervisor.
49
50	  To compile this driver as a module, choose M here: the module
51	  will be called vmw_vsock_vmci_transport. If unsure, say N.
52
53config VIRTIO_VSOCKETS
54	tristate "virtio transport for Virtual Sockets"
55	depends on VSOCKETS && VIRTIO
56	select VIRTIO_VSOCKETS_COMMON
57	help
58	  This module implements a virtio transport for Virtual Sockets.
59
60	  Enable this transport if your Virtual Machine host supports Virtual
61	  Sockets over virtio.
62
63	  To compile this driver as a module, choose M here: the module will be
64	  called vmw_vsock_virtio_transport. If unsure, say N.
65
66config VIRTIO_VSOCKETS_COMMON
67	tristate
68	help
69	  This option is selected by any driver which needs to access
70	  the virtio_vsock.  The module will be called
71	  vmw_vsock_virtio_transport_common.
72
73config HYPERV_VSOCKETS
74	tristate "Hyper-V transport for Virtual Sockets"
75	depends on VSOCKETS && HYPERV
76	help
77	  This module implements a Hyper-V transport for Virtual Sockets.
78
79	  Enable this transport if your Virtual Machine host supports Virtual
80	  Sockets over Hyper-V VMBus.
81
82	  To compile this driver as a module, choose M here: the module will be
83	  called hv_sock. If unsure, say N.
84