static_ibverbs = (get_option('ibverbs_link') == 'static')
dlopen_ibverbs = (get_option('ibverbs_link') == 'dlopen')
-LIB_GLUE_BASE = 'librte_pmd_mlx5_glue.so'
-LIB_GLUE_VERSION = '20.02.0'
+LIB_GLUE_BASE = 'librte_common_mlx5_glue.so'
+LIB_GLUE_VERSION = abi_version
LIB_GLUE = LIB_GLUE_BASE + '.' + LIB_GLUE_VERSION
if dlopen_ibverbs
dpdk_conf.set('RTE_IBVERBS_LINK_DLOPEN', 1)
'struct ibv_counter_set_init_attr', 'counter_set_id' ],
[ 'HAVE_IBV_DEVICE_COUNTERS_SET_V45', 'infiniband/verbs.h',
'struct ibv_counters_init_attr', 'comp_mask' ],
+ [ 'HAVE_MLX5DV_DEVX_UAR_OFFSET', 'infiniband/mlx5dv.h',
+ 'struct mlx5dv_devx_uar', 'mmap_off' ],
]
# input array for meson symbol search:
# [ "MACRO to define if found", "header for the search",
'mlx5dv_devx_obj_create' ],
[ 'HAVE_IBV_FLOW_DEVX_COUNTERS', 'infiniband/mlx5dv.h',
'MLX5DV_FLOW_ACTION_COUNTERS_DEVX' ],
+ [ 'HAVE_MLX5_DR_CREATE_ACTION_DEFAULT_MISS', 'infiniband/mlx5dv.h',
+ 'MLX5DV_FLOW_ACTION_DEFAULT_MISS' ],
[ 'HAVE_IBV_DEVX_ASYNC', 'infiniband/mlx5dv.h',
'mlx5dv_devx_obj_query_async' ],
[ 'HAVE_IBV_DEVX_QP', 'infiniband/mlx5dv.h',
'mlx5dv_devx_qp_query' ],
+ [ 'HAVE_MLX5DV_PP_ALLOC', 'infiniband/mlx5dv.h',
+ 'mlx5dv_pp_alloc' ],
[ 'HAVE_MLX5DV_DR_ACTION_DEST_DEVX_TIR', 'infiniband/mlx5dv.h',
'mlx5dv_dr_action_create_dest_devx_tir' ],
[ 'HAVE_IBV_DEVX_EVENT', 'infiniband/mlx5dv.h',
[ 'HAVE_MLX5DV_DR_VLAN', 'infiniband/mlx5dv.h',
'mlx5dv_dr_action_create_push_vlan' ],
[ 'HAVE_IBV_VAR', 'infiniband/mlx5dv.h', 'mlx5dv_alloc_var' ],
+ [ 'HAVE_MLX5_OPCODE_ENHANCED_MPSW', 'infiniband/mlx5dv.h',
+ 'MLX5_OPCODE_ENHANCED_MPSW' ],
+ [ 'HAVE_MLX5_OPCODE_SEND_EN', 'infiniband/mlx5dv.h',
+ 'MLX5_OPCODE_SEND_EN' ],
+ [ 'HAVE_MLX5_OPCODE_WAIT', 'infiniband/mlx5dv.h',
+ 'MLX5_OPCODE_WAIT' ],
+ [ 'HAVE_MLX5_OPCODE_ACCESS_ASO', 'infiniband/mlx5dv.h',
+ 'MLX5_OPCODE_ACCESS_ASO' ],
[ 'HAVE_SUPPORTED_40000baseKR4_Full', 'linux/ethtool.h',
'SUPPORTED_40000baseKR4_Full' ],
[ 'HAVE_SUPPORTED_40000baseCR4_Full', 'linux/ethtool.h',
'RDMA_NLDEV_ATTR_NDEV_INDEX' ],
[ 'HAVE_MLX5_DR_FLOW_DUMP', 'infiniband/mlx5dv.h',
'mlx5dv_dump_dr_domain'],
+ [ 'HAVE_MLX5_DR_CREATE_ACTION_FLOW_SAMPLE', 'infiniband/mlx5dv.h',
+ 'mlx5dv_dr_action_create_flow_sampler'],
[ 'HAVE_MLX5DV_DR_MEM_RECLAIM', 'infiniband/mlx5dv.h',
'mlx5dv_dr_domain_set_reclaim_device_memory'],
+ [ 'HAVE_MLX5_DR_CREATE_ACTION_DEST_ARRAY', 'infiniband/mlx5dv.h',
+ 'mlx5dv_dr_action_create_dest_array'],
[ 'HAVE_DEVLINK', 'linux/devlink.h', 'DEVLINK_GENL_NAME' ],
+ [ 'HAVE_MLX5_DR_CREATE_ACTION_ASO', 'infiniband/mlx5dv.h',
+ 'mlx5dv_dr_action_create_aso' ],
]
config = configuration_data()
foreach arg:has_sym_args
# Build Glue Library
if dlopen_ibverbs
dlopen_name = 'mlx5_glue'
- dlopen_lib_name = 'rte_pmd_@0@'.format(dlopen_name)
+ dlopen_lib_name = 'rte_common_' + dlopen_name
dlopen_so_version = LIB_GLUE_VERSION
dlopen_sources = files('mlx5_glue.c')
dlopen_install_dir = [ eal_pmd_path + '-glue' ]