Lines Matching refs:mlxsw_sp_fid

32 struct mlxsw_sp_fid {  struct
52 struct mlxsw_sp_fid common; argument
57 struct mlxsw_sp_fid common;
62 .key_len = sizeof_field(struct mlxsw_sp_fid, fid_index),
63 .key_offset = offsetof(struct mlxsw_sp_fid, fid_index),
64 .head_offset = offsetof(struct mlxsw_sp_fid, ht_node),
68 .key_len = sizeof_field(struct mlxsw_sp_fid, vni),
69 .key_offset = offsetof(struct mlxsw_sp_fid, vni),
70 .head_offset = offsetof(struct mlxsw_sp_fid, vni_ht_node),
80 int (*setup)(struct mlxsw_sp_fid *fid, const void *arg);
81 int (*configure)(struct mlxsw_sp_fid *fid);
82 void (*deconfigure)(struct mlxsw_sp_fid *fid);
83 int (*index_alloc)(struct mlxsw_sp_fid *fid, const void *arg,
85 bool (*compare)(const struct mlxsw_sp_fid *fid,
87 int (*port_vid_map)(struct mlxsw_sp_fid *fid,
89 void (*port_vid_unmap)(struct mlxsw_sp_fid *fid,
91 int (*vni_set)(struct mlxsw_sp_fid *fid);
92 void (*vni_clear)(struct mlxsw_sp_fid *fid);
93 int (*nve_flood_index_set)(struct mlxsw_sp_fid *fid);
94 void (*nve_flood_index_clear)(struct mlxsw_sp_fid *fid);
95 void (*fdb_clear_offload)(const struct mlxsw_sp_fid *fid,
97 int (*vid_to_fid_rif_update)(const struct mlxsw_sp_fid *fid,
103 u16 (*fid_mid)(const struct mlxsw_sp_fid *fid,
105 void (*fid_pack)(char *sfmr_pl, const struct mlxsw_sp_fid *fid,
189 struct mlxsw_sp_fid *mlxsw_sp_fid_lookup_by_index(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fid_lookup_by_index()
192 struct mlxsw_sp_fid *fid; in mlxsw_sp_fid_lookup_by_index()
202 int mlxsw_sp_fid_nve_ifindex(const struct mlxsw_sp_fid *fid, int *nve_ifindex) in mlxsw_sp_fid_nve_ifindex()
212 int mlxsw_sp_fid_nve_type(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_nve_type()
223 struct mlxsw_sp_fid *mlxsw_sp_fid_lookup_by_vni(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fid_lookup_by_vni()
226 struct mlxsw_sp_fid *fid; in mlxsw_sp_fid_lookup_by_vni()
236 int mlxsw_sp_fid_vni(const struct mlxsw_sp_fid *fid, __be32 *vni) in mlxsw_sp_fid_vni()
246 int mlxsw_sp_fid_nve_flood_index_set(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_nve_flood_index_set()
269 void mlxsw_sp_fid_nve_flood_index_clear(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_nve_flood_index_clear()
281 bool mlxsw_sp_fid_nve_flood_index_is_set(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_nve_flood_index_is_set()
286 int mlxsw_sp_fid_vni_set(struct mlxsw_sp_fid *fid, enum mlxsw_sp_nve_type type, in mlxsw_sp_fid_vni_set()
320 void mlxsw_sp_fid_vni_clear(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_vni_clear()
335 bool mlxsw_sp_fid_vni_is_set(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_vni_is_set()
340 void mlxsw_sp_fid_fdb_clear_offload(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_fdb_clear_offload()
351 mlxsw_sp_fid_flood_table_lookup(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_flood_table_lookup()
426 mlxsw_sp_fid_fid_mid_ctl(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_fid_mid_ctl()
433 int mlxsw_sp_fid_flood_set(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_flood_set()
453 int mlxsw_sp_fid_port_vid_map(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_port_vid_map()
461 void mlxsw_sp_fid_port_vid_unmap(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_port_vid_unmap()
467 u16 mlxsw_sp_fid_index(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_index()
472 enum mlxsw_sp_fid_type mlxsw_sp_fid_type(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_type()
477 struct mlxsw_sp_rif *mlxsw_sp_fid_rif(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_rif()
492 mlxsw_sp_fid_8021q_fid(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021q_fid()
497 u16 mlxsw_sp_fid_8021q_vid(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021q_vid()
502 static int mlxsw_sp_fid_8021q_setup(struct mlxsw_sp_fid *fid, const void *arg) in mlxsw_sp_fid_8021q_setup()
518 const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_pack()
530 const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_pack_ctl()
548 static u16 mlxsw_sp_fid_pgt_base_cff(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_pgt_base_cff()
554 const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_fid_pack_cff()
580 static int mlxsw_sp_fid_op(const struct mlxsw_sp_fid *fid, bool valid) in mlxsw_sp_fid_op()
590 static int mlxsw_sp_fid_edit_op(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_edit_op()
612 static int mlxsw_sp_fid_vni_to_fid_map(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_vni_to_fid_map()
629 static int mlxsw_sp_fid_to_fid_rif_update(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_to_fid_rif_update()
635 static int mlxsw_sp_fid_vni_to_fid_rif_update(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_vni_to_fid_rif_update()
645 mlxsw_sp_fid_vid_to_fid_map(const struct mlxsw_sp_fid *fid, u16 vid, bool valid, in mlxsw_sp_fid_vid_to_fid_map()
662 mlxsw_sp_fid_8021q_vid_to_fid_rif_update(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_8021q_vid_to_fid_rif_update()
674 mlxsw_sp_fid_port_vid_to_fid_rif_update_one(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_port_vid_to_fid_rif_update_one()
688 static int mlxsw_sp_fid_vid_to_fid_rif_set(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_vid_to_fid_rif_set()
731 static void mlxsw_sp_fid_vid_to_fid_rif_unset(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_vid_to_fid_rif_unset()
749 static int mlxsw_sp_fid_reiv_handle(struct mlxsw_sp_fid *fid, u16 rif_index, in mlxsw_sp_fid_reiv_handle()
798 static int mlxsw_sp_fid_erif_eport_to_vid_map(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_erif_eport_to_vid_map()
822 int mlxsw_sp_fid_rif_set(struct mlxsw_sp_fid *fid, struct mlxsw_sp_rif *rif) in mlxsw_sp_fid_rif_set()
855 void mlxsw_sp_fid_rif_unset(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_rif_unset()
871 static int mlxsw_sp_fid_vni_op(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_vni_op()
890 static int __mlxsw_sp_fid_port_vid_map(const struct mlxsw_sp_fid *fid, in __mlxsw_sp_fid_port_vid_map()
909 mlxsw_sp_fid_8021d_fid(const struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021d_fid()
914 static int mlxsw_sp_fid_8021d_setup(struct mlxsw_sp_fid *fid, const void *arg) in mlxsw_sp_fid_8021d_setup()
923 static int mlxsw_sp_fid_8021d_configure(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021d_configure()
928 static void mlxsw_sp_fid_8021d_deconfigure(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021d_deconfigure()
935 static int mlxsw_sp_fid_8021d_index_alloc(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_8021d_index_alloc()
951 mlxsw_sp_fid_8021d_compare(const struct mlxsw_sp_fid *fid, const void *arg) in mlxsw_sp_fid_8021d_compare()
965 struct mlxsw_sp_fid *fid = mlxsw_sp_port_vlan->fid; in mlxsw_sp_port_vp_mode_trans()
988 struct mlxsw_sp_fid *fid = mlxsw_sp_port_vlan->fid; in mlxsw_sp_port_vp_mode_trans()
1008 struct mlxsw_sp_fid *fid = mlxsw_sp_port_vlan->fid; in mlxsw_sp_port_vlan_mode_trans()
1020 mlxsw_sp_fid_port_vid_list_add(struct mlxsw_sp_fid *fid, u16 local_port, in mlxsw_sp_fid_port_vid_list_add()
1042 mlxsw_sp_fid_port_vid_list_del(struct mlxsw_sp_fid *fid, u16 local_port, in mlxsw_sp_fid_port_vid_list_del()
1058 mlxsw_sp_fid_mpe_table_map(const struct mlxsw_sp_fid *fid, u16 local_port, in mlxsw_sp_fid_mpe_table_map()
1070 mlxsw_sp_fid_erif_eport_to_vid_map_one(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_erif_eport_to_vid_map_one()
1092 static int mlxsw_sp_fid_evid_map(const struct mlxsw_sp_fid *fid, u16 local_port, in mlxsw_sp_fid_evid_map()
1116 static int mlxsw_sp_fid_8021d_port_vid_map(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_8021d_port_vid_map()
1157 mlxsw_sp_fid_8021d_port_vid_unmap(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_8021d_port_vid_unmap()
1171 static int mlxsw_sp_fid_8021d_vni_set(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021d_vni_set()
1176 static void mlxsw_sp_fid_8021d_vni_clear(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021d_vni_clear()
1181 static int mlxsw_sp_fid_8021d_nve_flood_index_set(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021d_nve_flood_index_set()
1186 static void mlxsw_sp_fid_8021d_nve_flood_index_clear(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021d_nve_flood_index_clear()
1192 mlxsw_sp_fid_8021d_fdb_clear_offload(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_8021d_fdb_clear_offload()
1199 mlxsw_sp_fid_8021d_vid_to_fid_rif_update(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_8021d_vid_to_fid_rif_update()
1256 mlxsw_sp_fid_fid_mid_cff(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_fid_mid_cff()
1342 mlxsw_sp_fid_8021q_compare(const struct mlxsw_sp_fid *fid, const void *arg) in mlxsw_sp_fid_8021q_compare()
1350 mlxsw_sp_fid_8021q_fdb_clear_offload(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_8021q_fdb_clear_offload()
1356 static int mlxsw_sp_fid_rfid_setup_ctl(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_rfid_setup_ctl()
1364 static int mlxsw_sp_fid_rfid_setup_cff(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_rfid_setup_cff()
1387 static int mlxsw_sp_fid_rfid_configure(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_rfid_configure()
1392 static void mlxsw_sp_fid_rfid_deconfigure(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_rfid_deconfigure()
1397 static int mlxsw_sp_fid_rfid_index_alloc(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_rfid_index_alloc()
1407 static bool mlxsw_sp_fid_rfid_compare(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_rfid_compare()
1415 static int mlxsw_sp_fid_rfid_port_vid_map(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_rfid_port_vid_map()
1466 mlxsw_sp_fid_rfid_port_vid_unmap(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_rfid_port_vid_unmap()
1483 static int mlxsw_sp_fid_rfid_vni_set(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_rfid_vni_set()
1488 static void mlxsw_sp_fid_rfid_vni_clear(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_rfid_vni_clear()
1493 static int mlxsw_sp_fid_rfid_nve_flood_index_set(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_rfid_nve_flood_index_set()
1498 static void mlxsw_sp_fid_rfid_nve_flood_index_clear(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_rfid_nve_flood_index_clear()
1504 mlxsw_sp_fid_rfid_vid_to_fid_rif_update(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_rfid_vid_to_fid_rif_update()
1659 static int mlxsw_sp_fid_dummy_setup(struct mlxsw_sp_fid *fid, const void *arg) in mlxsw_sp_fid_dummy_setup()
1665 static int mlxsw_sp_fid_dummy_configure(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_dummy_configure()
1670 static void mlxsw_sp_fid_dummy_deconfigure(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_dummy_deconfigure()
1675 static int mlxsw_sp_fid_dummy_index_alloc(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_dummy_index_alloc()
1683 static bool mlxsw_sp_fid_dummy_compare(const struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_dummy_compare()
1689 static int mlxsw_sp_fid_dummy_vni_set(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_dummy_vni_set()
1694 static void mlxsw_sp_fid_dummy_vni_clear(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_dummy_vni_clear()
1699 static int mlxsw_sp_fid_dummy_nve_flood_index_set(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_dummy_nve_flood_index_set()
1704 static void mlxsw_sp_fid_dummy_nve_flood_index_clear(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_dummy_nve_flood_index_clear()
1722 static int mlxsw_sp_fid_8021q_configure(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021q_configure()
1742 static void mlxsw_sp_fid_8021q_deconfigure(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_8021q_deconfigure()
1753 static int mlxsw_sp_fid_8021q_port_vid_map(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_8021q_port_vid_map()
1791 mlxsw_sp_fid_8021q_port_vid_unmap(struct mlxsw_sp_fid *fid, in mlxsw_sp_fid_8021q_port_vid_unmap()
1887 .fid_size = sizeof(struct mlxsw_sp_fid),
1896 .fid_size = sizeof(struct mlxsw_sp_fid),
1939 .fid_size = sizeof(struct mlxsw_sp_fid),
1977 .fid_size = sizeof(struct mlxsw_sp_fid),
1993 static struct mlxsw_sp_fid *mlxsw_sp_fid_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fid_lookup()
1998 struct mlxsw_sp_fid *fid; in mlxsw_sp_fid_lookup()
2011 static struct mlxsw_sp_fid *mlxsw_sp_fid_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fid_get()
2016 struct mlxsw_sp_fid *fid; in mlxsw_sp_fid_get()
2066 void mlxsw_sp_fid_put(struct mlxsw_sp_fid *fid) in mlxsw_sp_fid_put()
2084 struct mlxsw_sp_fid *mlxsw_sp_fid_8021q_get(struct mlxsw_sp *mlxsw_sp, u16 vid) in mlxsw_sp_fid_8021q_get()
2089 struct mlxsw_sp_fid *mlxsw_sp_fid_8021d_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fid_8021d_get()
2095 struct mlxsw_sp_fid *mlxsw_sp_fid_8021q_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fid_8021q_lookup()
2101 struct mlxsw_sp_fid *mlxsw_sp_fid_8021d_lookup(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fid_8021d_lookup()
2108 struct mlxsw_sp_fid *mlxsw_sp_fid_rfid_get(struct mlxsw_sp *mlxsw_sp, in mlxsw_sp_fid_rfid_get()
2114 struct mlxsw_sp_fid *mlxsw_sp_fid_dummy_get(struct mlxsw_sp *mlxsw_sp) in mlxsw_sp_fid_dummy_get()