|
@@ -3675,14 +3675,8 @@ static void mlx5e_nic_init(struct mlx5_core_dev *mdev,
|
|
|
|
|
|
static void mlx5e_nic_cleanup(struct mlx5e_priv *priv)
|
|
|
{
|
|
|
- struct mlx5_core_dev *mdev = priv->mdev;
|
|
|
- struct mlx5_eswitch *esw = mdev->priv.eswitch;
|
|
|
-
|
|
|
mlx5e_vxlan_cleanup(priv);
|
|
|
|
|
|
- if (MLX5_CAP_GEN(mdev, vport_group_manager))
|
|
|
- mlx5_eswitch_unregister_vport_rep(esw, 0);
|
|
|
-
|
|
|
if (priv->xdp_prog)
|
|
|
bpf_prog_put(priv->xdp_prog);
|
|
|
}
|
|
@@ -3807,9 +3801,14 @@ static void mlx5e_nic_enable(struct mlx5e_priv *priv)
|
|
|
|
|
|
static void mlx5e_nic_disable(struct mlx5e_priv *priv)
|
|
|
{
|
|
|
+ struct mlx5_core_dev *mdev = priv->mdev;
|
|
|
+ struct mlx5_eswitch *esw = mdev->priv.eswitch;
|
|
|
+
|
|
|
queue_work(priv->wq, &priv->set_rx_mode_work);
|
|
|
+ if (MLX5_CAP_GEN(mdev, vport_group_manager))
|
|
|
+ mlx5_eswitch_unregister_vport_rep(esw, 0);
|
|
|
mlx5e_disable_async_events(priv);
|
|
|
- mlx5_lag_remove(priv->mdev);
|
|
|
+ mlx5_lag_remove(mdev);
|
|
|
}
|
|
|
|
|
|
static const struct mlx5e_profile mlx5e_nic_profile = {
|