/openbmc/linux/drivers/net/ethernet/intel/ice/ |
H A D | ice_lag.c | 29 static void ice_lag_set_primary(struct ice_lag *lag) in ice_lag_set_primary() argument 31 struct ice_pf *pf = lag->pf; in ice_lag_set_primary() 36 if (lag->role != ICE_LAG_UNSET && lag->role != ICE_LAG_BACKUP) { in ice_lag_set_primary() 38 netdev_name(lag->netdev)); in ice_lag_set_primary() 42 lag->role = ICE_LAG_PRIMARY; in ice_lag_set_primary() 49 static void ice_lag_set_backup(struct ice_lag *lag) in ice_lag_set_backup() argument 51 struct ice_pf *pf = lag->pf; in ice_lag_set_backup() 56 if (lag->role != ICE_LAG_UNSET && lag->role != ICE_LAG_PRIMARY) { in ice_lag_set_backup() 58 netdev_name(lag->netdev)); in ice_lag_set_backup() 62 lag->role = ICE_LAG_BACKUP; in ice_lag_set_backup() [all …]
|
H A D | ice_dcb_nl.c | 73 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setets() 178 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setdcbx() 274 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setpfc() 341 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_set_pfc_cfg() 402 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setstate() 479 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_set_pg_tc_cfg_tx() 538 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_set_pg_bwg_cfg_tx() 763 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setapp() 879 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_delapp() 985 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_cee_set_all()
|
H A D | ice_vf_lib.c | 847 struct ice_lag *lag; in ice_reset_vf() local 872 lag = pf->lag; in ice_reset_vf() 874 if (lag && lag->bonded && lag->primary) { in ice_reset_vf() 875 act_prt = lag->active_port; in ice_reset_vf() 877 lag->upper_netdev) in ice_reset_vf() 878 ice_lag_move_vf_nodes_cfg(lag, act_prt, pri_prt); in ice_reset_vf() 967 if (lag && lag->bonded && lag->primary && in ice_reset_vf() 969 ice_lag_move_vf_nodes_cfg(lag, pri_prt, act_prt); in ice_reset_vf()
|
H A D | ice_lag.h | 51 struct ice_lag *lag; member 66 void ice_lag_move_vf_nodes_cfg(struct ice_lag *lag, u8 src_prt, u8 dst_prt);
|
H A D | ice_virtchnl.c | 1590 struct ice_lag *lag; in ice_vc_cfg_qs_msg() local 1595 lag = pf->lag; in ice_vc_cfg_qs_msg() 1599 if (lag && lag->bonded && lag->primary) { in ice_vc_cfg_qs_msg() 1600 act_prt = lag->active_port; in ice_vc_cfg_qs_msg() 1602 lag->upper_netdev) in ice_vc_cfg_qs_msg() 1603 ice_lag_move_vf_nodes_cfg(lag, act_prt, pri_prt); in ice_vc_cfg_qs_msg() 1726 if (lag && lag->bonded && lag->primary && in ice_vc_cfg_qs_msg() 1728 ice_lag_move_vf_nodes_cfg(lag, pri_prt, act_prt); in ice_vc_cfg_qs_msg() 1745 if (lag && lag->bonded && lag->primary && in ice_vc_cfg_qs_msg() 1747 ice_lag_move_vf_nodes_cfg(lag, pri_prt, act_prt); in ice_vc_cfg_qs_msg()
|
/openbmc/linux/drivers/net/ethernet/netronome/nfp/flower/ |
H A D | lag_conf.c | 86 static unsigned int nfp_fl_get_next_pkt_number(struct nfp_fl_lag *lag) in nfp_fl_get_next_pkt_number() argument 88 lag->pkt_num++; in nfp_fl_get_next_pkt_number() 89 lag->pkt_num &= NFP_FL_LAG_PKT_NUMBER_MASK; in nfp_fl_get_next_pkt_number() 91 return lag->pkt_num; in nfp_fl_get_next_pkt_number() 94 static void nfp_fl_increment_version(struct nfp_fl_lag *lag) in nfp_fl_increment_version() argument 97 lag->batch_ver += 2; in nfp_fl_increment_version() 98 lag->batch_ver &= NFP_FL_LAG_VERSION_MASK; in nfp_fl_increment_version() 101 if (!lag->batch_ver) in nfp_fl_increment_version() 102 lag->batch_ver += 2; in nfp_fl_increment_version() 106 nfp_fl_lag_group_create(struct nfp_fl_lag *lag, struct net_device *master) in nfp_fl_lag_group_create() argument [all …]
|
H A D | main.h | 155 struct nfp_tun_neigh_lag lag; member 171 struct nfp_tun_neigh_lag lag; member 655 void nfp_flower_lag_init(struct nfp_fl_lag *lag); 656 void nfp_flower_lag_cleanup(struct nfp_fl_lag *lag); 657 int nfp_flower_lag_reset(struct nfp_fl_lag *lag); 670 struct nfp_tun_neigh_lag *lag);
|
/openbmc/linux/drivers/net/ethernet/marvell/prestera/ |
H A D | prestera_main.c | 618 port->lag = NULL; in prestera_port_create() 877 struct prestera_lag *lag; in prestera_lag_by_dev() local 881 lag = &sw->lags[id]; in prestera_lag_by_dev() 882 if (lag->dev == dev) in prestera_lag_by_dev() 883 return lag; in prestera_lag_by_dev() 892 struct prestera_lag *lag; in prestera_lag_id() local 897 lag = prestera_lag_by_id(sw, id); in prestera_lag_id() 898 if (lag->member_count) { in prestera_lag_id() 899 if (lag->dev == lag_dev) { in prestera_lag_id() 916 struct prestera_lag *lag = NULL; in prestera_lag_create() local [all …]
|
/openbmc/linux/drivers/net/ethernet/microchip/lan966x/ |
H A D | lan966x_lag.c | 10 int p, lag, i; in lan966x_lag_set_aggr_pgids() local 39 for (lag = 0; lag < lan966x->num_phys_ports; ++lag) { in lan966x_lag_set_aggr_pgids() 40 struct lan966x_port *port = lan966x->ports[lag]; in lan966x_lag_set_aggr_pgids() 46 if (!port || !port->bond || (visited & BIT(lag))) in lan966x_lag_set_aggr_pgids() 81 for (p = lag; p < lan966x->num_phys_ports; p++) { in lan966x_lag_set_aggr_pgids() 267 struct netdev_lag_lower_state_info *lag = info->lower_state_info; in lan966x_lag_port_changelowerstate() local 275 is_active = lag->link_up && lag->tx_enabled; in lan966x_lag_port_changelowerstate() 333 bool lan966x_lag_first_port(struct net_device *lag, struct net_device *dev) in lan966x_lag_first_port() argument 339 if (port->bond != lag) in lan966x_lag_first_port() 342 bond_mask = lan966x_lag_get_mask(lan966x, lag); in lan966x_lag_first_port()
|
H A D | lan966x_mac.c | 25 bool lag; member 217 mac_entry->lag = port->bond ? true : false; in lan966x_mac_alloc_entry() 346 mac_entry->lag) { in lan966x_mac_lag_replace_port_entry() 369 mac_entry->lag) { in lan966x_mac_lag_remove_port_entry()
|
/openbmc/linux/net/dsa/ |
H A D | switch.c | 354 static int dsa_switch_do_lag_fdb_add(struct dsa_switch *ds, struct dsa_lag *lag, in dsa_switch_do_lag_fdb_add() argument 361 mutex_lock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_add() 363 a = dsa_mac_addr_find(&lag->fdbs, addr, vid, db); in dsa_switch_do_lag_fdb_add() 366 trace_dsa_lag_fdb_add_bump(lag->dev, addr, vid, &db, in dsa_switch_do_lag_fdb_add() 377 err = ds->ops->lag_fdb_add(ds, *lag, addr, vid, db); in dsa_switch_do_lag_fdb_add() 378 trace_dsa_lag_fdb_add_hw(lag->dev, addr, vid, &db, err); in dsa_switch_do_lag_fdb_add() 388 list_add_tail(&a->list, &lag->fdbs); in dsa_switch_do_lag_fdb_add() 391 mutex_unlock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_add() 396 static int dsa_switch_do_lag_fdb_del(struct dsa_switch *ds, struct dsa_lag *lag, in dsa_switch_do_lag_fdb_del() argument 403 mutex_lock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_del() [all …]
|
H A D | port.c | 593 if (!dp->lag) in dsa_port_lag_change() 615 struct dsa_lag *lag; in dsa_port_lag_create() local 617 lag = dsa_tree_lag_find(ds->dst, lag_dev); in dsa_port_lag_create() 618 if (lag) { in dsa_port_lag_create() 619 refcount_inc(&lag->refcount); in dsa_port_lag_create() 620 dp->lag = lag; in dsa_port_lag_create() 624 lag = kzalloc(sizeof(*lag), GFP_KERNEL); in dsa_port_lag_create() 625 if (!lag) in dsa_port_lag_create() 628 refcount_set(&lag->refcount, 1); in dsa_port_lag_create() 629 mutex_init(&lag->fdb_lock); in dsa_port_lag_create() [all …]
|
H A D | trace.c | 15 sprintf(buf, "lag %s id %d", db->lag.dev->name, db->lag.id); in dsa_db_print()
|
H A D | tag_dsa.c | 261 struct dsa_lag *lag; in dsa_rcv_ll() local 267 lag = dsa_lag_by_id(cpu_dp->dst, source_port + 1); in dsa_rcv_ll() 268 skb->dev = lag ? lag->dev : NULL; in dsa_rcv_ll()
|
H A D | dsa.h | 20 void dsa_lag_map(struct dsa_switch_tree *dst, struct dsa_lag *lag); 21 void dsa_lag_unmap(struct dsa_switch_tree *dst, struct dsa_lag *lag);
|
H A D | switch.h | 63 struct dsa_lag *lag; member 79 struct dsa_lag lag; member
|
H A D | dsa.c | 64 void dsa_lag_map(struct dsa_switch_tree *dst, struct dsa_lag *lag) in dsa_lag_map() argument 70 dst->lags[id - 1] = lag; in dsa_lag_map() 71 lag->id = id; in dsa_lag_map() 92 void dsa_lag_unmap(struct dsa_switch_tree *dst, struct dsa_lag *lag) in dsa_lag_unmap() argument 97 if (dsa_lag_by_id(dst, id) == lag) { in dsa_lag_unmap() 99 lag->id = 0; in dsa_lag_unmap() 112 return dp->lag; in dsa_tree_lag_find() 1677 return a->lag.dev == b->lag.dev; in dsa_db_equal()
|
/openbmc/linux/include/net/ |
H A D | dsa.h | 193 struct dsa_lag *lag = dsa_lag_by_id(dst, id); in dsa_lag_id() local 195 if (lag->dev == lag_dev) in dsa_lag_id() 196 return lag->id; in dsa_lag_id() 300 struct dsa_lag *lag; member 352 struct dsa_lag lag; member 702 return dp->lag ? dp->lag->id : 0; in dsa_port_lag_id_get() 707 return dp->lag ? dp->lag->dev : NULL; in dsa_port_lag_dev_get() 711 const struct dsa_lag *lag) in dsa_port_offloads_lag() argument 713 return dsa_port_lag_dev_get(dp) == lag->dev; in dsa_port_offloads_lag() 730 if (dp->lag) in dsa_port_to_bridge_port() [all …]
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | Makefile | 17 fs_counters.o fs_ft_pool.o rl.o lag/debugfs.o lag/lag.o dev.o events.o wq.o lib/gid.o \ 41 mlx5_core-$(CONFIG_MLX5_ESWITCH) += lag/mp.o lag/port_sel.o lib/geneve.o lib/port_tun.o \ 43 en/mapping.o lag/mpesw.o
|
/openbmc/linux/drivers/net/dsa/qca/ |
H A D | qca8k-common.c | 1043 struct dsa_lag lag, in qca8k_lag_can_offload() argument 1050 if (!lag.id) in qca8k_lag_can_offload() 1053 dsa_lag_foreach_port(dp, ds->dst, &lag) in qca8k_lag_can_offload() 1080 struct dsa_lag lag, in qca8k_lag_setup_hash() argument 1083 struct net_device *lag_dev = lag.dev; in qca8k_lag_setup_hash() 1104 if (i != lag.id && dsa_lag_by_id(ds->dst, i)) { in qca8k_lag_setup_hash() 1128 struct dsa_lag lag, bool delete) in qca8k_lag_refresh_portmap() argument 1135 id = lag.id - 1; in qca8k_lag_refresh_portmap() 1196 int qca8k_port_lag_join(struct dsa_switch *ds, int port, struct dsa_lag lag, in qca8k_port_lag_join() argument 1202 if (!qca8k_lag_can_offload(ds, lag, info, extack)) in qca8k_port_lag_join() [all …]
|
/openbmc/linux/tools/testing/selftests/net/forwarding/ |
H A D | mirror_gre_bridge_1q_lag.sh | 146 team_create lag loadbalance $swp3 $swp4 147 ip link set dev lag master br1 156 ip link set dev lag nomaster 157 team_destroy lag
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlxsw/ |
H A D | pci_hw.h | 143 MLXSW_ITEM32(pci, cqe0, lag, 0x00, 23, 1); 144 MLXSW_ITEM32(pci, cqe12, lag, 0x00, 24, 1); 145 mlxsw_pci_cqe_item_helpers(lag, 0, 12, 12);
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlx5/core/lag/ |
H A D | mpesw.h | 22 struct mlx5_lag *lag; member
|
H A D | mpesw.c | 6 #include "lag/lag.h" 133 struct mlx5_lag *ldev = mpesww->lag; in mlx5_mpesw_work() 169 work->lag = ldev; in mlx5_lag_mpesw_queue_work()
|
/openbmc/linux/drivers/net/dsa/ocelot/ |
H A D | felix.c | 50 int lag; in felix_cpu_port_for_master() local 54 lag = ocelot_bond_get_id(ocelot, master); in felix_cpu_port_for_master() 57 return lag; in felix_cpu_port_for_master() 827 static int felix_lag_fdb_add(struct dsa_switch *ds, struct dsa_lag lag, in felix_lag_fdb_add() argument 837 return ocelot_lag_fdb_add(ocelot, lag.dev, addr, vid, bridge_dev); in felix_lag_fdb_add() 840 static int felix_lag_fdb_del(struct dsa_switch *ds, struct dsa_lag lag, in felix_lag_fdb_del() argument 850 return ocelot_lag_fdb_del(ocelot, lag.dev, addr, vid, bridge_dev); in felix_lag_fdb_del() 943 struct dsa_lag lag, in felix_lag_join() argument 950 err = ocelot_port_lag_join(ocelot, port, lag.dev, info, extack); in felix_lag_join() 958 return felix_port_change_master(ds, port, lag.dev, extack); in felix_lag_join() [all …]
|