Home
last modified time | relevance | path

Searched refs:devcom (Results 1 – 17 of 17) sorted by relevance

/linux/drivers/net/ethernet/mellanox/mlx5/core/lib/
H A Ddevcom.c159 struct mlx5_devcom_comp_dev *devcom; in devcom_alloc_comp_dev() local
161 devcom = kzalloc_obj(*devcom); in devcom_alloc_comp_dev()
162 if (!devcom) in devcom_alloc_comp_dev()
166 devcom->devc = devc; in devcom_alloc_comp_dev()
167 devcom->comp = comp; in devcom_alloc_comp_dev()
168 rcu_assign_pointer(devcom->data, data); in devcom_alloc_comp_dev()
171 list_add_tail(&devcom->list, &comp->comp_dev_list_head); in devcom_alloc_comp_dev()
174 return devcom; in devcom_alloc_comp_dev()
178 devcom_free_comp_dev(struct mlx5_devcom_comp_dev *devcom) in devcom_free_comp_dev() argument
180 struct mlx5_devcom_comp *comp = devcom->comp; in devcom_free_comp_dev()
[all …]
H A Dsd.c19 struct mlx5_devcom_comp_dev *devcom; member
212 struct mlx5_devcom_comp_dev *devcom, *pos; in sd_register() local
222 devcom = mlx5_devcom_register_component(dev->priv.devc, MLX5_DEVCOM_SD_GROUP, in sd_register()
224 if (!devcom) in sd_register()
227 sd->devcom = devcom; in sd_register()
229 if (mlx5_devcom_comp_get_size(devcom) != sd->host_buses) in sd_register()
232 mlx5_devcom_comp_lock(devcom); in sd_register()
233 mlx5_devcom_comp_set_ready(devcom, true); in sd_register()
234 mlx5_devcom_comp_unlock(devcom); in sd_register()
236 if (!mlx5_devcom_for_each_peer_begin(devcom)) { in sd_register()
[all …]
H A Dipsec_fs_roce.c46 struct mlx5_devcom_comp_dev **devcom; member
389 if (!mlx5_devcom_for_each_peer_begin(*ipsec_roce->devcom)) in ipsec_fs_roce_tx_mpv_create()
392 peer_priv = mlx5_devcom_get_next_peer_data(*ipsec_roce->devcom, &tmp); in ipsec_fs_roce_tx_mpv_create()
413 mlx5_devcom_for_each_peer_end(*ipsec_roce->devcom); in ipsec_fs_roce_tx_mpv_create()
422 mlx5_devcom_for_each_peer_end(*ipsec_roce->devcom); in ipsec_fs_roce_tx_mpv_create()
459 if (!mlx5_devcom_for_each_peer_begin(*ipsec_roce->devcom)) in ipsec_fs_roce_rx_mpv_create()
462 peer_priv = mlx5_devcom_get_next_peer_data(*ipsec_roce->devcom, &tmp); in ipsec_fs_roce_rx_mpv_create()
543 mlx5_devcom_for_each_peer_end(*ipsec_roce->devcom); in ipsec_fs_roce_rx_mpv_create()
558 mlx5_devcom_for_each_peer_end(*ipsec_roce->devcom); in ipsec_fs_roce_rx_mpv_create()
584 if (!mlx5_devcom_for_each_peer_begin(*ipsec_roce->devcom)) in mlx5_ipsec_fs_roce_tx_destroy()
[all …]
H A Dipsec_fs_roce.h28 struct mlx5_devcom_comp_dev **devcom);
/linux/drivers/net/ethernet/mellanox/mlx5/core/lag/
H A Dmpesw.c140 struct mlx5_devcom_comp_dev *devcom; in mlx5_mpesw_work() local
143 devcom = mlx5_lag_get_devcom_comp(ldev); in mlx5_mpesw_work()
144 if (!devcom) in mlx5_mpesw_work()
147 mlx5_devcom_comp_lock(devcom); in mlx5_mpesw_work()
160 mlx5_devcom_comp_unlock(devcom); in mlx5_mpesw_work()
H A Dlag.c1245 struct mlx5_devcom_comp_dev *devcom = NULL; in mlx5_lag_get_devcom_comp() local
1251 devcom = ldev->pf[i].dev->priv.hca_devcom_comp; in mlx5_lag_get_devcom_comp()
1253 return devcom; in mlx5_lag_get_devcom_comp()
1266 struct mlx5_devcom_comp_dev *devcom; in mlx5_do_bond_work() local
1269 devcom = mlx5_lag_get_devcom_comp(ldev); in mlx5_do_bond_work()
1270 if (!devcom) in mlx5_do_bond_work()
1273 status = mlx5_devcom_comp_trylock(devcom); in mlx5_do_bond_work()
1282 mlx5_devcom_comp_unlock(devcom); in mlx5_do_bond_work()
1289 mlx5_devcom_comp_unlock(devcom); in mlx5_do_bond_work()
/linux/drivers/net/ethernet/mellanox/mlx5/core/esw/
H A Dbridge_mcast.c545 struct mlx5_devcom_comp_dev *devcom = port->bridge->br_offloads->esw->devcom, *pos; in mlx5_esw_bridge_mcast_filter_flow_peer_create() local
549 if (!mlx5_devcom_for_each_peer_begin(devcom)) in mlx5_esw_bridge_mcast_filter_flow_peer_create()
552 mlx5_devcom_for_each_peer_entry(devcom, tmp, pos) { in mlx5_esw_bridge_mcast_filter_flow_peer_create()
567 mlx5_devcom_for_each_peer_end(devcom); in mlx5_esw_bridge_mcast_filter_flow_peer_create()
H A Dbridge.c659 struct mlx5_devcom_comp_dev *devcom = bridge->br_offloads->esw->devcom, *pos; in mlx5_esw_bridge_ingress_flow_peer_create() local
663 if (!mlx5_devcom_for_each_peer_begin(devcom)) in mlx5_esw_bridge_ingress_flow_peer_create()
666 mlx5_devcom_for_each_peer_entry(devcom, tmp, pos) { in mlx5_esw_bridge_ingress_flow_peer_create()
682 mlx5_devcom_for_each_peer_end(devcom); in mlx5_esw_bridge_ingress_flow_peer_create()
/linux/drivers/net/ethernet/mellanox/mlx5/core/
H A Den_tc.c1699 mlx5_devcom_for_each_peer_entry_rcu(esw->devcom, esw, pos) { in mlx5e_tc_query_route_vport()
2150 struct mlx5_devcom_comp_dev *devcom; in mlx5e_tc_del_fdb_peers_flow() local
2155 devcom = flow->priv->mdev->priv.eswitch->devcom; in mlx5e_tc_del_fdb_peers_flow()
2156 mlx5_devcom_for_each_peer_entry(devcom, peer_esw, pos) { in mlx5e_tc_del_fdb_peers_flow()
2166 struct mlx5_devcom_comp_dev *devcom = flow->priv->mdev->priv.eswitch->devcom; in mlx5e_tc_del_flow() local
2168 if (!mlx5_devcom_for_each_peer_begin(devcom)) { in mlx5e_tc_del_flow()
2174 mlx5_devcom_for_each_peer_end(devcom); in mlx5e_tc_del_flow()
4367 bool esw_paired = mlx5_devcom_comp_is_ready(esw_attr->in_mdev->priv.eswitch->devcom); in is_peer_flow_needed()
4634 struct mlx5_devcom_comp_dev *devcom = priv->mdev->priv.eswitch->devcom, *pos; in mlx5e_add_fdb_flow() local
4652 if (!mlx5_devcom_for_each_peer_begin(devcom)) { in mlx5e_add_fdb_flow()
[all …]
H A Den_rep.c474 mlx5_devcom_for_each_peer_entry(esw->devcom, peer_esw, tmp) { in mlx5e_sqs2vport_add_peers_rules()
519 if (mlx5_devcom_comp_is_ready(esw->devcom) && in mlx5e_sqs2vport_start()
520 mlx5_devcom_for_each_peer_begin(esw->devcom)) in mlx5e_sqs2vport_start()
556 mlx5_devcom_for_each_peer_end(esw->devcom); in mlx5e_sqs2vport_start()
564 mlx5_devcom_for_each_peer_end(esw->devcom); in mlx5e_sqs2vport_start()
H A Deswitch_offloads.c3198 mlx5_devcom_comp_set_ready(esw->devcom, true); in mlx5_esw_offloads_devcom_event()
3208 mlx5_devcom_comp_set_ready(esw->devcom, false); in mlx5_esw_offloads_devcom_event()
3251 esw->devcom = mlx5_devcom_register_component(esw->dev->priv.devc, in mlx5_esw_offloads_devcom_init()
3256 if (!esw->devcom) in mlx5_esw_offloads_devcom_init()
3259 mlx5_devcom_send_event(esw->devcom, in mlx5_esw_offloads_devcom_init()
3267 if (!esw->devcom) in mlx5_esw_offloads_devcom_cleanup()
3270 mlx5_devcom_send_event(esw->devcom, in mlx5_esw_offloads_devcom_cleanup()
3275 mlx5_devcom_unregister_component(esw->devcom); in mlx5_esw_offloads_devcom_cleanup()
3277 esw->devcom = NULL; in mlx5_esw_offloads_devcom_cleanup()
3282 return mlx5_devcom_comp_is_ready(esw->devcom); in mlx5_esw_offloads_devcom_is_ready()
H A Den_main.c218 mlx5_devcom_comp_set_ready(slave_priv->devcom, true); in mlx5e_devcom_event_mpv()
240 priv->devcom = mlx5_devcom_register_component(priv->mdev->priv.devc, in mlx5e_devcom_init_mpv()
245 if (!priv->devcom) in mlx5e_devcom_init_mpv()
249 mlx5_devcom_send_event(priv->devcom, MPV_DEVCOM_MASTER_UP, in mlx5e_devcom_init_mpv()
259 if (!priv->devcom) in mlx5e_devcom_cleanup_mpv()
263 mlx5_devcom_send_event(priv->devcom, MPV_DEVCOM_MASTER_DOWN, in mlx5e_devcom_cleanup_mpv()
268 mlx5_devcom_unregister_component(priv->devcom); in mlx5e_devcom_cleanup_mpv()
269 priv->devcom = NULL; in mlx5e_devcom_cleanup_mpv()
H A Deswitch.h410 struct mlx5_devcom_comp_dev *devcom; member
H A Den.h977 struct mlx5_devcom_comp_dev *devcom; member
/linux/drivers/net/ethernet/mellanox/mlx5/core/en_accel/
H A Dipsec_fs.c2765 struct mlx5_devcom_comp_dev **devcom) in mlx5e_accel_ipsec_fs_init() argument
2817 ipsec->roce = mlx5_ipsec_fs_roce_init(mdev, devcom); in mlx5e_accel_ipsec_fs_init()
2896 if (!priv->ipsec || mlx5_devcom_comp_get_size(priv->devcom) < 2) in mlx5e_ipsec_send_event()
2899 mlx5_devcom_send_event(priv->devcom, event, event, priv); in mlx5e_ipsec_send_event()
2908 if (!priv->devcom) in mlx5e_ipsec_disable_events()
2911 if (!mlx5_devcom_for_each_peer_begin(priv->devcom)) in mlx5e_ipsec_disable_events()
2914 peer_priv = mlx5_devcom_get_next_peer_data(priv->devcom, &tmp); in mlx5e_ipsec_disable_events()
2918 mlx5_devcom_for_each_peer_end(priv->devcom); in mlx5e_ipsec_disable_events()
2920 mlx5_devcom_unregister_component(priv->devcom); in mlx5e_ipsec_disable_events()
2921 priv->devcom = NULL; in mlx5e_ipsec_disable_events()
H A Dipsec.h316 int mlx5e_accel_ipsec_fs_init(struct mlx5e_ipsec *ipsec, struct mlx5_devcom_comp_dev **devcom);
H A Dipsec.c1017 ret = mlx5e_accel_ipsec_fs_init(ipsec, &priv->devcom); in mlx5e_ipsec_init()