MLX5_SET(disable_hca_in, in, opcode, MLX5_CMD_OP_DISABLE_HCA);
MLX5_SET(disable_hca_in, in, function_id, 0);
MLX5_SET(disable_hca_in, in, embedded_cpu_function, 0); return mlx5_cmd_exec(dev, in, sizeof(in), out, sizeof(out));
}
staticint mlx5_host_pf_init(struct mlx5_core_dev *dev)
{ int err;
if (mlx5_ecpf_esw_admins_host_pf(dev)) return 0;
/* ECPF shall enable HCA for host PF in the same way a PF * does this for its VFs when ECPF is not a eswitch manager.
*/
err = mlx5_cmd_host_pf_enable_hca(dev); if (err)
mlx5_core_err(dev, "Failed to enable external host PF HCA err(%d)\n", err);
return err;
}
staticvoid mlx5_host_pf_cleanup(struct mlx5_core_dev *dev)
{ int err;
if (mlx5_ecpf_esw_admins_host_pf(dev)) return;
err = mlx5_cmd_host_pf_disable_hca(dev); if (err) {
mlx5_core_err(dev, "Failed to disable external host PF HCA err(%d)\n", err); return;
}
}
int mlx5_ec_init(struct mlx5_core_dev *dev)
{ if (!mlx5_core_is_ecpf(dev)) return 0;
return mlx5_host_pf_init(dev);
}
void mlx5_ec_cleanup(struct mlx5_core_dev *dev)
{ int err;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.