1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 23d249d4cSJiri Pirkomenuconfig NET_TEAM 3513fe16aSKees Cook tristate "Ethernet team driver support" 4*a7f7f624SMasahiro Yamada help 53d249d4cSJiri Pirko This allows one to create virtual interfaces that teams together 63d249d4cSJiri Pirko multiple ethernet devices. 73d249d4cSJiri Pirko 83d249d4cSJiri Pirko Team devices can be added using the "ip" command from the 93d249d4cSJiri Pirko iproute2 package: 103d249d4cSJiri Pirko 113d249d4cSJiri Pirko "ip link add link [ address MAC ] [ NAME ] type team" 123d249d4cSJiri Pirko 133d249d4cSJiri Pirko To compile this driver as a module, choose M here: the module 143d249d4cSJiri Pirko will be called team. 153d249d4cSJiri Pirko 163d249d4cSJiri Pirkoif NET_TEAM 173d249d4cSJiri Pirko 185fc88991SJiri Pirkoconfig NET_TEAM_MODE_BROADCAST 195fc88991SJiri Pirko tristate "Broadcast mode support" 205fc88991SJiri Pirko depends on NET_TEAM 21*a7f7f624SMasahiro Yamada help 225fc88991SJiri Pirko Basic mode where packets are transmitted always by all suitable ports. 235fc88991SJiri Pirko 241d76efe1SJiri Pirko All added ports are setup to have team's device address. 255fc88991SJiri Pirko 265fc88991SJiri Pirko To compile this team mode as a module, choose M here: the module 275fc88991SJiri Pirko will be called team_mode_broadcast. 285fc88991SJiri Pirko 293d249d4cSJiri Pirkoconfig NET_TEAM_MODE_ROUNDROBIN 303d249d4cSJiri Pirko tristate "Round-robin mode support" 313d249d4cSJiri Pirko depends on NET_TEAM 32*a7f7f624SMasahiro Yamada help 333d249d4cSJiri Pirko Basic mode where port used for transmitting packets is selected in 343d249d4cSJiri Pirko round-robin fashion using packet counter. 353d249d4cSJiri Pirko 361d76efe1SJiri Pirko All added ports are setup to have team's device address. 373d249d4cSJiri Pirko 383d249d4cSJiri Pirko To compile this team mode as a module, choose M here: the module 393d249d4cSJiri Pirko will be called team_mode_roundrobin. 403d249d4cSJiri Pirko 41753f9939SJiri Pirkoconfig NET_TEAM_MODE_RANDOM 42753f9939SJiri Pirko tristate "Random mode support" 43753f9939SJiri Pirko depends on NET_TEAM 44*a7f7f624SMasahiro Yamada help 45753f9939SJiri Pirko Basic mode where port used for transmitting packets is selected 46753f9939SJiri Pirko randomly. 47753f9939SJiri Pirko 48753f9939SJiri Pirko All added ports are setup to have team's device address. 49753f9939SJiri Pirko 50753f9939SJiri Pirko To compile this team mode as a module, choose M here: the module 51753f9939SJiri Pirko will be called team_mode_random. 52753f9939SJiri Pirko 533d249d4cSJiri Pirkoconfig NET_TEAM_MODE_ACTIVEBACKUP 543d249d4cSJiri Pirko tristate "Active-backup mode support" 553d249d4cSJiri Pirko depends on NET_TEAM 56*a7f7f624SMasahiro Yamada help 573d249d4cSJiri Pirko Only one port is active at a time and the rest of ports are used 583d249d4cSJiri Pirko for backup. 593d249d4cSJiri Pirko 603d249d4cSJiri Pirko Mac addresses of ports are not modified. Userspace is responsible 613d249d4cSJiri Pirko to do so. 623d249d4cSJiri Pirko 633d249d4cSJiri Pirko To compile this team mode as a module, choose M here: the module 643d249d4cSJiri Pirko will be called team_mode_activebackup. 653d249d4cSJiri Pirko 6601d7f30aSJiri Pirkoconfig NET_TEAM_MODE_LOADBALANCE 6701d7f30aSJiri Pirko tristate "Load-balance mode support" 6801d7f30aSJiri Pirko depends on NET_TEAM 69*a7f7f624SMasahiro Yamada help 7001d7f30aSJiri Pirko This mode provides load balancing functionality. Tx port selection 7101d7f30aSJiri Pirko is done using BPF function set up from userspace (bpf_hash_func 7201d7f30aSJiri Pirko option) 7301d7f30aSJiri Pirko 7401d7f30aSJiri Pirko To compile this team mode as a module, choose M here: the module 7501d7f30aSJiri Pirko will be called team_mode_loadbalance. 7601d7f30aSJiri Pirko 773d249d4cSJiri Pirkoendif # NET_TEAM 78