History

Merge branch 'mlx' into merge-test

Doug Ledford committed 9 years ago

Commit 86ef0be2 parents 253f8b2 7ceb74040 files · +875 −336Browse files

Showing the changes to include/uapi (2 of 40 files). Show all

Unified · Split

2 files
  1. include/uapi/rdma/ib_user_verbs.h +38 −0
  2. include/uapi/rdma/mlx5-abi.h +37 −1
include/uapi/rdma/ib_user_verbs.h+38−0
@@ -37,6 +37,7 @@ · 36 unmodified lines
37#define IB_USER_VERBS_H37#define IB_USER_VERBS_H
38 38
39#include <linux/types.h>39#include <linux/types.h>
40#include <rdma/ib_verbs.h>
40 41
41/*42/*
42 * Increment this value if any changes that break userspace ABI43 * Increment this value if any changes that break userspace ABI
@@ -93,6 +94,7 @@ enum { · 50 unmodified lines
93 IB_USER_VERBS_EX_CMD_QUERY_DEVICE = IB_USER_VERBS_CMD_QUERY_DEVICE,94 IB_USER_VERBS_EX_CMD_QUERY_DEVICE = IB_USER_VERBS_CMD_QUERY_DEVICE,
94 IB_USER_VERBS_EX_CMD_CREATE_CQ = IB_USER_VERBS_CMD_CREATE_CQ,95 IB_USER_VERBS_EX_CMD_CREATE_CQ = IB_USER_VERBS_CMD_CREATE_CQ,
95 IB_USER_VERBS_EX_CMD_CREATE_QP = IB_USER_VERBS_CMD_CREATE_QP,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 IB_USER_VERBS_EX_CMD_CREATE_FLOW = IB_USER_VERBS_CMD_THRESHOLD,98 IB_USER_VERBS_EX_CMD_CREATE_FLOW = IB_USER_VERBS_CMD_THRESHOLD,
97 IB_USER_VERBS_EX_CMD_DESTROY_FLOW,99 IB_USER_VERBS_EX_CMD_DESTROY_FLOW,
98 IB_USER_VERBS_EX_CMD_CREATE_WQ,100 IB_USER_VERBS_EX_CMD_CREATE_WQ,
@@ -545,6 +547,14 @@ enum { · 446 unmodified lines
545 IB_UVERBS_CREATE_QP_SUP_COMP_MASK = IB_UVERBS_CREATE_QP_MASK_IND_TABLE,547 IB_UVERBS_CREATE_QP_SUP_COMP_MASK = IB_UVERBS_CREATE_QP_MASK_IND_TABLE,
546};548};
547 549
550enum {
551 IB_USER_LEGACY_LAST_QP_ATTR_MASK = IB_QP_DEST_QPN
552};
553
554enum {
555 IB_USER_LAST_QP_ATTR_MASK = IB_QP_RATE_LIMIT
556};
557
548struct ib_uverbs_ex_create_qp {558struct ib_uverbs_ex_create_qp {
549 __u64 user_handle;559 __u64 user_handle;
550 __u32 pd_handle;560 __u32 pd_handle;
@@ -684,9 +694,20 @@ struct ib_uverbs_modify_qp { · 133 unmodified lines
684 __u64 driver_data[0];694 __u64 driver_data[0];
685};695};
686 696
697struct ib_uverbs_ex_modify_qp {
698 struct ib_uverbs_modify_qp base;
699 __u32 rate_limit;
700 __u32 reserved;
701};
702
687struct ib_uverbs_modify_qp_resp {703struct ib_uverbs_modify_qp_resp {
688};704};
689 705
706struct ib_uverbs_ex_modify_qp_resp {
707 __u32 comp_mask;
708 __u32 response_length;
709};
710
690struct ib_uverbs_destroy_qp {711struct ib_uverbs_destroy_qp {
691 __u64 response;712 __u64 response;
692 __u32 qp_handle;713 __u32 qp_handle;
@@ -908,6 +929,23 @@ struct ib_uverbs_flow_spec_ipv6 { · 215 unmodified lines
908 struct ib_uverbs_flow_ipv6_filter mask;929 struct ib_uverbs_flow_ipv6_filter mask;
909};930};
910 931
932struct ib_uverbs_flow_tunnel_filter {
933 __be32 tunnel_id;
934};
935
936struct 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
911struct ib_uverbs_flow_attr {949struct ib_uverbs_flow_attr {
912 __u32 type;950 __u32 type;
913 __u16 size;951 __u16 size;
include/uapi/rdma/mlx5-abi.h+37−1
@@ -82,6 +82,7 @@ enum mlx5_ib_alloc_ucontext_resp_mask { · 81 unmodified lines
82 82
83enum mlx5_user_cmds_supp_uhw {83enum mlx5_user_cmds_supp_uhw {
84 MLX5_USER_CMDS_SUPP_UHW_QUERY_DEVICE = 1 << 0,84 MLX5_USER_CMDS_SUPP_UHW_QUERY_DEVICE = 1 << 0,
85 MLX5_USER_CMDS_SUPP_UHW_CREATE_AH = 1 << 1,
85};86};
86 87
87struct mlx5_ib_alloc_ucontext_resp {88struct mlx5_ib_alloc_ucontext_resp {
@@ -124,18 +125,47 @@ struct mlx5_ib_rss_caps { · 36 unmodified lines
124 __u8 reserved[7];125 __u8 reserved[7];
125};126};
126 127
128enum 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
134struct mlx5_ib_cqe_comp_caps {
135 __u32 max_num;
136 __u32 supported_format; /* enum mlx5_ib_cqe_comp_res_format */
137};
138
139struct 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
127struct mlx5_ib_query_device_resp {151struct mlx5_ib_query_device_resp {
128 __u32 comp_mask;152 __u32 comp_mask;
129 __u32 response_length;153 __u32 response_length;
130 struct mlx5_ib_tso_caps tso_caps;154 struct mlx5_ib_tso_caps tso_caps;
131 struct mlx5_ib_rss_caps rss_caps;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
134struct mlx5_ib_create_cq {162struct mlx5_ib_create_cq {
135 __u64 buf_addr;163 __u64 buf_addr;
136 __u64 db_addr;164 __u64 db_addr;
137 __u32 cqe_size;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
141struct mlx5_ib_create_cq_resp {171struct mlx5_ib_create_cq_resp {
@@ -232,6 +262,12 @@ struct mlx5_ib_create_wq { · 90 unmodified lines
232 __u32 reserved;262 __u32 reserved;
233};263};
234 264
265struct mlx5_ib_create_ah_resp {
266 __u32 response_length;
267 __u8 dmac[ETH_ALEN];
268 __u8 reserved[6];
269};
270
235struct mlx5_ib_create_wq_resp {271struct mlx5_ib_create_wq_resp {
236 __u32 response_length;272 __u32 response_length;
237 __u32 reserved;273 __u32 reserved;