menuconfig NET_TEAM
	tristate "Ethernet team driver support"
	---help---
	  This allows one to create virtual interfaces that teams together
	  multiple ethernet devices.

	  Team devices can be added using the "ip" command from the
	  iproute2 package:

	  "ip link add link [ address MAC ] [ NAME ] type team"

	  To compile this driver as a module, choose M here: the module
	  will be called team.

if NET_TEAM

config NET_TEAM_MODE_BROADCAST
	tristate "Broadcast mode support"
	depends on NET_TEAM
	---help---
	  Basic mode where packets are transmitted always by all suitable ports.

	  All added ports are setup to have team's device address.

	  To compile this team mode as a module, choose M here: the module
	  will be called team_mode_broadcast.

config NET_TEAM_MODE_ROUNDROBIN
	tristate "Round-robin mode support"
	depends on NET_TEAM
	---help---
	  Basic mode where port used for transmitting packets is selected in
	  round-robin fashion using packet counter.

	  All added ports are setup to have team's device address.

	  To compile this team mode as a module, choose M here: the module
	  will be called team_mode_roundrobin.

config NET_TEAM_MODE_RANDOM
	tristate "Random mode support"
	depends on NET_TEAM
	---help---
	  Basic mode where port used for transmitting packets is selected
	  randomly.

	  All added ports are setup to have team's device address.

	  To compile this team mode as a module, choose M here: the module
	  will be called team_mode_random.

config NET_TEAM_MODE_ACTIVEBACKUP
	tristate "Active-backup mode support"
	depends on NET_TEAM
	---help---
	  Only one port is active at a time and the rest of ports are used
	  for backup.

	  Mac addresses of ports are not modified. Userspace is responsible
	  to do so.

	  To compile this team mode as a module, choose M here: the module
	  will be called team_mode_activebackup.

config NET_TEAM_MODE_LOADBALANCE
	tristate "Load-balance mode support"
	depends on NET_TEAM
	---help---
	  This mode provides load balancing functionality. Tx port selection
	  is done using BPF function set up from userspace (bpf_hash_func
	  option)

	  To compile this team mode as a module, choose M here: the module
	  will be called team_mode_loadbalance.

endif # NET_TEAM
