Showing the changes to include/uapi (2 of 40 files). Show all
Unified · Split
| @@ -37,6 +37,7 @@ · 36 unmodified lines | ||
| 37 | 37 | #define IB_USER_VERBS_H |
| 38 | 38 | |
| 39 | 39 | #include <linux/types.h> |
| 40 | +#include <rdma/ib_verbs.h> | |
| 40 | 41 | |
| 41 | 42 | /* |
| 42 | 43 | * Increment this value if any changes that break userspace ABI |
| @@ -93,6 +94,7 @@ enum { · 50 unmodified lines | ||
| 93 | 94 | IB_USER_VERBS_EX_CMD_QUERY_DEVICE = IB_USER_VERBS_CMD_QUERY_DEVICE, |
| 94 | 95 | IB_USER_VERBS_EX_CMD_CREATE_CQ = IB_USER_VERBS_CMD_CREATE_CQ, |
| 95 | 96 | IB_USER_VERBS_EX_CMD_CREATE_QP = IB_USER_VERBS_CMD_CREATE_QP, |
| 97 | + IB_USER_VERBS_EX_CMD_MODIFY_QP = IB_USER_VERBS_CMD_MODIFY_QP, | |
| 96 | 98 | IB_USER_VERBS_EX_CMD_CREATE_FLOW = IB_USER_VERBS_CMD_THRESHOLD, |
| 97 | 99 | IB_USER_VERBS_EX_CMD_DESTROY_FLOW, |
| 98 | 100 | IB_USER_VERBS_EX_CMD_CREATE_WQ, |
| @@ -545,6 +547,14 @@ enum { · 446 unmodified lines | ||
| 545 | 547 | IB_UVERBS_CREATE_QP_SUP_COMP_MASK = IB_UVERBS_CREATE_QP_MASK_IND_TABLE, |
| 546 | 548 | }; |
| 547 | 549 | |
| 550 | +enum { | |
| 551 | + IB_USER_LEGACY_LAST_QP_ATTR_MASK = IB_QP_DEST_QPN | |
| 552 | +}; | |
| 553 | + | |
| 554 | +enum { | |
| 555 | + IB_USER_LAST_QP_ATTR_MASK = IB_QP_RATE_LIMIT | |
| 556 | +}; | |
| 557 | + | |
| 548 | 558 | struct ib_uverbs_ex_create_qp { |
| 549 | 559 | __u64 user_handle; |
| 550 | 560 | __u32 pd_handle; |
| @@ -684,9 +694,20 @@ struct ib_uverbs_modify_qp { · 133 unmodified lines | ||
| 684 | 694 | __u64 driver_data[0]; |
| 685 | 695 | }; |
| 686 | 696 | |
| 697 | +struct ib_uverbs_ex_modify_qp { | |
| 698 | + struct ib_uverbs_modify_qp base; | |
| 699 | + __u32 rate_limit; | |
| 700 | + __u32 reserved; | |
| 701 | +}; | |
| 702 | + | |
| 687 | 703 | struct ib_uverbs_modify_qp_resp { |
| 688 | 704 | }; |
| 689 | 705 | |
| 706 | +struct ib_uverbs_ex_modify_qp_resp { | |
| 707 | + __u32 comp_mask; | |
| 708 | + __u32 response_length; | |
| 709 | +}; | |
| 710 | + | |
| 690 | 711 | struct ib_uverbs_destroy_qp { |
| 691 | 712 | __u64 response; |
| 692 | 713 | __u32 qp_handle; |
| @@ -908,6 +929,23 @@ struct ib_uverbs_flow_spec_ipv6 { · 215 unmodified lines | ||
| 908 | 929 | struct ib_uverbs_flow_ipv6_filter mask; |
| 909 | 930 | }; |
| 910 | 931 | |
| 932 | +struct ib_uverbs_flow_tunnel_filter { | |
| 933 | + __be32 tunnel_id; | |
| 934 | +}; | |
| 935 | + | |
| 936 | +struct ib_uverbs_flow_spec_tunnel { | |
| 937 | + union { | |
| 938 | + struct ib_uverbs_flow_spec_hdr hdr; | |
| 939 | + struct { | |
| 940 | + __u32 type; | |
| 941 | + __u16 size; | |
| 942 | + __u16 reserved; | |
| 943 | + }; | |
| 944 | + }; | |
| 945 | + struct ib_uverbs_flow_tunnel_filter val; | |
| 946 | + struct ib_uverbs_flow_tunnel_filter mask; | |
| 947 | +}; | |
| 948 | + | |
| 911 | 949 | struct ib_uverbs_flow_attr { |
| 912 | 950 | __u32 type; |
| 913 | 951 | __u16 size; |
| @@ -82,6 +82,7 @@ enum mlx5_ib_alloc_ucontext_resp_mask { · 81 unmodified lines | ||
| 82 | 82 | |
| 83 | 83 | enum mlx5_user_cmds_supp_uhw { |
| 84 | 84 | MLX5_USER_CMDS_SUPP_UHW_QUERY_DEVICE = 1 << 0, |
| 85 | + MLX5_USER_CMDS_SUPP_UHW_CREATE_AH = 1 << 1, | |
| 85 | 86 | }; |
| 86 | 87 | |
| 87 | 88 | struct mlx5_ib_alloc_ucontext_resp { |
| @@ -124,18 +125,47 @@ struct mlx5_ib_rss_caps { · 36 unmodified lines | ||
| 124 | 125 | __u8 reserved[7]; |
| 125 | 126 | }; |
| 126 | 127 | |
| 128 | +enum mlx5_ib_cqe_comp_res_format { | |
| 129 | + MLX5_IB_CQE_RES_FORMAT_HASH = 1 << 0, | |
| 130 | + MLX5_IB_CQE_RES_FORMAT_CSUM = 1 << 1, | |
| 131 | + MLX5_IB_CQE_RES_RESERVED = 1 << 2, | |
| 132 | +}; | |
| 133 | + | |
| 134 | +struct mlx5_ib_cqe_comp_caps { | |
| 135 | + __u32 max_num; | |
| 136 | + __u32 supported_format; /* enum mlx5_ib_cqe_comp_res_format */ | |
| 137 | +}; | |
| 138 | + | |
| 139 | +struct mlx5_packet_pacing_caps { | |
| 140 | + __u32 qp_rate_limit_min; | |
| 141 | + __u32 qp_rate_limit_max; /* In kpbs */ | |
| 142 | + | |
| 143 | + /* Corresponding bit will be set if qp type from | |
| 144 | + * 'enum ib_qp_type' is supported, e.g. | |
| 145 | + * supported_qpts |= 1 << IB_QPT_RAW_PACKET | |
| 146 | + */ | |
| 147 | + __u32 supported_qpts; | |
| 148 | + __u32 reserved; | |
| 149 | +}; | |
| 150 | + | |
| 127 | 151 | struct mlx5_ib_query_device_resp { |
| 128 | 152 | __u32 comp_mask; |
| 129 | 153 | __u32 response_length; |
| 130 | 154 | struct mlx5_ib_tso_caps tso_caps; |
| 131 | 155 | struct mlx5_ib_rss_caps rss_caps; |
| 156 | + struct mlx5_ib_cqe_comp_caps cqe_comp_caps; | |
| 157 | + struct mlx5_packet_pacing_caps packet_pacing_caps; | |
| 158 | + __u32 mlx5_ib_support_multi_pkt_send_wqes; | |
| 159 | + __u32 reserved; | |
| 132 | 160 | }; |
| 133 | 161 | |
| 134 | 162 | struct mlx5_ib_create_cq { |
| 135 | 163 | __u64 buf_addr; |
| 136 | 164 | __u64 db_addr; |
| 137 | 165 | __u32 cqe_size; |
| 138 | − __u32 reserved; /* explicit padding (optional on i386) */ | |
| 166 | + __u8 cqe_comp_en; | |
| 167 | + __u8 cqe_comp_res_format; | |
| 168 | + __u16 reserved; /* explicit padding (optional on i386) */ | |
| 139 | 169 | }; |
| 140 | 170 | |
| 141 | 171 | struct mlx5_ib_create_cq_resp { |
| @@ -232,6 +262,12 @@ struct mlx5_ib_create_wq { · 90 unmodified lines | ||
| 232 | 262 | __u32 reserved; |
| 233 | 263 | }; |
| 234 | 264 | |
| 265 | +struct mlx5_ib_create_ah_resp { | |
| 266 | + __u32 response_length; | |
| 267 | + __u8 dmac[ETH_ALEN]; | |
| 268 | + __u8 reserved[6]; | |
| 269 | +}; | |
| 270 | + | |
| 235 | 271 | struct mlx5_ib_create_wq_resp { |
| 236 | 272 | __u32 response_length; |
| 237 | 273 | __u32 reserved; |