Lines Matching defs:mlxsw_sp
49 struct mlxsw_sp *mlxsw_sp; member
87 struct mlxsw_sp *mlxsw_sp; member
189 static int mlxsw_sp_rif_counter_edit(struct mlxsw_sp *mlxsw_sp, u16 rif_index, in mlxsw_sp_rif_counter_edit()
209 int mlxsw_sp_rif_counter_value_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_counter_value_get()
234 static int mlxsw_sp_rif_counter_clear(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_counter_clear()
244 int mlxsw_sp_rif_counter_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_counter_alloc()
277 void mlxsw_sp_rif_counter_free(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_counter_free()
298 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_counters_alloc() local
310 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_counters_free() local
441 static struct mlxsw_sp_fib *mlxsw_sp_fib_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_create()
473 static void mlxsw_sp_fib_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_destroy()
484 mlxsw_sp_lpm_tree_find_unused(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_lpm_tree_find_unused()
497 static int mlxsw_sp_lpm_tree_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_alloc()
508 static void mlxsw_sp_lpm_tree_free(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_free()
520 mlxsw_sp_lpm_tree_left_struct_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_left_struct_set()
544 mlxsw_sp_lpm_tree_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_create()
575 static void mlxsw_sp_lpm_tree_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_destroy()
582 mlxsw_sp_lpm_tree_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_get()
607 static void mlxsw_sp_lpm_tree_put(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_lpm_tree_put()
616 static int mlxsw_sp_lpm_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_lpm_init()
665 static void mlxsw_sp_lpm_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_lpm_fini()
685 static struct mlxsw_sp_vr *mlxsw_sp_vr_find_unused(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_vr_find_unused()
698 static int mlxsw_sp_vr_lpm_tree_bind(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_lpm_tree_bind()
709 static int mlxsw_sp_vr_lpm_tree_unbind(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_lpm_tree_unbind()
728 static struct mlxsw_sp_vr *mlxsw_sp_vr_find(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_find()
756 static struct mlxsw_sp_vr *mlxsw_sp_vr_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_create()
808 static void mlxsw_sp_vr_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_destroy()
821 static struct mlxsw_sp_vr *mlxsw_sp_vr_get(struct mlxsw_sp *mlxsw_sp, u32 tb_id, in mlxsw_sp_vr_get()
833 static void mlxsw_sp_vr_put(struct mlxsw_sp *mlxsw_sp, struct mlxsw_sp_vr *vr) in mlxsw_sp_vr_put()
855 static int mlxsw_sp_vr_lpm_tree_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_lpm_tree_replace()
876 static int mlxsw_sp_vrs_lpm_tree_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vrs_lpm_tree_replace()
918 static int mlxsw_sp_vrs_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_vrs_init()
943 static void mlxsw_sp_vrs_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_vrs_fini()
982 mlxsw_sp_ipip_ol_ipip_lb_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_ol_ipip_lb_create()
1005 mlxsw_sp_ipip_entry_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_alloc()
1052 mlxsw_sp_ipip_entry_saddr_matches(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_saddr_matches()
1071 mlxsw_sp_fib_entry_decap_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_decap_init()
1089 static void mlxsw_sp_fib_entry_decap_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_decap_fini()
1106 mlxsw_sp_ipip_entry_demote_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_demote_decap()
1118 mlxsw_sp_ipip_entry_promote_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_promote_decap()
1133 mlxsw_sp_ipip_entry_find_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_find_decap()
1185 mlxsw_sp_ipip_entry_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_create()
1202 mlxsw_sp_ipip_entry_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_destroy()
1210 mlxsw_sp_ipip_entry_matches_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_matches_decap()
1231 mlxsw_sp_ipip_entry_find_by_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_find_by_decap()
1248 static bool mlxsw_sp_netdev_ipip_type(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdev_ipip_type()
1267 bool mlxsw_sp_netdev_is_ipip_ol(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdev_is_ipip_ol()
1274 mlxsw_sp_ipip_entry_find_by_ol_dev(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_find_by_ol_dev()
1288 mlxsw_sp_ipip_entry_find_by_ul_dev(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_find_by_ul_dev()
1308 bool mlxsw_sp_netdev_is_ipip_ul(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdev_is_ipip_ul()
1314 static bool mlxsw_sp_netdevice_ipip_can_offload(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_can_offload()
1328 static int mlxsw_sp_netdevice_ipip_ol_reg_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_reg_event()
1355 static void mlxsw_sp_netdevice_ipip_ol_unreg_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_unreg_event()
1366 mlxsw_sp_ipip_entry_ol_up_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_ol_up_event()
1383 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_ipip_lb_op() local
1404 static int mlxsw_sp_netdevice_ipip_ol_update_mtu(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_update_mtu()
1426 static void mlxsw_sp_netdevice_ipip_ol_up_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_up_event()
1437 mlxsw_sp_ipip_entry_ol_down_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_ol_down_event()
1444 static void mlxsw_sp_netdevice_ipip_ol_down_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_down_event()
1458 mlxsw_sp_ipip_entry_ol_lb_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_ol_lb_update()
1495 int __mlxsw_sp_ipip_entry_update_tunnel(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_ipip_entry_update_tunnel()
1529 static int mlxsw_sp_netdevice_ipip_ol_vrf_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_vrf_event()
1561 mlxsw_sp_netdevice_ipip_ul_vrf_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ul_vrf_event()
1571 mlxsw_sp_netdevice_ipip_ul_up_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ul_up_event()
1580 mlxsw_sp_netdevice_ipip_ul_down_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ul_down_event()
1593 mlxsw_sp_netdevice_ipip_ol_change_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_change_event()
1621 void mlxsw_sp_ipip_entry_demote_tunnel(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_entry_demote_tunnel()
1638 mlxsw_sp_ipip_demote_tunnel_by_saddr(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_demote_tunnel_by_saddr()
1659 static void mlxsw_sp_ipip_demote_tunnel_by_ul_netdev(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_ipip_demote_tunnel_by_ul_netdev()
1674 int mlxsw_sp_netdevice_ipip_ol_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ol_event()
1713 __mlxsw_sp_netdevice_ipip_ul_event(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_netdevice_ipip_ul_event()
1745 mlxsw_sp_netdevice_ipip_ul_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_netdevice_ipip_ul_event()
1838 int mlxsw_sp_neigh_counter_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_counter_get()
1850 mlxsw_sp_neigh_entry_alloc(struct mlxsw_sp *mlxsw_sp, struct neighbour *n, in mlxsw_sp_neigh_entry_alloc()
1872 mlxsw_sp_neigh_entry_insert(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_insert()
1881 mlxsw_sp_neigh_entry_remove(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_remove()
1890 mlxsw_sp_neigh_counter_should_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_counter_should_alloc()
1913 mlxsw_sp_neigh_counter_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_counter_alloc()
1926 mlxsw_sp_neigh_counter_free(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_counter_free()
1937 mlxsw_sp_neigh_entry_create(struct mlxsw_sp *mlxsw_sp, struct neighbour *n) in mlxsw_sp_neigh_entry_create()
1966 mlxsw_sp_neigh_entry_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_destroy()
1976 mlxsw_sp_neigh_entry_lookup(struct mlxsw_sp *mlxsw_sp, struct neighbour *n) in mlxsw_sp_neigh_entry_lookup()
1986 mlxsw_sp_router_neighs_update_interval_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_neighs_update_interval_init()
2000 static void mlxsw_sp_router_neigh_ent_ipv4_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_ent_ipv4_process()
2029 static void mlxsw_sp_router_neigh_ent_ipv6_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_ent_ipv6_process()
2056 static void mlxsw_sp_router_neigh_ent_ipv6_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_ent_ipv6_process()
2063 static void mlxsw_sp_router_neigh_rec_ipv4_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_rec_ipv4_process()
2086 static void mlxsw_sp_router_neigh_rec_ipv6_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_rec_ipv6_process()
2095 static void mlxsw_sp_router_neigh_rec_process(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_rec_process()
2131 __mlxsw_sp_router_neighs_update_rauhtd(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_router_neighs_update_rauhtd()
2160 static int mlxsw_sp_router_neighs_update_rauhtd(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_neighs_update_rauhtd()
2182 static void mlxsw_sp_router_neighs_update_nh(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_neighs_update_nh()
2198 mlxsw_sp_router_neighs_update_work_schedule(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_neighs_update_work_schedule()
2260 mlxsw_sp_router_neigh_entry_op4(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_entry_op4()
2277 mlxsw_sp_router_neigh_entry_op6(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_neigh_entry_op6()
2308 mlxsw_sp_neigh_entry_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_update()
2329 mlxsw_sp_neigh_entry_counter_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_entry_counter_update()
2342 struct mlxsw_sp *mlxsw_sp; member
2350 struct mlxsw_sp *mlxsw_sp = net_work->mlxsw_sp; in mlxsw_sp_router_neigh_event_work() local
2399 struct mlxsw_sp *mlxsw_sp = net_work->mlxsw_sp; in mlxsw_sp_router_mp_hash_event_work() local
2411 struct mlxsw_sp *mlxsw_sp = net_work->mlxsw_sp; in mlxsw_sp_router_update_priority_work() local
2443 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_router_netevent_event() local
2511 static int mlxsw_sp_neigh_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_neigh_init()
2535 static void mlxsw_sp_neigh_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_neigh_fini()
2542 static void mlxsw_sp_neigh_rif_gone_sync(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_neigh_rif_gone_sync()
2611 void mlxsw_sp_nexthop_counter_alloc(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_counter_alloc()
2627 void mlxsw_sp_nexthop_counter_free(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_counter_free()
2636 int mlxsw_sp_nexthop_counter_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_counter_get()
2862 static int mlxsw_sp_nexthop_group_insert(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_group_insert()
2874 static void mlxsw_sp_nexthop_group_remove(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_group_remove()
2887 mlxsw_sp_nexthop4_group_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_lookup()
2900 mlxsw_sp_nexthop6_group_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_lookup()
2918 static int mlxsw_sp_nexthop_insert(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_insert()
2925 static void mlxsw_sp_nexthop_remove(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_remove()
2933 mlxsw_sp_nexthop_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_lookup()
2940 static int mlxsw_sp_adj_index_mass_update_vr(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_adj_index_mass_update_vr()
2955 static int mlxsw_sp_adj_index_mass_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_adj_index_mass_update()
2978 static int __mlxsw_sp_nexthop_update(struct mlxsw_sp *mlxsw_sp, u32 adj_index, in __mlxsw_sp_nexthop_update()
2996 int mlxsw_sp_nexthop_update(struct mlxsw_sp *mlxsw_sp, u32 adj_index, in mlxsw_sp_nexthop_update()
3012 static int __mlxsw_sp_nexthop_ipip_update(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_nexthop_ipip_update()
3022 static int mlxsw_sp_nexthop_ipip_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_ipip_update()
3041 mlxsw_sp_nexthop_group_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_group_update()
3084 mlxsw_sp_nexthop_fib_entries_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_fib_entries_update()
3149 static int mlxsw_sp_fix_adj_grp_size(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fix_adj_grp_size()
3223 mlxsw_sp_nexthop_group_refresh(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_group_refresh()
3347 mlxsw_sp_nexthop_neigh_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_neigh_update()
3379 static int mlxsw_sp_nexthop_neigh_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_neigh_init()
3434 static void mlxsw_sp_nexthop_neigh_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_neigh_fini()
3467 static void mlxsw_sp_nexthop_ipip_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_ipip_init()
3482 static void mlxsw_sp_nexthop_ipip_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_ipip_fini()
3494 static bool mlxsw_sp_nexthop4_ipip_type(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_ipip_type()
3505 static void mlxsw_sp_nexthop_type_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_type_fini()
3520 static int mlxsw_sp_nexthop4_type_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_type_init()
3558 static void mlxsw_sp_nexthop4_type_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_type_fini()
3564 static int mlxsw_sp_nexthop4_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_init()
3607 static void mlxsw_sp_nexthop4_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_fini()
3616 static void mlxsw_sp_nexthop4_event(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_event()
3642 static void mlxsw_sp_nexthop_rif_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_rif_update()
3666 static void mlxsw_sp_nexthop_rif_migrate(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_rif_migrate()
3678 static void mlxsw_sp_nexthop_rif_gone_sync(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop_rif_gone_sync()
3689 static bool mlxsw_sp_fi_is_gateway(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fi_is_gateway()
3697 mlxsw_sp_nexthop4_group_create(struct mlxsw_sp *mlxsw_sp, struct fib_info *fi) in mlxsw_sp_nexthop4_group_create()
3743 mlxsw_sp_nexthop4_group_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_destroy()
3760 static int mlxsw_sp_nexthop4_group_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_get()
3777 static void mlxsw_sp_nexthop4_group_put(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop4_group_put()
3995 static int mlxsw_sp_fib_entry_op_remote(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_remote()
4024 static int mlxsw_sp_fib_entry_op_local(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_local()
4048 static int mlxsw_sp_fib_entry_op_trap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_trap()
4060 mlxsw_sp_fib_entry_op_ipip_decap(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op_ipip_decap()
4075 static int __mlxsw_sp_fib_entry_op(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_fib_entry_op()
4093 static int mlxsw_sp_fib_entry_op(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_op()
4104 static int mlxsw_sp_fib_entry_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_update()
4111 static int mlxsw_sp_fib_entry_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_entry_del()
4119 mlxsw_sp_fib4_entry_type_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_type_set()
4163 mlxsw_sp_fib4_entry_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_create()
4199 static void mlxsw_sp_fib4_entry_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_destroy()
4207 mlxsw_sp_fib4_entry_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_lookup()
4305 static int mlxsw_sp_fib_lpm_tree_link(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_lpm_tree_link()
4337 static void mlxsw_sp_fib_lpm_tree_unlink(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_lpm_tree_unlink()
4368 static int mlxsw_sp_fib_node_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_init()
4391 static void mlxsw_sp_fib_node_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_fini()
4402 mlxsw_sp_fib_node_get(struct mlxsw_sp *mlxsw_sp, u32 tb_id, const void *addr, in mlxsw_sp_fib_node_get()
4439 static void mlxsw_sp_fib_node_put(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_put()
4540 static int mlxsw_sp_fib_node_entry_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_entry_add()
4561 static void mlxsw_sp_fib_node_entry_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_entry_del()
4582 static int mlxsw_sp_fib4_node_entry_link(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_node_entry_link()
4604 mlxsw_sp_fib4_node_entry_unlink(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_node_entry_unlink()
4614 static void mlxsw_sp_fib4_entry_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_entry_replace()
4633 mlxsw_sp_router_fib4_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fib4_add()
4678 static void mlxsw_sp_router_fib4_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fib4_del()
4812 static bool mlxsw_sp_nexthop6_ipip_type(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_ipip_type()
4820 static int mlxsw_sp_nexthop6_type_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_type_init()
4859 static void mlxsw_sp_nexthop6_type_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_type_fini()
4865 static int mlxsw_sp_nexthop6_init(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_init()
4886 static void mlxsw_sp_nexthop6_fini(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_fini()
4894 static bool mlxsw_sp_rt6_is_gateway(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rt6_is_gateway()
4902 mlxsw_sp_nexthop6_group_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_create()
4953 mlxsw_sp_nexthop6_group_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_destroy()
4969 static int mlxsw_sp_nexthop6_group_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_get()
4988 static void mlxsw_sp_nexthop6_group_put(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_put()
5000 mlxsw_sp_nexthop6_group_update(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_nexthop6_group_update()
5036 mlxsw_sp_fib6_entry_nexthop_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_nexthop_add()
5064 mlxsw_sp_fib6_entry_nexthop_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_nexthop_del()
5080 static void mlxsw_sp_fib6_entry_type_set(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_type_set()
5114 mlxsw_sp_fib6_entry_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_create()
5155 static void mlxsw_sp_fib6_entry_destroy(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_destroy()
5235 static int mlxsw_sp_fib6_node_entry_link(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_node_entry_link()
5257 mlxsw_sp_fib6_node_entry_unlink(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_node_entry_unlink()
5265 mlxsw_sp_fib6_entry_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_lookup()
5296 static void mlxsw_sp_fib6_entry_replace(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_entry_replace()
5313 static int mlxsw_sp_router_fib6_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fib6_add()
5370 static void mlxsw_sp_router_fib6_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fib6_del()
5401 static int __mlxsw_sp_router_set_abort_trap(struct mlxsw_sp *mlxsw_sp, in __mlxsw_sp_router_set_abort_trap()
5451 static int mlxsw_sp_router_fibmr_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fibmr_add()
5469 static void mlxsw_sp_router_fibmr_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fibmr_del()
5488 mlxsw_sp_router_fibmr_vif_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fibmr_vif_add()
5510 mlxsw_sp_router_fibmr_vif_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_fibmr_vif_del()
5528 static int mlxsw_sp_router_set_abort_trap(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_set_abort_trap()
5547 static void mlxsw_sp_fib4_node_flush(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib4_node_flush()
5568 static void mlxsw_sp_fib6_node_flush(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib6_node_flush()
5585 static void mlxsw_sp_fib_node_flush(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fib_node_flush()
5598 static void mlxsw_sp_vr_fib_flush(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_vr_fib_flush()
5614 static void mlxsw_sp_router_fib_flush(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_fib_flush()
5637 static void mlxsw_sp_router_fib_abort(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_fib_abort()
5661 struct mlxsw_sp *mlxsw_sp; member
5669 struct mlxsw_sp *mlxsw_sp = fib_work->mlxsw_sp; in mlxsw_sp_router_fib4_event_work() local
5714 struct mlxsw_sp *mlxsw_sp = fib_work->mlxsw_sp; in mlxsw_sp_router_fib6_event_work() local
5751 struct mlxsw_sp *mlxsw_sp = fib_work->mlxsw_sp; in mlxsw_sp_router_fibmr_event_work() local
5862 struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_fib_rule_event()
5966 mlxsw_sp_rif_find_by_dev(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_find_by_dev()
5979 static int mlxsw_sp_router_rif_disable(struct mlxsw_sp *mlxsw_sp, u16 rif) in mlxsw_sp_router_rif_disable()
5993 static void mlxsw_sp_router_rif_gone_sync(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_router_rif_gone_sync()
6042 mlxsw_sp_dev_rif_type(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_dev_rif_type()
6063 static int mlxsw_sp_rif_index_alloc(struct mlxsw_sp *mlxsw_sp, u16 *p_rif_index) in mlxsw_sp_rif_index_alloc()
6098 struct mlxsw_sp_rif *mlxsw_sp_rif_by_index(const struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_by_index()
6135 mlxsw_sp_rif_create(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_create()
6216 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_destroy() local
6237 void mlxsw_sp_rif_destroy_by_dev(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_destroy_by_dev()
6268 struct mlxsw_sp *mlxsw_sp = mlxsw_sp_port->mlxsw_sp; in mlxsw_sp_port_vlan_router_join() local
6409 struct mlxsw_sp *mlxsw_sp = mlxsw_sp_lower_get(l3_dev); in mlxsw_sp_inetaddr_bridge_event() local
6468 static int mlxsw_sp_rif_vrrp_op(struct mlxsw_sp *mlxsw_sp, u16 rif_index, in mlxsw_sp_rif_vrrp_op()
6492 static int mlxsw_sp_rif_macvlan_add(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_macvlan_add()
6530 void mlxsw_sp_rif_macvlan_del(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_rif_macvlan_del()
6552 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_inetaddr_macvlan_event() local
6592 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_inetaddr_event() local
6618 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_inetaddr_valid_event() local
6647 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_inet6addr_event_work() local
6699 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_inet6addr_valid_event() local
6716 static int mlxsw_sp_rif_edit(struct mlxsw_sp *mlxsw_sp, u16 rif_index, in mlxsw_sp_rif_edit()
6735 struct mlxsw_sp *mlxsw_sp; in mlxsw_sp_netdevice_router_port_event() local
6790 static int mlxsw_sp_port_vrf_join(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_port_vrf_join()
6806 static void mlxsw_sp_port_vrf_leave(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_port_vrf_leave()
6820 struct mlxsw_sp *mlxsw_sp = mlxsw_sp_lower_get(l3_dev); in mlxsw_sp_netdevice_vrf_event() local
6890 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_subport_op() local
6958 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_vlan_fid_op() local
6969 u8 mlxsw_sp_router_port(const struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_port()
6976 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_vlan_configure() local
7016 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_vlan_deconfigure() local
7078 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_fid_configure() local
7119 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_fid_deconfigure() local
7187 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_ipip_lb_configure() local
7211 struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; in mlxsw_sp_rif_ipip_lb_deconfigure() local
7236 static int mlxsw_sp_rifs_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_rifs_init()
7251 static void mlxsw_sp_rifs_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_rifs_fini()
7262 mlxsw_sp_ipip_config_tigcr(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_ipip_config_tigcr()
7270 static int mlxsw_sp_ipips_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_ipips_init()
7277 static void mlxsw_sp_ipips_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_ipips_fini()
7346 static int mlxsw_sp_mp_hash_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_mp_hash_init()
7359 static int mlxsw_sp_mp_hash_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_mp_hash_init()
7365 static int mlxsw_sp_dscp_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_dscp_init()
7383 static int __mlxsw_sp_router_init(struct mlxsw_sp *mlxsw_sp) in __mlxsw_sp_router_init()
7403 static void __mlxsw_sp_router_fini(struct mlxsw_sp *mlxsw_sp) in __mlxsw_sp_router_fini()
7411 int mlxsw_sp_router_init(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_init()
7511 void mlxsw_sp_router_fini(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_router_fini()