mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-05-09 21:42:09 +02:00
net/mlx5: Expose TLP emulation capabilities
Expose and query TLP device emulation caps on driver load. Signed-off-by: Maher Sanalla <msanalla@nvidia.com> Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
This commit is contained in:
committed by
Leon Romanovsky
parent
01b7768578
commit
385a06f74f
@@ -255,6 +255,12 @@ int mlx5_query_hca_caps(struct mlx5_core_dev *dev)
|
||||
return err;
|
||||
}
|
||||
|
||||
if (MLX5_CAP_GEN(dev, tlp_device_emulation_manager)) {
|
||||
err = mlx5_core_get_caps_mode(dev, MLX5_CAP_TLP_EMULATION, HCA_CAP_OPMOD_GET_CUR);
|
||||
if (err)
|
||||
return err;
|
||||
}
|
||||
|
||||
if (MLX5_CAP_GEN(dev, ipsec_offload)) {
|
||||
err = mlx5_core_get_caps_mode(dev, MLX5_CAP_IPSEC, HCA_CAP_OPMOD_GET_CUR);
|
||||
if (err)
|
||||
|
||||
@@ -1772,6 +1772,7 @@ static const int types[] = {
|
||||
MLX5_CAP_CRYPTO,
|
||||
MLX5_CAP_SHAMPO,
|
||||
MLX5_CAP_ADV_RDMA,
|
||||
MLX5_CAP_TLP_EMULATION,
|
||||
};
|
||||
|
||||
static void mlx5_hca_caps_free(struct mlx5_core_dev *dev)
|
||||
|
||||
@@ -1259,6 +1259,7 @@ enum mlx5_cap_type {
|
||||
MLX5_CAP_PORT_SELECTION = 0x25,
|
||||
MLX5_CAP_ADV_VIRTUALIZATION = 0x26,
|
||||
MLX5_CAP_ADV_RDMA = 0x28,
|
||||
MLX5_CAP_TLP_EMULATION = 0x2a,
|
||||
/* NUM OF CAP Types */
|
||||
MLX5_CAP_NUM
|
||||
};
|
||||
@@ -1481,6 +1482,14 @@ enum mlx5_qcam_feature_groups {
|
||||
MLX5_GET64(virtio_emulation_cap, \
|
||||
(mdev)->caps.hca[MLX5_CAP_VDPA_EMULATION]->cur, cap)
|
||||
|
||||
#define MLX5_CAP_DEV_TLP_EMULATION(mdev, cap)\
|
||||
MLX5_GET(tlp_dev_emu_capabilities, \
|
||||
(mdev)->caps.hca[MLX5_CAP_TLP_EMULATION]->cur, cap)
|
||||
|
||||
#define MLX5_CAP64_DEV_TLP_EMULATION(mdev, cap)\
|
||||
MLX5_GET64(tlp_dev_emu_capabilities, \
|
||||
(mdev)->caps.hca[MLX5_CAP_TLP_EMULATION]->cur, cap)
|
||||
|
||||
#define MLX5_CAP_IPSEC(mdev, cap)\
|
||||
MLX5_GET(ipsec_cap, (mdev)->caps.hca[MLX5_CAP_IPSEC]->cur, cap)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user