common/mlx5: move to formal ASO action API
[dpdk.git] / drivers / common / mlx5 / linux / meson.build
index 638bb2b..63b78e4 100644 (file)
@@ -5,8 +5,8 @@ includes += include_directories('.')
 
 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)
@@ -64,6 +64,8 @@ has_member_args = [
        '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",
@@ -95,10 +97,14 @@ has_sym_args = [
        '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',
@@ -114,6 +120,14 @@ has_sym_args = [
        [ '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',
@@ -160,9 +174,15 @@ has_sym_args = [
        '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
@@ -179,7 +199,7 @@ configure_file(output : 'mlx5_autoconf.h', configuration : config)
 # 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' ]