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