]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - include/uapi/rdma/mlx5-abi.h
Merge branch 'work.__copy_to_user' of git://git.kernel.org/pub/scm/linux/kernel/git...
[mirror_ubuntu-bionic-kernel.git] / include / uapi / rdma / mlx5-abi.h
index fae6cdaeb56d6c6a9e12f787041e0aff406bf78d..0b3d30837a9f6456aabe028f5f9931b3593d778c 100644 (file)
@@ -34,6 +34,7 @@
 #define MLX5_ABI_USER_H
 
 #include <linux/types.h>
+#include <linux/if_ether.h>    /* For ETH_ALEN. */
 
 enum {
        MLX5_QP_FLAG_SIGNATURE          = 1 << 0,
@@ -61,19 +62,24 @@ enum {
  */
 
 struct mlx5_ib_alloc_ucontext_req {
-       __u32   total_num_uuars;
-       __u32   num_low_latency_uuars;
+       __u32   total_num_bfregs;
+       __u32   num_low_latency_bfregs;
+};
+
+enum mlx5_lib_caps {
+       MLX5_LIB_CAP_4K_UAR     = (__u64)1 << 0,
 };
 
 struct mlx5_ib_alloc_ucontext_req_v2 {
-       __u32   total_num_uuars;
-       __u32   num_low_latency_uuars;
+       __u32   total_num_bfregs;
+       __u32   num_low_latency_bfregs;
        __u32   flags;
        __u32   comp_mask;
        __u8    max_cqe_version;
        __u8    reserved0;
        __u16   reserved1;
        __u32   reserved2;
+       __u64   lib_caps;
 };
 
 enum mlx5_ib_alloc_ucontext_resp_mask {
@@ -85,10 +91,21 @@ enum mlx5_user_cmds_supp_uhw {
        MLX5_USER_CMDS_SUPP_UHW_CREATE_AH    = 1 << 1,
 };
 
+/* The eth_min_inline response value is set to off-by-one vs the FW
+ * returned value to allow user-space to deal with older kernels.
+ */
+enum mlx5_user_inline_mode {
+       MLX5_USER_INLINE_MODE_NA,
+       MLX5_USER_INLINE_MODE_NONE,
+       MLX5_USER_INLINE_MODE_L2,
+       MLX5_USER_INLINE_MODE_IP,
+       MLX5_USER_INLINE_MODE_TCP_UDP,
+};
+
 struct mlx5_ib_alloc_ucontext_resp {
        __u32   qp_tab_size;
        __u32   bf_reg_size;
-       __u32   tot_uuars;
+       __u32   tot_bfregs;
        __u32   cache_line_size;
        __u16   max_sq_desc_sz;
        __u16   max_rq_desc_sz;
@@ -101,8 +118,11 @@ struct mlx5_ib_alloc_ucontext_resp {
        __u32   response_length;
        __u8    cqe_version;
        __u8    cmds_supp_uhw;
-       __u16   reserved2;
+       __u8    eth_min_inline;
+       __u8    reserved2;
        __u64   hca_core_clock_offset;
+       __u32   log_uar_size;
+       __u32   num_uars_per_page;
 };
 
 struct mlx5_ib_alloc_pd_resp {
@@ -241,7 +261,7 @@ struct mlx5_ib_create_qp_rss {
 };
 
 struct mlx5_ib_create_qp_resp {
-       __u32   uuar_index;
+       __u32   bfreg_index;
 };
 
 struct mlx5_ib_alloc_mw {