1# SPDX-License-Identifier: GPL-2.0-only
2menuconfig NET_TEAM
3	tristate "Ethernet team driver support"
4	help
5	  This allows one to create virtual interfaces that teams together
6	  multiple ethernet devices.
7
8	  Team devices can be added using the "ip" command from the
9	  iproute2 package:
10
11	  "ip link add link [ address MAC ] [ NAME ] type team"
12
13	  To compile this driver as a module, choose M here: the module
14	  will be called team.
15
16if NET_TEAM
17
18config NET_TEAM_MODE_BROADCAST
19	tristate "Broadcast mode support"
20	depends on NET_TEAM
21	help
22	  Basic mode where packets are transmitted always by all suitable ports.
23
24	  All added ports are setup to have team's device address.
25
26	  To compile this team mode as a module, choose M here: the module
27	  will be called team_mode_broadcast.
28
29config NET_TEAM_MODE_ROUNDROBIN
30	tristate "Round-robin mode support"
31	depends on NET_TEAM
32	help
33	  Basic mode where port used for transmitting packets is selected in
34	  round-robin fashion using packet counter.
35
36	  All added ports are setup to have team's device address.
37
38	  To compile this team mode as a module, choose M here: the module
39	  will be called team_mode_roundrobin.
40
41config NET_TEAM_MODE_RANDOM
42	tristate "Random mode support"
43	depends on NET_TEAM
44	help
45	  Basic mode where port used for transmitting packets is selected
46	  randomly.
47
48	  All added ports are setup to have team's device address.
49
50	  To compile this team mode as a module, choose M here: the module
51	  will be called team_mode_random.
52
53config NET_TEAM_MODE_ACTIVEBACKUP
54	tristate "Active-backup mode support"
55	depends on NET_TEAM
56	help
57	  Only one port is active at a time and the rest of ports are used
58	  for backup.
59
60	  Mac addresses of ports are not modified. Userspace is responsible
61	  to do so.
62
63	  To compile this team mode as a module, choose M here: the module
64	  will be called team_mode_activebackup.
65
66config NET_TEAM_MODE_LOADBALANCE
67	tristate "Load-balance mode support"
68	depends on NET_TEAM
69	help
70	  This mode provides load balancing functionality. Tx port selection
71	  is done using BPF function set up from userspace (bpf_hash_func
72	  option)
73
74	  To compile this team mode as a module, choose M here: the module
75	  will be called team_mode_loadbalance.
76
77endif # NET_TEAM
78