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:
Maher Sanalla
2026-02-25 16:19:32 +02:00
committed by Leon Romanovsky
parent 01b7768578
commit 385a06f74f
3 changed files with 16 additions and 0 deletions
@@ -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)
+9
View File
@@ -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)