Home
last modified time | relevance | path

Searched refs:mlx5_eswitch (Results 1 – 25 of 26) sorted by relevance

12

/drivers/net/ethernet/mellanox/mlx5/core/
Deswitch.h231 struct mlx5_eswitch *esw;
244 struct mlx5_eswitch { struct
282 void esw_offloads_disable(struct mlx5_eswitch *esw); argument
283 int esw_offloads_enable(struct mlx5_eswitch *esw);
284 void esw_offloads_cleanup_reps(struct mlx5_eswitch *esw);
285 int esw_offloads_init_reps(struct mlx5_eswitch *esw);
287 u32 mlx5_esw_match_metadata_alloc(struct mlx5_eswitch *esw);
288 void mlx5_esw_match_metadata_free(struct mlx5_eswitch *esw, u32 metadata);
290 int mlx5_esw_modify_vport_rate(struct mlx5_eswitch *esw, u16 vport_num,
295 void mlx5_eswitch_cleanup(struct mlx5_eswitch *esw);
[all …]
Deswitch_offloads.c86 esw_vport_tbl_create(struct mlx5_eswitch *esw, struct mlx5_flow_namespace *ns) in esw_vport_tbl_create()
103 static u32 flow_attr_to_vport_key(struct mlx5_eswitch *esw, in flow_attr_to_vport_key()
116 esw_vport_tbl_lookup(struct mlx5_eswitch *esw, struct mlx5_vport_key *skey, u32 key) in esw_vport_tbl_lookup()
128 esw_vport_tbl_put(struct mlx5_eswitch *esw, struct mlx5_vport_tbl_attr *attr) in esw_vport_tbl_put()
148 esw_vport_tbl_get(struct mlx5_eswitch *esw, struct mlx5_vport_tbl_attr *attr) in esw_vport_tbl_get()
197 int mlx5_esw_vport_tbl_get(struct mlx5_eswitch *esw) in mlx5_esw_vport_tbl_get()
219 void mlx5_esw_vport_tbl_put(struct mlx5_eswitch *esw) in mlx5_esw_vport_tbl_put()
235 static struct mlx5_eswitch_rep *mlx5_eswitch_get_rep(struct mlx5_eswitch *esw, in mlx5_eswitch_get_rep()
245 mlx5_eswitch_set_rule_flow_source(struct mlx5_eswitch *esw, in mlx5_eswitch_set_rule_flow_source()
258 mlx5_eswitch_set_rule_source_port(struct mlx5_eswitch *esw, in mlx5_eswitch_set_rule_source_port()
[all …]
Deswitch.c65 static void esw_destroy_legacy_fdb_table(struct mlx5_eswitch *esw);
66 static void esw_cleanup_vepa_rules(struct mlx5_eswitch *esw);
79 struct mlx5_eswitch *mlx5_devlink_eswitch_get(struct devlink *devlink) in mlx5_devlink_eswitch_get()
92 mlx5_eswitch_get_vport(struct mlx5_eswitch *esw, u16 vport_num) in mlx5_eswitch_get_vport()
187 __esw_fdb_set_vport_rule(struct mlx5_eswitch *esw, u16 vport, bool rx_rule, in __esw_fdb_set_vport_rule()
250 esw_fdb_set_vport_rule(struct mlx5_eswitch *esw, u8 mac[ETH_ALEN], u16 vport) in esw_fdb_set_vport_rule()
259 esw_fdb_set_vport_allmulti_rule(struct mlx5_eswitch *esw, u16 vport) in esw_fdb_set_vport_allmulti_rule()
272 esw_fdb_set_vport_promisc_rule(struct mlx5_eswitch *esw, u16 vport) in esw_fdb_set_vport_promisc_rule()
287 static int esw_create_legacy_vepa_table(struct mlx5_eswitch *esw) in esw_create_legacy_vepa_table()
316 static int esw_create_legacy_fdb_table(struct mlx5_eswitch *esw) in esw_create_legacy_fdb_table()
[all …]
Deswitch_offloads_termtbl.c110 mlx5_eswitch_termtbl_get_create(struct mlx5_eswitch *esw, in mlx5_eswitch_termtbl_get_create()
162 mlx5_eswitch_termtbl_put(struct mlx5_eswitch *esw, in mlx5_eswitch_termtbl_put()
196 static bool mlx5_eswitch_offload_is_uplink_port(const struct mlx5_eswitch *esw, in mlx5_eswitch_offload_is_uplink_port()
213 mlx5_eswitch_termtbl_required(struct mlx5_eswitch *esw, in mlx5_eswitch_termtbl_required()
240 mlx5_eswitch_add_termtbl_rule(struct mlx5_eswitch *esw, in mlx5_eswitch_add_termtbl_rule()
Den_tc.c280 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in get_ct_priv()
299 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5_tc_rule_insert()
312 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5_tc_rule_delete()
442 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in get_mod_hdr_table()
1189 mlx5e_tc_offload_fdb_rules(struct mlx5_eswitch *esw, in mlx5e_tc_offload_fdb_rules()
1224 mlx5e_tc_unoffload_fdb_rules(struct mlx5_eswitch *esw, in mlx5e_tc_unoffload_fdb_rules()
1246 mlx5e_tc_offload_to_slow_path(struct mlx5_eswitch *esw, in mlx5e_tc_offload_to_slow_path()
1272 mlx5e_tc_unoffload_from_slow_path(struct mlx5_eswitch *esw, in mlx5e_tc_unoffload_from_slow_path()
1315 struct mlx5_eswitch *esw; in add_unready_flow()
1330 struct mlx5_eswitch *esw; in remove_unready_flow()
[all …]
Den_rep.h210 int mlx5e_rep_bond_enslave(struct mlx5_eswitch *esw, struct net_device *netdev,
212 void mlx5e_rep_bond_unslave(struct mlx5_eswitch *esw,
Den_rep.c177 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in MLX5E_DECLARE_STATS_GRP_OP_UPDATE_STATS()
380 static void mlx5e_sqs2vport_stop(struct mlx5_eswitch *esw, in mlx5e_sqs2vport_stop()
397 static int mlx5e_sqs2vport_start(struct mlx5_eswitch *esw, in mlx5e_sqs2vport_start()
439 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5e_add_sqs_fwd_rules()
468 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5e_remove_sqs_fwd_rules()
869 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5e_create_rep_vport_rx_rule()
1328 struct mlx5_eswitch *esw = mdev->priv.eswitch; in mlx5e_rep_register_vport_reps()
1335 struct mlx5_eswitch *esw = mdev->priv.eswitch; in mlx5e_rep_unregister_vport_reps()
/drivers/infiniband/hw/mlx5/
Dib_rep.h15 u8 mlx5_ib_eswitch_mode(struct mlx5_eswitch *esw);
16 struct mlx5_ib_dev *mlx5_ib_get_rep_ibdev(struct mlx5_eswitch *esw,
18 struct mlx5_ib_dev *mlx5_ib_get_uplink_ibdev(struct mlx5_eswitch *esw);
19 struct mlx5_eswitch_rep *mlx5_ib_vport_rep(struct mlx5_eswitch *esw,
26 struct net_device *mlx5_ib_get_rep_netdev(struct mlx5_eswitch *esw,
29 static inline u8 mlx5_ib_eswitch_mode(struct mlx5_eswitch *esw) in mlx5_ib_eswitch_mode()
35 struct mlx5_ib_dev *mlx5_ib_get_rep_ibdev(struct mlx5_eswitch *esw, in mlx5_ib_get_rep_ibdev()
42 struct mlx5_ib_dev *mlx5_ib_get_uplink_ibdev(struct mlx5_eswitch *esw) in mlx5_ib_get_uplink_ibdev()
48 struct mlx5_eswitch_rep *mlx5_ib_vport_rep(struct mlx5_eswitch *esw, in mlx5_ib_vport_rep()
65 struct net_device *mlx5_ib_get_rep_netdev(struct mlx5_eswitch *esw, in mlx5_ib_get_rep_netdev()
Dib_rep.c99 struct mlx5_eswitch *esw = mdev->priv.eswitch; in mlx5_ib_register_vport_reps()
106 struct mlx5_eswitch *esw = mdev->priv.eswitch; in mlx5_ib_unregister_vport_reps()
111 u8 mlx5_ib_eswitch_mode(struct mlx5_eswitch *esw) in mlx5_ib_eswitch_mode()
116 struct mlx5_ib_dev *mlx5_ib_get_rep_ibdev(struct mlx5_eswitch *esw, in mlx5_ib_get_rep_ibdev()
122 struct net_device *mlx5_ib_get_rep_netdev(struct mlx5_eswitch *esw, in mlx5_ib_get_rep_netdev()
128 struct mlx5_ib_dev *mlx5_ib_get_uplink_ibdev(struct mlx5_eswitch *esw) in mlx5_ib_get_uplink_ibdev()
133 struct mlx5_eswitch_rep *mlx5_ib_vport_rep(struct mlx5_eswitch *esw, in mlx5_ib_vport_rep()
143 struct mlx5_eswitch *esw = dev->mdev->priv.eswitch; in create_flow_rule_vport_sq()
Dfs.c874 struct mlx5_eswitch *esw = dev->mdev->priv.eswitch; in mlx5_ib_set_rule_source_port()
Dmain.c134 struct mlx5_eswitch *esw = dev->mdev->priv.eswitch; in mlx5_get_rep_roce()
/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/
Dofld.h10 int esw_acl_egress_ofld_setup(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
12 int mlx5_esw_acl_egress_vport_bond(struct mlx5_eswitch *esw, u16 active_vport_num,
14 int mlx5_esw_acl_egress_vport_unbond(struct mlx5_eswitch *esw, u16 vport_num);
16 static inline bool mlx5_esw_acl_egress_fwd2vport_supported(struct mlx5_eswitch *esw) in mlx5_esw_acl_egress_fwd2vport_supported()
24 int esw_acl_ingress_ofld_setup(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
25 void esw_acl_ingress_ofld_cleanup(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
26 int mlx5_esw_acl_ingress_vport_bond_update(struct mlx5_eswitch *esw, u16 vport_num,
Dlgcy.h10 int esw_acl_egress_lgcy_setup(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
11 void esw_acl_egress_lgcy_cleanup(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
14 int esw_acl_ingress_lgcy_setup(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
15 void esw_acl_ingress_lgcy_cleanup(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
Dingress_ofld.c10 esw_acl_ingress_prio_tag_enabled(const struct mlx5_eswitch *esw, in esw_acl_ingress_prio_tag_enabled()
17 static int esw_acl_ingress_prio_tag_create(struct mlx5_eswitch *esw, in esw_acl_ingress_prio_tag_create()
62 static int esw_acl_ingress_mod_metadata_create(struct mlx5_eswitch *esw, in esw_acl_ingress_mod_metadata_create()
109 static void esw_acl_ingress_mod_metadata_destroy(struct mlx5_eswitch *esw, in esw_acl_ingress_mod_metadata_destroy()
120 static int esw_acl_ingress_ofld_rules_create(struct mlx5_eswitch *esw, in esw_acl_ingress_ofld_rules_create()
152 static void esw_acl_ingress_ofld_rules_destroy(struct mlx5_eswitch *esw, in esw_acl_ingress_ofld_rules_destroy()
159 static int esw_acl_ingress_ofld_groups_create(struct mlx5_eswitch *esw, in esw_acl_ingress_ofld_groups_create()
241 int esw_acl_ingress_ofld_setup(struct mlx5_eswitch *esw, in esw_acl_ingress_ofld_setup()
287 void esw_acl_ingress_ofld_cleanup(struct mlx5_eswitch *esw, in esw_acl_ingress_ofld_cleanup()
296 int mlx5_esw_acl_ingress_vport_bond_update(struct mlx5_eswitch *esw, u16 vport_num, in mlx5_esw_acl_ingress_vport_bond_update()
Degress_ofld.c18 static int esw_acl_egress_ofld_fwd2vport_create(struct mlx5_eswitch *esw, in esw_acl_egress_ofld_fwd2vport_create()
47 static int esw_acl_egress_ofld_rules_create(struct mlx5_eswitch *esw, in esw_acl_egress_ofld_rules_create()
92 static int esw_acl_egress_ofld_groups_create(struct mlx5_eswitch *esw, in esw_acl_egress_ofld_groups_create()
151 static bool esw_acl_egress_needed(const struct mlx5_eswitch *esw, u16 vport_num) in esw_acl_egress_needed()
156 int esw_acl_egress_ofld_setup(struct mlx5_eswitch *esw, struct mlx5_vport *vport) in esw_acl_egress_ofld_setup()
208 int mlx5_esw_acl_egress_vport_bond(struct mlx5_eswitch *esw, u16 active_vport_num, in mlx5_esw_acl_egress_vport_bond()
234 int mlx5_esw_acl_egress_vport_unbond(struct mlx5_eswitch *esw, u16 vport_num) in mlx5_esw_acl_egress_vport_unbond()
Dhelper.h11 esw_acl_table_create(struct mlx5_eswitch *esw, u16 vport_num, int ns, int size);
15 int esw_egress_acl_vlan_create(struct mlx5_eswitch *esw, struct mlx5_vport *vport,
19 int esw_acl_egress_vlan_grp_create(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
Dhelper.c9 esw_acl_table_create(struct mlx5_eswitch *esw, u16 vport_num, int ns, int size) in esw_acl_table_create()
45 int esw_egress_acl_vlan_create(struct mlx5_eswitch *esw, in esw_egress_acl_vlan_create()
91 int esw_acl_egress_vlan_grp_create(struct mlx5_eswitch *esw, struct mlx5_vport *vport) in esw_acl_egress_vlan_grp_create()
Degress_lgcy.c18 static int esw_acl_egress_lgcy_groups_create(struct mlx5_eswitch *esw, in esw_acl_egress_lgcy_groups_create()
67 int esw_acl_egress_lgcy_setup(struct mlx5_eswitch *esw, in esw_acl_egress_lgcy_setup()
156 void esw_acl_egress_lgcy_cleanup(struct mlx5_eswitch *esw, in esw_acl_egress_lgcy_cleanup()
Dingress_lgcy.c18 static int esw_acl_ingress_lgcy_groups_create(struct mlx5_eswitch *esw, in esw_acl_ingress_lgcy_groups_create()
139 int esw_acl_ingress_lgcy_setup(struct mlx5_eswitch *esw, in esw_acl_ingress_lgcy_setup()
265 void esw_acl_ingress_lgcy_cleanup(struct mlx5_eswitch *esw, in esw_acl_ingress_lgcy_cleanup()
/drivers/net/ethernet/mellanox/mlx5/core/esw/
Ddevlink_port.c18 mlx5_esw_devlink_port_supported(const struct mlx5_eswitch *esw, u16 vport_num) in mlx5_esw_devlink_port_supported()
25 static struct devlink_port *mlx5_esw_dl_port_alloc(struct mlx5_eswitch *esw, u16 vport_num) in mlx5_esw_dl_port_alloc()
69 int mlx5_esw_offloads_devlink_port_register(struct mlx5_eswitch *esw, u16 vport_num) in mlx5_esw_offloads_devlink_port_register()
103 void mlx5_esw_offloads_devlink_port_unregister(struct mlx5_eswitch *esw, u16 vport_num) in mlx5_esw_offloads_devlink_port_unregister()
118 struct devlink_port *mlx5_esw_offloads_devlink_port(struct mlx5_eswitch *esw, u16 vport_num) in mlx5_esw_offloads_devlink_port()
/drivers/net/ethernet/mellanox/mlx5/core/en/rep/
Dtc.c88 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5e_rep_update_flows()
185 struct mlx5_eswitch *esw; in mlx5e_rep_setup_ft_cb()
358 struct mlx5_eswitch *esw; in mlx5e_rep_indr_setup_ft_cb()
516 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5e_restore_tunnel()
614 struct mlx5_eswitch *esw; in mlx5e_rep_tc_update_skb()
Dbond.c26 struct mlx5_eswitch *esw;
80 int mlx5e_rep_bond_enslave(struct mlx5_eswitch *esw, struct net_device *netdev, in mlx5e_rep_bond_enslave()
144 void mlx5e_rep_bond_unslave(struct mlx5_eswitch *esw, in mlx5e_rep_bond_unslave()
/drivers/net/ethernet/mellanox/mlx5/core/en/
Dtc_tun.c34 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in get_route_and_out_devs()
97 struct mlx5_eswitch *esw = mdev->priv.eswitch; in mlx5e_route_lookup_ipv4_get()
Dtc_ct.c2004 mlx5_tc_ct_init_check_esw_support(struct mlx5_eswitch *esw, in mlx5_tc_ct_init_check_esw_support()
2057 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5_tc_ct_init_check_support()
/drivers/net/ethernet/mellanox/mlx5/core/lib/
Dfs_chains.c294 struct mlx5_eswitch *esw = chain->chains->dev->priv.eswitch; in create_chain_restore()

12