Lines Matching refs:fid
98 const struct mlxsw_sp_fid *fid);
464 struct mlxsw_sp_fid *fid = mlxsw_sp_port_vlan->fid; in mlxsw_sp_port_vlan_find_by_fid() local
466 if (fid && mlxsw_sp_fid_index(fid) == fid_index) in mlxsw_sp_port_vlan_find_by_fid()
594 return mlxsw_sp_fid_flood_set(mlxsw_sp_port_vlan->fid, in mlxsw_sp_port_bridge_vlan_flood_set()
985 struct mlxsw_sp_fid *fid; in mlxsw_sp_port_vlan_fid_join() local
989 fid = bridge_device->ops->fid_get(bridge_device, vid, extack); in mlxsw_sp_port_vlan_fid_join()
990 if (IS_ERR(fid)) in mlxsw_sp_port_vlan_fid_join()
991 return PTR_ERR(fid); in mlxsw_sp_port_vlan_fid_join()
993 err = mlxsw_sp_fid_flood_set(fid, MLXSW_SP_FLOOD_TYPE_UC, local_port, in mlxsw_sp_port_vlan_fid_join()
998 err = mlxsw_sp_fid_flood_set(fid, MLXSW_SP_FLOOD_TYPE_MC, local_port, in mlxsw_sp_port_vlan_fid_join()
1003 err = mlxsw_sp_fid_flood_set(fid, MLXSW_SP_FLOOD_TYPE_BC, local_port, in mlxsw_sp_port_vlan_fid_join()
1008 err = mlxsw_sp_fid_port_vid_map(fid, mlxsw_sp_port, vid); in mlxsw_sp_port_vlan_fid_join()
1012 mlxsw_sp_port_vlan->fid = fid; in mlxsw_sp_port_vlan_fid_join()
1017 mlxsw_sp_fid_flood_set(fid, MLXSW_SP_FLOOD_TYPE_BC, local_port, false); in mlxsw_sp_port_vlan_fid_join()
1019 mlxsw_sp_fid_flood_set(fid, MLXSW_SP_FLOOD_TYPE_MC, local_port, false); in mlxsw_sp_port_vlan_fid_join()
1021 mlxsw_sp_fid_flood_set(fid, MLXSW_SP_FLOOD_TYPE_UC, local_port, false); in mlxsw_sp_port_vlan_fid_join()
1023 mlxsw_sp_fid_put(fid); in mlxsw_sp_port_vlan_fid_join()
1031 struct mlxsw_sp_fid *fid = mlxsw_sp_port_vlan->fid; in mlxsw_sp_port_vlan_fid_leave() local
1035 mlxsw_sp_port_vlan->fid = NULL; in mlxsw_sp_port_vlan_fid_leave()
1036 mlxsw_sp_fid_port_vid_unmap(fid, mlxsw_sp_port, vid); in mlxsw_sp_port_vlan_fid_leave()
1037 mlxsw_sp_fid_flood_set(fid, MLXSW_SP_FLOOD_TYPE_BC, local_port, false); in mlxsw_sp_port_vlan_fid_leave()
1038 mlxsw_sp_fid_flood_set(fid, MLXSW_SP_FLOOD_TYPE_MC, local_port, false); in mlxsw_sp_port_vlan_fid_leave()
1039 mlxsw_sp_fid_flood_set(fid, MLXSW_SP_FLOOD_TYPE_UC, local_port, false); in mlxsw_sp_port_vlan_fid_leave()
1040 mlxsw_sp_fid_put(fid); in mlxsw_sp_port_vlan_fid_leave()
1112 struct mlxsw_sp_fid *fid = mlxsw_sp_port_vlan->fid; in mlxsw_sp_port_vlan_bridge_leave() local
1118 if (WARN_ON(mlxsw_sp_fid_type(fid) != MLXSW_SP_FID_TYPE_8021Q && in mlxsw_sp_port_vlan_bridge_leave()
1119 mlxsw_sp_fid_type(fid) != MLXSW_SP_FID_TYPE_8021D)) in mlxsw_sp_port_vlan_bridge_leave()
1134 mlxsw_sp_fid_index(fid)); in mlxsw_sp_port_vlan_bridge_leave()
1294 const char *mac, u16 fid, in mlxsw_sp_port_fdb_tunnel_uc_op() argument
1322 mlxsw_sp_sfd_rec_policy(dynamic), mac, fid, in mlxsw_sp_port_fdb_tunnel_uc_op()
1339 const char *mac, u16 fid, bool adding, in __mlxsw_sp_port_fdb_uc_op() argument
1352 mlxsw_reg_sfd_uc_pack(sfd_pl, 0, policy, mac, fid, action, local_port); in __mlxsw_sp_port_fdb_uc_op()
1367 const char *mac, u16 fid, bool adding, in mlxsw_sp_port_fdb_uc_op() argument
1370 return __mlxsw_sp_port_fdb_uc_op(mlxsw_sp, local_port, mac, fid, adding, in mlxsw_sp_port_fdb_uc_op()
1375 int mlxsw_sp_rif_fdb_op(struct mlxsw_sp *mlxsw_sp, const char *mac, u16 fid, in mlxsw_sp_rif_fdb_op() argument
1378 return __mlxsw_sp_port_fdb_uc_op(mlxsw_sp, 0, mac, fid, adding, in mlxsw_sp_rif_fdb_op()
1384 const char *mac, u16 fid, u16 lag_vid, in mlxsw_sp_port_fdb_uc_lag_op() argument
1397 mac, fid, MLXSW_REG_SFD_REC_ACTION_NOP, in mlxsw_sp_port_fdb_uc_lag_op()
1434 fid_index = mlxsw_sp_fid_index(mlxsw_sp_port_vlan->fid); in mlxsw_sp_port_fdb_set()
1450 u16 fid, u16 mid_idx, bool adding) in mlxsw_sp_port_mdb_op() argument
1461 mlxsw_reg_sfd_mc_pack(sfd_pl, 0, addr, fid, in mlxsw_sp_port_mdb_op()
1527 u16 fid) in __mlxsw_sp_mc_get() argument
1532 if (ether_addr_equal(mid->addr, addr) && mid->fid == fid) in __mlxsw_sp_mc_get()
1609 err = mlxsw_sp_port_mdb_op(mlxsw_sp, mid->addr, mid->fid, mid_idx, in mlxsw_sp_mc_write_mdb_entry()
1627 return mlxsw_sp_port_mdb_op(mlxsw_sp, mid->addr, mid->fid, mid->mid, in mlxsw_sp_mc_remove_mdb_entry()
1635 u16 fid) in __mlxsw_sp_mc_alloc() argument
1649 mid->fid = fid; in __mlxsw_sp_mc_alloc()
1710 fid_index = mlxsw_sp_fid_index(mlxsw_sp_port_vlan->fid); in mlxsw_sp_port_mdb_add()
1897 fid_index = mlxsw_sp_fid_index(mlxsw_sp_port_vlan->fid); in mlxsw_sp_port_mdb_del()
1981 if (mlxsw_sp_port->default_vlan->fid) in mlxsw_sp_bridge_vlan_aware_port_join()
2027 struct mlxsw_sp_fid *fid; in mlxsw_sp_bridge_vlan_aware_vxlan_join() local
2040 fid = mlxsw_sp_fid_8021q_get(mlxsw_sp, vid); in mlxsw_sp_bridge_vlan_aware_vxlan_join()
2041 if (IS_ERR(fid)) { in mlxsw_sp_bridge_vlan_aware_vxlan_join()
2043 return PTR_ERR(fid); in mlxsw_sp_bridge_vlan_aware_vxlan_join()
2046 if (mlxsw_sp_fid_vni_is_set(fid)) { in mlxsw_sp_bridge_vlan_aware_vxlan_join()
2052 err = mlxsw_sp_nve_fid_enable(mlxsw_sp, fid, ¶ms, extack); in mlxsw_sp_bridge_vlan_aware_vxlan_join()
2060 mlxsw_sp_fid_put(fid); in mlxsw_sp_bridge_vlan_aware_vxlan_join()
2116 const struct mlxsw_sp_fid *fid) in mlxsw_sp_bridge_8021q_fid_vid() argument
2118 return mlxsw_sp_fid_8021q_vid(fid); in mlxsw_sp_bridge_8021q_fid_vid()
2168 if (mlxsw_sp_port_vlan->fid) in mlxsw_sp_bridge_8021d_port_join()
2205 struct mlxsw_sp_fid *fid; in mlxsw_sp_bridge_8021d_vxlan_join() local
2208 fid = mlxsw_sp_fid_8021d_get(mlxsw_sp, bridge_device->dev->ifindex); in mlxsw_sp_bridge_8021d_vxlan_join()
2209 if (IS_ERR(fid)) { in mlxsw_sp_bridge_8021d_vxlan_join()
2214 if (mlxsw_sp_fid_vni_is_set(fid)) { in mlxsw_sp_bridge_8021d_vxlan_join()
2220 err = mlxsw_sp_nve_fid_enable(mlxsw_sp, fid, ¶ms, extack); in mlxsw_sp_bridge_8021d_vxlan_join()
2228 mlxsw_sp_fid_put(fid); in mlxsw_sp_bridge_8021d_vxlan_join()
2256 const struct mlxsw_sp_fid *fid) in mlxsw_sp_bridge_8021d_fid_vid() argument
2435 struct mlxsw_sp_fid *fid; in mlxsw_sp_bridge_vxlan_leave() local
2438 fid = mlxsw_sp_fid_lookup_by_vni(mlxsw_sp, vxlan->cfg.vni); in mlxsw_sp_bridge_vxlan_leave()
2439 if (!fid) in mlxsw_sp_bridge_vxlan_leave()
2442 mlxsw_sp_nve_fid_disable(mlxsw_sp, fid); in mlxsw_sp_bridge_vxlan_leave()
2446 mlxsw_sp_fid_put(fid); in mlxsw_sp_bridge_vxlan_leave()
2447 mlxsw_sp_fid_put(fid); in mlxsw_sp_bridge_vxlan_leave()
2540 u16 vid, fid; in mlxsw_sp_fdb_notify_mac_process() local
2544 mlxsw_reg_sfn_mac_unpack(sfn_pl, rec_index, mac, &fid, &local_port); in mlxsw_sp_fdb_notify_mac_process()
2554 if (mlxsw_sp_fid_is_dummy(mlxsw_sp, fid)) in mlxsw_sp_fdb_notify_mac_process()
2557 mlxsw_sp_port_vlan = mlxsw_sp_port_vlan_find_by_fid(mlxsw_sp_port, fid); in mlxsw_sp_fdb_notify_mac_process()
2573 err = mlxsw_sp_port_fdb_uc_op(mlxsw_sp, local_port, mac, fid, in mlxsw_sp_fdb_notify_mac_process()
2605 u16 vid, fid; in mlxsw_sp_fdb_notify_mac_lag_process() local
2609 mlxsw_reg_sfn_mac_lag_unpack(sfn_pl, rec_index, mac, &fid, &lag_id); in mlxsw_sp_fdb_notify_mac_lag_process()
2616 if (mlxsw_sp_fid_is_dummy(mlxsw_sp, fid)) in mlxsw_sp_fdb_notify_mac_lag_process()
2619 mlxsw_sp_port_vlan = mlxsw_sp_port_vlan_find_by_fid(mlxsw_sp_port, fid); in mlxsw_sp_fdb_notify_mac_lag_process()
2633 lag_vid = mlxsw_sp_fid_lag_vid_valid(mlxsw_sp_port_vlan->fid) ? in mlxsw_sp_fdb_notify_mac_lag_process()
2637 err = mlxsw_sp_port_fdb_uc_lag_op(mlxsw_sp, lag_id, mac, fid, lag_vid, in mlxsw_sp_fdb_notify_mac_lag_process()
2659 const struct mlxsw_sp_fid *fid, in __mlxsw_sp_fdb_notify_mac_uc_tunnel_process() argument
2669 err = mlxsw_sp_fid_nve_ifindex(fid, &nve_ifindex); in __mlxsw_sp_fdb_notify_mac_uc_tunnel_process()
2673 err = mlxsw_sp_fid_vni(fid, p_vni); in __mlxsw_sp_fdb_notify_mac_uc_tunnel_process()
2703 *p_vid = bridge_device->ops->fid_vid(bridge_device, fid); in __mlxsw_sp_fdb_notify_mac_uc_tunnel_process()
2717 struct mlxsw_sp_fid *fid; in mlxsw_sp_fdb_notify_mac_uc_tunnel_process() local
2727 fid = mlxsw_sp_fid_lookup_by_index(mlxsw_sp, fid_index); in mlxsw_sp_fdb_notify_mac_uc_tunnel_process()
2728 if (!fid) in mlxsw_sp_fdb_notify_mac_uc_tunnel_process()
2737 err = __mlxsw_sp_fdb_notify_mac_uc_tunnel_process(mlxsw_sp, fid, adding, in mlxsw_sp_fdb_notify_mac_uc_tunnel_process()
2756 mlxsw_sp_fid_put(fid); in mlxsw_sp_fdb_notify_mac_uc_tunnel_process()
2763 mlxsw_sp_fid_put(fid); in mlxsw_sp_fdb_notify_mac_uc_tunnel_process()
2870 struct mlxsw_sp_fid *fid, __be32 vni) in mlxsw_sp_switchdev_bridge_vxlan_fdb_event() argument
2891 mlxsw_sp_fid_index(fid), in mlxsw_sp_switchdev_bridge_vxlan_fdb_event()
2905 mlxsw_sp_fid_index(fid), in mlxsw_sp_switchdev_bridge_vxlan_fdb_event()
2923 struct mlxsw_sp_fid *fid; in mlxsw_sp_switchdev_bridge_nve_fdb_event() local
2950 fid = bridge_device->ops->fid_lookup(bridge_device, in mlxsw_sp_switchdev_bridge_nve_fdb_event()
2952 if (!fid) in mlxsw_sp_switchdev_bridge_nve_fdb_event()
2955 err = mlxsw_sp_fid_vni(fid, &vni); in mlxsw_sp_switchdev_bridge_nve_fdb_event()
2959 mlxsw_sp_switchdev_bridge_vxlan_fdb_event(mlxsw_sp, switchdev_work, fid, in mlxsw_sp_switchdev_bridge_nve_fdb_event()
2963 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_bridge_nve_fdb_event()
3030 struct mlxsw_sp_fid *fid; in mlxsw_sp_switchdev_vxlan_fdb_add() local
3041 fid = mlxsw_sp_fid_lookup_by_vni(mlxsw_sp, vxlan_fdb_info->vni); in mlxsw_sp_switchdev_vxlan_fdb_add()
3042 if (!fid) in mlxsw_sp_switchdev_vxlan_fdb_add()
3049 err = mlxsw_sp_nve_flood_ip_add(mlxsw_sp, fid, proto, &addr); in mlxsw_sp_switchdev_vxlan_fdb_add()
3051 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_fdb_add()
3057 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_fdb_add()
3066 vid = bridge_device->ops->fid_vid(bridge_device, fid); in mlxsw_sp_switchdev_vxlan_fdb_add()
3071 mlxsw_sp_fid_index(fid), proto, in mlxsw_sp_switchdev_vxlan_fdb_add()
3081 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_fdb_add()
3087 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_fdb_add()
3102 struct mlxsw_sp_fid *fid; in mlxsw_sp_switchdev_vxlan_fdb_del() local
3111 fid = mlxsw_sp_fid_lookup_by_vni(mlxsw_sp, vxlan_fdb_info->vni); in mlxsw_sp_switchdev_vxlan_fdb_del()
3112 if (!fid) in mlxsw_sp_switchdev_vxlan_fdb_del()
3119 mlxsw_sp_nve_flood_ip_del(mlxsw_sp, fid, proto, &addr); in mlxsw_sp_switchdev_vxlan_fdb_del()
3120 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_fdb_del()
3125 mlxsw_sp_fid_index(fid), proto, &addr, in mlxsw_sp_switchdev_vxlan_fdb_del()
3127 vid = bridge_device->ops->fid_vid(bridge_device, fid); in mlxsw_sp_switchdev_vxlan_fdb_del()
3131 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_fdb_del()
3307 struct mlxsw_sp_fid *fid; in mlxsw_sp_switchdev_vxlan_vlan_add() local
3329 fid = mlxsw_sp_fid_lookup_by_vni(mlxsw_sp, vni); in mlxsw_sp_switchdev_vxlan_vlan_add()
3330 if (!fid) { in mlxsw_sp_switchdev_vxlan_vlan_add()
3342 old_vid = mlxsw_sp_fid_8021q_vid(fid); in mlxsw_sp_switchdev_vxlan_vlan_add()
3345 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_vlan_add()
3349 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_vlan_add()
3357 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_vlan_add()
3365 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_vlan_add()
3391 struct mlxsw_sp_fid *fid; in mlxsw_sp_switchdev_vxlan_vlan_del() local
3396 fid = mlxsw_sp_fid_lookup_by_vni(mlxsw_sp, vni); in mlxsw_sp_switchdev_vxlan_vlan_del()
3397 if (!fid) in mlxsw_sp_switchdev_vxlan_vlan_del()
3401 if (mlxsw_sp_fid_8021q_vid(fid) != vid) in mlxsw_sp_switchdev_vxlan_vlan_del()
3407 mlxsw_sp_fid_put(fid); in mlxsw_sp_switchdev_vxlan_vlan_del()