Lines Matching defs:mlxsw_sp

84 	struct mlxsw_sp *mlxsw_sp;  member
213 static int mlxsw_sp_rif_counter_edit(struct mlxsw_sp *mlxsw_sp, u16 rif_index, in mlxsw_sp_rif_counter_edit()
233 int mlxsw_sp_rif_counter_value_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_counter_value_get()
276 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_counter_fetch_clear() local
316 static int mlxsw_sp_rif_counter_clear(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_counter_clear()
329 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_counter_alloc() local
366 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_counter_free() local
384 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_counters_alloc() local
531 static struct mlxsw_sp_fib *mlxsw_sp_fib_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_create()
563 static void mlxsw_sp_fib_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_destroy()
574 mlxsw_sp_lpm_tree_find_unused(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_lpm_tree_find_unused()
587 static int mlxsw_sp_lpm_tree_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_alloc()
598 static void mlxsw_sp_lpm_tree_free(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_free()
610 mlxsw_sp_lpm_tree_left_struct_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_left_struct_set()
634 mlxsw_sp_lpm_tree_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_create()
665 static void mlxsw_sp_lpm_tree_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_destroy()
672 mlxsw_sp_lpm_tree_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_get()
697 static void mlxsw_sp_lpm_tree_put(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_put()
706 static int mlxsw_sp_lpm_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_lpm_init()
755 static void mlxsw_sp_lpm_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_lpm_fini()
775 static struct mlxsw_sp_vr *mlxsw_sp_vr_find_unused(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_vr_find_unused()
789 static int mlxsw_sp_vr_lpm_tree_bind(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_lpm_tree_bind()
800 static int mlxsw_sp_vr_lpm_tree_unbind(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_lpm_tree_unbind()
819 static struct mlxsw_sp_vr *mlxsw_sp_vr_find(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_find()
836 int mlxsw_sp_router_tb_id_vr_id(struct mlxsw_sp *mlxsw_sp, u32 tb_id, in mlxsw_sp_router_tb_id_vr_id()
866 static struct mlxsw_sp_vr *mlxsw_sp_vr_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_create()
918 static void mlxsw_sp_vr_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_destroy()
931 static struct mlxsw_sp_vr *mlxsw_sp_vr_get(struct mlxsw_sp *mlxsw_sp, u32 tb_id, in mlxsw_sp_vr_get()
943 static void mlxsw_sp_vr_put(struct mlxsw_sp *mlxsw_sp, struct mlxsw_sp_vr *vr) in mlxsw_sp_vr_put()
965 static int mlxsw_sp_vr_lpm_tree_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_lpm_tree_replace()
986 static int mlxsw_sp_vrs_lpm_tree_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vrs_lpm_tree_replace()
1029 static int mlxsw_sp_vrs_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_vrs_init()
1054 static void mlxsw_sp_vrs_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_vrs_fini()
1145 mlxsw_sp_ipip_ol_ipip_lb_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_ol_ipip_lb_create()
1169 mlxsw_sp_ipip_entry_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_alloc()
1209 static void mlxsw_sp_ipip_entry_dealloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_dealloc()
1221 mlxsw_sp_ipip_entry_saddr_matches(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_saddr_matches()
1239 static int mlxsw_sp_ipip_decap_parsing_depth_inc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_decap_parsing_depth_inc()
1255 static void mlxsw_sp_ipip_decap_parsing_depth_dec(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_decap_parsing_depth_dec()
1266 mlxsw_sp_fib_entry_decap_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_decap_init()
1295 static void mlxsw_sp_fib_entry_decap_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_decap_fini()
1315 mlxsw_sp_ipip_entry_demote_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_demote_decap()
1327 mlxsw_sp_ipip_entry_promote_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_promote_decap()
1341 mlxsw_sp_router_ip2me_fib_entry_find(struct mlxsw_sp *mlxsw_sp, u32 tb_id, in mlxsw_sp_router_ip2me_fib_entry_find()
1386 mlxsw_sp_ipip_entry_find_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_find_decap()
1438 mlxsw_sp_ipip_entry_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_create()
1455 mlxsw_sp_ipip_entry_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_destroy()
1463 mlxsw_sp_ipip_entry_matches_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_matches_decap()
1481 mlxsw_sp_ipip_entry_find_by_decap(struct mlxsw_sp *mlxsw_sp, int ul_dev_ifindex, in mlxsw_sp_ipip_entry_find_by_decap()
1510 static bool mlxsw_sp_netdev_ipip_type(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdev_ipip_type()
1529 static bool mlxsw_sp_netdev_is_ipip_ol(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdev_is_ipip_ol()
1536 mlxsw_sp_ipip_entry_find_by_ol_dev(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_find_by_ol_dev()
1550 mlxsw_sp_ipip_entry_find_by_ul_dev(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_find_by_ul_dev()
1574 static bool mlxsw_sp_netdev_is_ipip_ul(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdev_is_ipip_ul()
1580 static bool mlxsw_sp_netdevice_ipip_can_offload(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_can_offload()
1590 static int mlxsw_sp_netdevice_ipip_ol_reg_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_reg_event()
1617 static void mlxsw_sp_netdevice_ipip_ol_unreg_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_unreg_event()
1628 mlxsw_sp_ipip_entry_ol_up_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_ol_up_event()
1647 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_ipip_lb_op() local
1678 static int mlxsw_sp_netdevice_ipip_ol_update_mtu(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_update_mtu()
1699 static void mlxsw_sp_netdevice_ipip_ol_up_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_up_event()
1710 mlxsw_sp_ipip_entry_ol_down_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_ol_down_event()
1717 static void mlxsw_sp_netdevice_ipip_ol_down_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_down_event()
1730 static void mlxsw_sp_rif_migrate_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_migrate_destroy()
1751 mlxsw_sp_ipip_entry_ol_lb_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_ol_lb_update()
1785 int __mlxsw_sp_ipip_entry_update_tunnel(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_ipip_entry_update_tunnel()
1819 static int mlxsw_sp_netdevice_ipip_ol_vrf_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_vrf_event()
1834 mlxsw_sp_netdevice_ipip_ul_vrf_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ul_vrf_event()
1861 mlxsw_sp_netdevice_ipip_ul_up_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ul_up_event()
1870 mlxsw_sp_netdevice_ipip_ul_down_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ul_down_event()
1883 mlxsw_sp_netdevice_ipip_ol_change_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_change_event()
1911 void mlxsw_sp_ipip_entry_demote_tunnel(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_demote_tunnel()
1928 mlxsw_sp_ipip_demote_tunnel_by_saddr(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_demote_tunnel_by_saddr()
1949 static void mlxsw_sp_ipip_demote_tunnel_by_ul_netdev(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_demote_tunnel_by_ul_netdev()
1967 static int mlxsw_sp_netdevice_ipip_ol_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_event()
2010 __mlxsw_sp_netdevice_ipip_ul_event(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_netdevice_ipip_ul_event()
2044 mlxsw_sp_netdevice_ipip_ul_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ul_event()
2085 int mlxsw_sp_router_nve_promote_decap(struct mlxsw_sp *mlxsw_sp, u32 ul_tb_id, in mlxsw_sp_router_nve_promote_decap()
2134 void mlxsw_sp_router_nve_demote_decap(struct mlxsw_sp *mlxsw_sp, u32 ul_tb_id, in mlxsw_sp_router_nve_demote_decap()
2161 static bool mlxsw_sp_router_nve_is_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_nve_is_decap()
2245 int mlxsw_sp_neigh_counter_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_counter_get()
2257 mlxsw_sp_neigh_entry_alloc(struct mlxsw_sp *mlxsw_sp, struct neighbour *n, in mlxsw_sp_neigh_entry_alloc()
2279 mlxsw_sp_neigh_entry_insert(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_insert()
2288 mlxsw_sp_neigh_entry_remove(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_remove()
2297 mlxsw_sp_neigh_counter_should_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_counter_should_alloc()
2320 mlxsw_sp_neigh_counter_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_counter_alloc()
2333 mlxsw_sp_neigh_counter_free(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_counter_free()
2344 mlxsw_sp_neigh_entry_create(struct mlxsw_sp *mlxsw_sp, struct neighbour *n) in mlxsw_sp_neigh_entry_create()
2374 mlxsw_sp_neigh_entry_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_destroy()
2385 mlxsw_sp_neigh_entry_lookup(struct mlxsw_sp *mlxsw_sp, struct neighbour *n) in mlxsw_sp_neigh_entry_lookup()
2395 mlxsw_sp_router_neighs_update_interval_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_neighs_update_interval_init()
2409 static void mlxsw_sp_router_neigh_ent_ipv4_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_ent_ipv4_process()
2441 static void mlxsw_sp_router_neigh_ent_ipv6_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_ent_ipv6_process()
2468 static void mlxsw_sp_router_neigh_ent_ipv6_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_ent_ipv6_process()
2475 static void mlxsw_sp_router_neigh_rec_ipv4_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_rec_ipv4_process()
2498 static void mlxsw_sp_router_neigh_rec_ipv6_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_rec_ipv6_process()
2507 static void mlxsw_sp_router_neigh_rec_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_rec_process()
2543 __mlxsw_sp_router_neighs_update_rauhtd(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_router_neighs_update_rauhtd()
2570 static int mlxsw_sp_router_neighs_update_rauhtd(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_neighs_update_rauhtd()
2595 static void mlxsw_sp_router_neighs_update_nh(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_neighs_update_nh()
2610 mlxsw_sp_router_neighs_update_work_schedule(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_neighs_update_work_schedule()
2670 mlxsw_sp_router_neigh_entry_op4(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_entry_op4()
2687 mlxsw_sp_router_neigh_entry_op6(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_entry_op6()
2718 mlxsw_sp_neigh_entry_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_update()
2752 mlxsw_sp_neigh_entry_counter_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_counter_update()
2765 struct mlxsw_sp *mlxsw_sp; member
2773 struct mlxsw_sp *mlxsw_sp = net_work->mlxsw_sp; in mlxsw_sp_router_neigh_event_work() local
2827 struct mlxsw_sp *mlxsw_sp = net_work->mlxsw_sp; in mlxsw_sp_router_mp_hash_event_work() local
2839 struct mlxsw_sp *mlxsw_sp = net_work->mlxsw_sp; in mlxsw_sp_router_update_priority_work() local
2943 static int mlxsw_sp_neigh_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_neigh_init()
2968 static void mlxsw_sp_neigh_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_neigh_fini()
2975 static void mlxsw_sp_neigh_rif_gone_sync(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_rif_gone_sync()
2988 struct mlxsw_sp *mlxsw_sp; member
3007 static int mlxsw_sp_neigh_rif_made_sync(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_rif_made_sync()
3153 void mlxsw_sp_nexthop_counter_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_counter_alloc()
3169 void mlxsw_sp_nexthop_counter_free(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_counter_free()
3178 int mlxsw_sp_nexthop_counter_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_counter_get()
3500 static int mlxsw_sp_nexthop_group_insert(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_group_insert()
3512 static void mlxsw_sp_nexthop_group_remove(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_group_remove()
3525 mlxsw_sp_nexthop4_group_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_lookup()
3538 mlxsw_sp_nexthop6_group_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_lookup()
3556 static int mlxsw_sp_nexthop_insert(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_insert()
3563 static void mlxsw_sp_nexthop_remove(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_remove()
3571 mlxsw_sp_nexthop_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_lookup()
3578 static int mlxsw_sp_adj_index_mass_update_vr(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_adj_index_mass_update_vr()
3594 static int mlxsw_sp_adj_index_mass_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_adj_index_mass_update()
3625 static int __mlxsw_sp_nexthop_eth_update(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_nexthop_eth_update()
3666 int mlxsw_sp_nexthop_eth_update(struct mlxsw_sp *mlxsw_sp, u32 adj_index, in mlxsw_sp_nexthop_eth_update()
3684 static int __mlxsw_sp_nexthop_ipip_update(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_nexthop_ipip_update()
3696 static int mlxsw_sp_nexthop_ipip_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_ipip_update()
3715 static int mlxsw_sp_nexthop_update(struct mlxsw_sp *mlxsw_sp, u32 adj_index, in mlxsw_sp_nexthop_update()
3733 mlxsw_sp_nexthop_group_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_group_update()
3766 mlxsw_sp_nexthop_fib_entries_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_fib_entries_update()
3806 static void mlxsw_sp_adj_grp_size_round_up(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_adj_grp_size_round_up()
3827 static void mlxsw_sp_adj_grp_size_round_down(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_adj_grp_size_round_down()
3845 static int mlxsw_sp_fix_adj_grp_size(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fix_adj_grp_size()
3923 mlxsw_sp_nexthop4_group_offload_refresh(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_offload_refresh()
3957 mlxsw_sp_nexthop6_group_offload_refresh(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_offload_refresh()
3972 mlxsw_sp_nexthop_bucket_offload_refresh(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_bucket_offload_refresh()
3990 mlxsw_sp_nexthop_obj_group_offload_refresh(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_group_offload_refresh()
4023 mlxsw_sp_nexthop_group_offload_refresh(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_group_offload_refresh()
4040 mlxsw_sp_nexthop_group_refresh(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_group_refresh()
4174 mlxsw_sp_nexthop_dead_neigh_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_dead_neigh_replace()
4228 mlxsw_sp_nexthop_neigh_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_neigh_update()
4273 static int mlxsw_sp_nexthop_neigh_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_neigh_init()
4332 static void mlxsw_sp_nexthop_neigh_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_neigh_fini()
4371 static void mlxsw_sp_nexthop_ipip_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_ipip_init()
4391 static void mlxsw_sp_nexthop_ipip_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_ipip_fini()
4403 static bool mlxsw_sp_nexthop4_ipip_type(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_ipip_type()
4414 static int mlxsw_sp_nexthop_type_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_type_init()
4454 static int mlxsw_sp_nexthop_type_rif_made(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_type_rif_made()
4467 static void mlxsw_sp_nexthop_type_rif_gone(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_type_rif_gone()
4480 static void mlxsw_sp_nexthop_type_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_type_fini()
4487 static int mlxsw_sp_nexthop4_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_init()
4538 static void mlxsw_sp_nexthop4_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_fini()
4547 static void mlxsw_sp_nexthop4_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_event()
4570 static void mlxsw_sp_nexthop_rif_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_rif_update()
4595 static int mlxsw_sp_nexthop_rif_made_sync(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_rif_made_sync()
4624 static void mlxsw_sp_nexthop_rif_gone_sync(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_rif_gone_sync()
4636 static int mlxsw_sp_adj_trap_entry_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_adj_trap_entry_init()
4666 static void mlxsw_sp_adj_trap_entry_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_adj_trap_entry_fini()
4672 static int mlxsw_sp_nexthop_group_inc(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_nexthop_group_inc()
4688 static void mlxsw_sp_nexthop_group_dec(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_nexthop_group_dec()
4697 mlxsw_sp_nh_grp_activity_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nh_grp_activity_get()
4727 mlxsw_sp_nh_grp_activity_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nh_grp_activity_update()
4744 mlxsw_sp_nh_grp_activity_work_schedule(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_nh_grp_activity_work_schedule()
4776 mlxsw_sp_nexthop_obj_single_validate(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_single_validate()
4793 mlxsw_sp_nexthop_obj_group_entry_validate(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_group_entry_validate()
4816 mlxsw_sp_nexthop_obj_group_validate(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_group_validate()
4842 mlxsw_sp_nexthop_obj_res_group_size_validate(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_res_group_size_validate()
4885 mlxsw_sp_nexthop_obj_res_group_validate(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_res_group_validate()
4912 static int mlxsw_sp_nexthop_obj_validate(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_validate()
4945 static bool mlxsw_sp_nexthop_obj_is_gateway(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_is_gateway()
4964 static void mlxsw_sp_nexthop_obj_blackhole_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_blackhole_init()
4976 static void mlxsw_sp_nexthop_obj_blackhole_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_blackhole_fini()
4984 mlxsw_sp_nexthop_obj_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_init()
5036 static void mlxsw_sp_nexthop_obj_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_fini()
5048 mlxsw_sp_nexthop_obj_group_info_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_group_info_init()
5142 mlxsw_sp_nexthop_obj_group_info_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_group_info_fini()
5167 mlxsw_sp_nexthop_obj_group_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_group_create()
5201 mlxsw_sp_nexthop_obj_group_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_group_destroy()
5214 mlxsw_sp_nexthop_obj_group_lookup(struct mlxsw_sp *mlxsw_sp, u32 id) in mlxsw_sp_nexthop_obj_group_lookup()
5225 static int mlxsw_sp_nexthop_obj_group_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_group_add()
5232 mlxsw_sp_nexthop_obj_group_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_group_replace()
5302 static int mlxsw_sp_nexthop_obj_new(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_new()
5328 static void mlxsw_sp_nexthop_obj_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_del()
5348 static int mlxsw_sp_nexthop_obj_bucket_query(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_bucket_query()
5379 mlxsw_sp_nexthop_obj_bucket_adj_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_bucket_adj_update()
5427 static int mlxsw_sp_nexthop_obj_bucket_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_obj_bucket_replace()
5513 static bool mlxsw_sp_fi_is_gateway(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fi_is_gateway()
5523 mlxsw_sp_nexthop4_group_info_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_info_init()
5570 mlxsw_sp_nexthop4_group_info_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_info_fini()
5588 mlxsw_sp_nexthop4_group_create(struct mlxsw_sp *mlxsw_sp, struct fib_info *fi) in mlxsw_sp_nexthop4_group_create()
5629 mlxsw_sp_nexthop4_group_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_destroy()
5642 static int mlxsw_sp_nexthop4_group_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_get()
5668 static void mlxsw_sp_nexthop4_group_put(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_put()
5744 mlxsw_sp_fib4_offload_failed_flag_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_offload_failed_flag_set()
5763 mlxsw_sp_fib4_entry_hw_flags_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_hw_flags_set()
5788 mlxsw_sp_fib4_entry_hw_flags_clear(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_hw_flags_clear()
5812 mlxsw_sp_fib6_offload_failed_flag_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_offload_failed_flag_set()
5827 mlxsw_sp_fib6_offload_failed_flag_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_offload_failed_flag_set()
5836 mlxsw_sp_fib6_entry_hw_flags_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_hw_flags_set()
5856 mlxsw_sp_fib6_entry_hw_flags_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_hw_flags_set()
5864 mlxsw_sp_fib6_entry_hw_flags_clear(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_hw_flags_clear()
5878 mlxsw_sp_fib6_entry_hw_flags_clear(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_hw_flags_clear()
5885 mlxsw_sp_fib_entry_hw_flags_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_hw_flags_set()
5899 mlxsw_sp_fib_entry_hw_flags_clear(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_hw_flags_clear()
5913 mlxsw_sp_fib_entry_hw_flags_refresh(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_hw_flags_refresh()
5955 static int mlxsw_sp_fib_entry_op_remote(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_remote()
5991 static int mlxsw_sp_fib_entry_op_local(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_local()
6015 static int mlxsw_sp_fib_entry_op_trap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_trap()
6026 static int mlxsw_sp_fib_entry_op_blackhole(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_blackhole()
6040 mlxsw_sp_fib_entry_op_unreachable(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_unreachable()
6057 mlxsw_sp_fib_entry_op_ipip_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_ipip_decap()
6081 static int mlxsw_sp_fib_entry_op_nve_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_nve_decap()
6093 static int __mlxsw_sp_fib_entry_op(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_fib_entry_op()
6118 static int mlxsw_sp_fib_entry_op(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op()
6132 static int mlxsw_sp_fib_entry_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_update()
6139 static int mlxsw_sp_fib_entry_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_del()
6147 mlxsw_sp_fib4_entry_type_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_type_set()
6205 mlxsw_sp_fib_entry_type_unset(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_type_unset()
6218 mlxsw_sp_fib4_entry_type_unset(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_type_unset()
6225 mlxsw_sp_fib4_entry_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_create()
6270 static void mlxsw_sp_fib4_entry_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_destroy()
6284 mlxsw_sp_fib4_entry_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_lookup()
6370 static int mlxsw_sp_fib_lpm_tree_link(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_lpm_tree_link()
6402 static void mlxsw_sp_fib_lpm_tree_unlink(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_lpm_tree_unlink()
6433 static int mlxsw_sp_fib_node_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_init()
6456 static void mlxsw_sp_fib_node_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_fini()
6467 mlxsw_sp_fib_node_get(struct mlxsw_sp *mlxsw_sp, u32 tb_id, const void *addr, in mlxsw_sp_fib_node_get()
6504 static void mlxsw_sp_fib_node_put(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_put()
6516 static int mlxsw_sp_fib_node_entry_link(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_entry_link()
6536 mlxsw_sp_fib_node_entry_unlink(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_entry_unlink()
6563 mlxsw_sp_router_fib4_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fib4_replace()
6623 static void mlxsw_sp_router_fib4_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fib4_del()
6714 static bool mlxsw_sp_nexthop6_ipip_type(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_ipip_type()
6722 static int mlxsw_sp_nexthop6_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_init()
6756 static void mlxsw_sp_nexthop6_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_fini()
6764 static bool mlxsw_sp_rt6_is_gateway(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rt6_is_gateway()
6772 mlxsw_sp_nexthop6_group_info_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_info_init()
6824 mlxsw_sp_nexthop6_group_info_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_info_fini()
6842 mlxsw_sp_nexthop6_group_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_create()
6881 mlxsw_sp_nexthop6_group_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_destroy()
6893 static int mlxsw_sp_nexthop6_group_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_get()
6927 static void mlxsw_sp_nexthop6_group_put(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_put()
6945 mlxsw_sp_nexthop6_group_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_update()
6992 mlxsw_sp_fib6_entry_nexthop_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_nexthop_add()
7028 mlxsw_sp_fib6_entry_nexthop_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_nexthop_del()
7050 mlxsw_sp_fib6_entry_type_set_local(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_type_set_local()
7083 static int mlxsw_sp_fib6_entry_type_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_type_set()
7118 mlxsw_sp_fib6_entry_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_create()
7178 mlxsw_sp_fib6_entry_type_unset(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_type_unset()
7184 static void mlxsw_sp_fib6_entry_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_destroy()
7199 mlxsw_sp_fib6_entry_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_lookup()
7251 static int mlxsw_sp_router_fib6_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fib6_replace()
7315 static int mlxsw_sp_router_fib6_append(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fib6_append()
7357 static void mlxsw_sp_router_fib6_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fib6_del()
7402 static int mlxsw_sp_router_fibmr_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fibmr_add()
7417 static void mlxsw_sp_router_fibmr_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fibmr_del()
7433 mlxsw_sp_router_fibmr_vif_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fibmr_vif_add()
7452 mlxsw_sp_router_fibmr_vif_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fibmr_vif_del()
7467 static void mlxsw_sp_fib4_node_flush(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_node_flush()
7479 static void mlxsw_sp_fib6_node_flush(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_node_flush()
7491 static void mlxsw_sp_fib_node_flush(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_flush()
7504 static void mlxsw_sp_vr_fib_flush(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_fib_flush()
7520 static void mlxsw_sp_router_fib_flush(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_fib_flush()
7560 struct mlxsw_sp *mlxsw_sp; member
7616 struct mlxsw_sp *mlxsw_sp = fib_work->mlxsw_sp; in mlxsw_sp_router_fib4_event_work() local
7653 struct mlxsw_sp *mlxsw_sp = fib_work->mlxsw_sp; in mlxsw_sp_router_fib6_event_work() local
7699 struct mlxsw_sp *mlxsw_sp = fib_work->mlxsw_sp; in mlxsw_sp_router_fibmr_event_work() local
7809 struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_fib_rule_event()
7923 mlxsw_sp_rif_find_by_dev(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_find_by_dev()
7937 bool mlxsw_sp_rif_exists(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_exists()
7949 u16 mlxsw_sp_rif_vid(struct mlxsw_sp *mlxsw_sp, const struct net_device *dev) in mlxsw_sp_rif_vid()
7972 static int mlxsw_sp_router_rif_disable(struct mlxsw_sp *mlxsw_sp, u16 rif) in mlxsw_sp_router_rif_disable()
7986 static int mlxsw_sp_router_rif_made_sync(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_rif_made_sync()
8006 static void mlxsw_sp_router_rif_gone_sync(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_rif_gone_sync()
8076 mlxsw_sp_dev_rif_type(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_dev_rif_type()
8097 static int mlxsw_sp_rif_index_alloc(struct mlxsw_sp *mlxsw_sp, u16 *p_rif_index, in mlxsw_sp_rif_index_alloc()
8112 static void mlxsw_sp_rif_index_free(struct mlxsw_sp *mlxsw_sp, u16 rif_index, in mlxsw_sp_rif_index_free()
8154 struct mlxsw_sp_rif *mlxsw_sp_rif_by_index(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_by_index()
8376 mlxsw_sp_rif_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_create()
8488 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_destroy() local
8525 void mlxsw_sp_rif_destroy_by_dev(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_destroy_by_dev()
8539 static void mlxsw_sp_rif_destroy_vlan_upper(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_destroy_vlan_upper()
8566 int mlxsw_sp_router_bridge_vlan_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_bridge_vlan_add()
8664 mlxsw_sp_rif_subport_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_subport_get()
8691 static int mlxsw_sp_rif_mac_profile_index_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_mac_profile_index_alloc()
8715 mlxsw_sp_rif_mac_profile_index_free(struct mlxsw_sp *mlxsw_sp, u8 mac_profile) in mlxsw_sp_rif_mac_profile_index_free()
8740 mlxsw_sp_rif_mac_profile_find(const struct mlxsw_sp *mlxsw_sp, const char *mac) in mlxsw_sp_rif_mac_profile_find()
8757 const struct mlxsw_sp *mlxsw_sp = priv; in mlxsw_sp_rif_mac_profiles_occ_get() local
8764 const struct mlxsw_sp *mlxsw_sp = priv; in mlxsw_sp_rifs_occ_get() local
8770 mlxsw_sp_rif_mac_profile_create(struct mlxsw_sp *mlxsw_sp, const char *mac, in mlxsw_sp_rif_mac_profile_create()
8792 static void mlxsw_sp_rif_mac_profile_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_mac_profile_destroy()
8802 static int mlxsw_sp_rif_mac_profile_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_mac_profile_get()
8823 static void mlxsw_sp_rif_mac_profile_put(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_mac_profile_put()
8841 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_mac_profile_is_shared() local
8855 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_mac_profile_edit() local
8868 mlxsw_sp_rif_mac_profile_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_mac_profile_replace()
8896 struct mlxsw_sp *mlxsw_sp = mlxsw_sp_port->mlxsw_sp; in __mlxsw_sp_port_vlan_router_join() local
8966 struct mlxsw_sp *mlxsw_sp = mlxsw_sp_port_vlan->mlxsw_sp_port->mlxsw_sp; in mlxsw_sp_port_vlan_router_join_existing() local
8980 struct mlxsw_sp *mlxsw_sp = mlxsw_sp_port_vlan->mlxsw_sp_port->mlxsw_sp; in mlxsw_sp_port_vlan_router_leave() local
9057 static int mlxsw_sp_inetaddr_bridge_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_inetaddr_bridge_event()
9107 static int mlxsw_sp_inetaddr_vlan_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_inetaddr_vlan_event()
9155 static int mlxsw_sp_rif_vrrp_op(struct mlxsw_sp *mlxsw_sp, u16 rif_index, in mlxsw_sp_rif_vrrp_op()
9179 static int mlxsw_sp_rif_macvlan_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_macvlan_add()
9215 static void __mlxsw_sp_rif_macvlan_del(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_rif_macvlan_del()
9233 void mlxsw_sp_rif_macvlan_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_macvlan_del()
9241 static int mlxsw_sp_inetaddr_macvlan_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_inetaddr_macvlan_event()
9257 static int __mlxsw_sp_inetaddr_event(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_inetaddr_event()
9312 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_inetaddr_valid_event() local
9334 struct mlxsw_sp *mlxsw_sp; member
9344 struct mlxsw_sp *mlxsw_sp = inet6addr_work->mlxsw_sp; in mlxsw_sp_inet6addr_event_work() local
9397 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_inet6addr_valid_event() local
9417 static int mlxsw_sp_rif_edit(struct mlxsw_sp *mlxsw_sp, u16 rif_index, in mlxsw_sp_rif_edit()
9436 mlxsw_sp_router_port_change_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_port_change_event()
9500 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_router_port_pre_changeaddr_event() local
9524 static bool mlxsw_sp_router_netdevice_interesting(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_netdevice_interesting()
9665 mlxsw_sp_netdevice_offload_xstats_cmd(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_offload_xstats_cmd()
9695 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_netdevice_router_port_event() local
9720 static int mlxsw_sp_port_vrf_join(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_port_vrf_join()
9738 static void mlxsw_sp_port_vrf_leave(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_port_vrf_leave()
9762 struct mlxsw_sp *mlxsw_sp = mlxsw_sp_lower_get(l3_dev); in mlxsw_sp_netdevice_vrf_event() local
9790 struct mlxsw_sp *mlxsw_sp; member
9851 int mlxsw_sp_netdevice_enslavement_replay(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_enslavement_replay()
9885 void mlxsw_sp_netdevice_deslavement_replay(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_deslavement_replay()
10021 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_router_netdevice_event() local
10062 struct mlxsw_sp *mlxsw_sp; member
10071 struct mlxsw_sp *mlxsw_sp = rms->mlxsw_sp; in mlxsw_sp_macvlan_replay_upper() local
10139 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_subport_op() local
10235 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_fid_op() local
10247 u16 mlxsw_sp_router_port(const struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_port()
10256 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_fid_configure() local
10318 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_fid_deconfigure() local
10410 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_vlan_op() local
10425 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_vlan_configure() local
10486 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_vlan_deconfigure() local
10558 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp1_rif_ipip_lb_configure() local
10583 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp1_rif_ipip_lb_deconfigure() local
10611 struct mlxsw_sp *mlxsw_sp = ul_rif->mlxsw_sp; in mlxsw_sp_rif_ipip_lb_ul_rif_op() local
10623 mlxsw_sp_ul_rif_create(struct mlxsw_sp *mlxsw_sp, struct mlxsw_sp_vr *vr, in mlxsw_sp_ul_rif_create()
10665 struct mlxsw_sp *mlxsw_sp = ul_rif->mlxsw_sp; in mlxsw_sp_ul_rif_destroy() local
10677 mlxsw_sp_ul_rif_get(struct mlxsw_sp *mlxsw_sp, u32 tb_id, in mlxsw_sp_ul_rif_get()
10709 struct mlxsw_sp *mlxsw_sp = ul_rif->mlxsw_sp; in mlxsw_sp_ul_rif_put() local
10722 int mlxsw_sp_router_ul_rif_get(struct mlxsw_sp *mlxsw_sp, u32 ul_tb_id, in mlxsw_sp_router_ul_rif_get()
10740 void mlxsw_sp_router_ul_rif_put(struct mlxsw_sp *mlxsw_sp, u16 ul_rif_index) in mlxsw_sp_router_ul_rif_put()
10761 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp2_rif_ipip_lb_configure() local
10786 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp2_rif_ipip_lb_deconfigure() local
10809 static int mlxsw_sp_rifs_table_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_rifs_table_init()
10835 static void mlxsw_sp_rifs_table_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_rifs_table_fini()
10840 static int mlxsw_sp_rifs_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_rifs_init()
10881 static void mlxsw_sp_rifs_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_rifs_fini()
10901 mlxsw_sp_ipip_config_tigcr(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_ipip_config_tigcr()
10909 static int mlxsw_sp_ipips_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_ipips_init()
10925 static int mlxsw_sp1_ipips_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp1_ipips_init()
10931 static int mlxsw_sp2_ipips_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp2_ipips_init()
10937 static void mlxsw_sp_ipips_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_ipips_fini()
11045 static void mlxsw_sp_mp4_hash_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_mp4_hash_init()
11105 static void mlxsw_sp_mp6_hash_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_mp6_hash_init()
11163 static int mlxsw_sp_mp_hash_parsing_depth_adjust(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_mp_hash_parsing_depth_adjust()
11182 static int mlxsw_sp_mp_hash_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_mp_hash_init()
11225 static void mlxsw_sp_mp_hash_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_mp_hash_fini()
11233 static int mlxsw_sp_mp_hash_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_mp_hash_init()
11238 static void mlxsw_sp_mp_hash_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_mp_hash_fini()
11243 static int mlxsw_sp_dscp_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_dscp_init()
11261 static int __mlxsw_sp_router_init(struct mlxsw_sp *mlxsw_sp) in __mlxsw_sp_router_init()
11279 static void __mlxsw_sp_router_fini(struct mlxsw_sp *mlxsw_sp) in __mlxsw_sp_router_fini()
11287 static int mlxsw_sp_lb_rif_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lb_rif_init()
11318 static void mlxsw_sp_lb_rif_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_lb_rif_fini()
11324 static int mlxsw_sp1_router_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp1_router_init()
11340 static int mlxsw_sp2_router_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp2_router_init()
11356 int mlxsw_sp_router_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_init()
11535 void mlxsw_sp_router_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_fini()