xref: /openbmc/linux/net/openvswitch/Kconfig (revision 856caabf)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Open vSwitch
4#
5
6config OPENVSWITCH
7	tristate "Open vSwitch"
8	depends on INET
9	depends on !NF_CONNTRACK || \
10		   (NF_CONNTRACK && ((!NF_DEFRAG_IPV6 || NF_DEFRAG_IPV6) && \
11				     (!NF_NAT || NF_NAT) && \
12				     (!NETFILTER_CONNCOUNT || NETFILTER_CONNCOUNT)))
13	select LIBCRC32C
14	select MPLS
15	select NET_MPLS_GSO
16	select DST_CACHE
17	select NET_NSH
18	select NF_CONNTRACK_OVS if NF_CONNTRACK
19	select NF_NAT_OVS if NF_NAT
20	help
21	  Open vSwitch is a multilayer Ethernet switch targeted at virtualized
22	  environments.  In addition to supporting a variety of features
23	  expected in a traditional hardware switch, it enables fine-grained
24	  programmatic extension and flow-based control of the network.  This
25	  control is useful in a wide variety of applications but is
26	  particularly important in multi-server virtualization deployments,
27	  which are often characterized by highly dynamic endpoints and the
28	  need to maintain logical abstractions for multiple tenants.
29
30	  The Open vSwitch datapath provides an in-kernel fast path for packet
31	  forwarding.  It is complemented by a userspace daemon, ovs-vswitchd,
32	  which is able to accept configuration from a variety of sources and
33	  translate it into packet processing rules.
34
35	  See http://openvswitch.org for more information and userspace
36	  utilities.
37
38	  To compile this code as a module, choose M here: the module will be
39	  called openvswitch.
40
41	  If unsure, say N.
42
43config OPENVSWITCH_GRE
44	tristate "Open vSwitch GRE tunneling support"
45	depends on OPENVSWITCH
46	depends on NET_IPGRE
47	default OPENVSWITCH
48	help
49	  If you say Y here, then the Open vSwitch will be able create GRE
50	  vport.
51
52	  Say N to exclude this support and reduce the binary size.
53
54	  If unsure, say Y.
55
56config OPENVSWITCH_VXLAN
57	tristate "Open vSwitch VXLAN tunneling support"
58	depends on OPENVSWITCH
59	depends on VXLAN
60	default OPENVSWITCH
61	help
62	  If you say Y here, then the Open vSwitch will be able create vxlan vport.
63
64	  Say N to exclude this support and reduce the binary size.
65
66	  If unsure, say Y.
67
68config OPENVSWITCH_GENEVE
69	tristate "Open vSwitch Geneve tunneling support"
70	depends on OPENVSWITCH
71	depends on GENEVE
72	default OPENVSWITCH
73	help
74	  If you say Y here, then the Open vSwitch will be able create geneve vport.
75
76	  Say N to exclude this support and reduce the binary size.
77