net/mlx5: Expose vDPA emulation device capabilities
Expose vDPA emulation device capabilities from the core layer. It includes reading the capabilities from the firmware and exposing helper functions to access the data. Signed-off-by: Yishai Hadas <yishaih@mellanox.com> Reviewed-by: Shahaf Shuler <shahafs@mellanox.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
This commit is contained in:
parent
90fbca5952
commit
ca1992c62c
|
@ -245,6 +245,13 @@ int mlx5_query_hca_caps(struct mlx5_core_dev *dev)
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (MLX5_CAP_GEN_64(dev, general_obj_types) &
|
||||||
|
MLX5_GENERAL_OBJ_TYPES_CAP_VIRTIO_NET_Q) {
|
||||||
|
err = mlx5_core_get_caps(dev, MLX5_CAP_VDPA_EMULATION);
|
||||||
|
if (err)
|
||||||
|
return err;
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1105,6 +1105,7 @@ enum mlx5_cap_type {
|
||||||
MLX5_CAP_DEV_MEM,
|
MLX5_CAP_DEV_MEM,
|
||||||
MLX5_CAP_RESERVED_16,
|
MLX5_CAP_RESERVED_16,
|
||||||
MLX5_CAP_TLS,
|
MLX5_CAP_TLS,
|
||||||
|
MLX5_CAP_VDPA_EMULATION = 0x13,
|
||||||
MLX5_CAP_DEV_EVENT = 0x14,
|
MLX5_CAP_DEV_EVENT = 0x14,
|
||||||
/* NUM OF CAP Types */
|
/* NUM OF CAP Types */
|
||||||
MLX5_CAP_NUM
|
MLX5_CAP_NUM
|
||||||
|
@ -1297,6 +1298,14 @@ enum mlx5_qcam_feature_groups {
|
||||||
#define MLX5_CAP_DEV_EVENT(mdev, cap)\
|
#define MLX5_CAP_DEV_EVENT(mdev, cap)\
|
||||||
MLX5_ADDR_OF(device_event_cap, (mdev)->caps.hca_cur[MLX5_CAP_DEV_EVENT], cap)
|
MLX5_ADDR_OF(device_event_cap, (mdev)->caps.hca_cur[MLX5_CAP_DEV_EVENT], cap)
|
||||||
|
|
||||||
|
#define MLX5_CAP_DEV_VDPA_EMULATION(mdev, cap)\
|
||||||
|
MLX5_GET(device_virtio_emulation_cap, \
|
||||||
|
(mdev)->caps.hca_cur[MLX5_CAP_VDPA_EMULATION], cap)
|
||||||
|
|
||||||
|
#define MLX5_CAP64_DEV_VDPA_EMULATION(mdev, cap)\
|
||||||
|
MLX5_GET64(device_virtio_emulation_cap, \
|
||||||
|
(mdev)->caps.hca_cur[MLX5_CAP_VDPA_EMULATION], cap)
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
MLX5_CMD_STAT_OK = 0x0,
|
MLX5_CMD_STAT_OK = 0x0,
|
||||||
MLX5_CMD_STAT_INT_ERR = 0x1,
|
MLX5_CMD_STAT_INT_ERR = 0x1,
|
||||||
|
|
Loading…
Reference in New Issue