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
3737 #define IB_USER_VERBS_H
3838
3939 #include <linux/types.h>
40+#include <rdma/ib_verbs.h>
4041
4142 /*
4243 * Increment this value if any changes that break userspace ABI
@@ -93,6 +94,7 @@ enum { · 50 unmodified lines
9394 IB_USER_VERBS_EX_CMD_QUERY_DEVICE = IB_USER_VERBS_CMD_QUERY_DEVICE,
9495 IB_USER_VERBS_EX_CMD_CREATE_CQ = IB_USER_VERBS_CMD_CREATE_CQ,
9596 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,
9698 IB_USER_VERBS_EX_CMD_CREATE_FLOW = IB_USER_VERBS_CMD_THRESHOLD,
9799 IB_USER_VERBS_EX_CMD_DESTROY_FLOW,
98100 IB_USER_VERBS_EX_CMD_CREATE_WQ,
@@ -545,6 +547,14 @@ enum { · 446 unmodified lines
545547 IB_UVERBS_CREATE_QP_SUP_COMP_MASK = IB_UVERBS_CREATE_QP_MASK_IND_TABLE,
546548 };
547549
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+
548558 struct ib_uverbs_ex_create_qp {
549559 __u64 user_handle;
550560 __u32 pd_handle;
@@ -684,9 +694,20 @@ struct ib_uverbs_modify_qp { · 133 unmodified lines
684694 __u64 driver_data[0];
685695 };
686696
697+struct ib_uverbs_ex_modify_qp {
698+ struct ib_uverbs_modify_qp base;
699+ __u32 rate_limit;
700+ __u32 reserved;
701+};
702+
687703 struct ib_uverbs_modify_qp_resp {
688704 };
689705
706+struct ib_uverbs_ex_modify_qp_resp {
707+ __u32 comp_mask;
708+ __u32 response_length;
709+};
710+
690711 struct ib_uverbs_destroy_qp {
691712 __u64 response;
692713 __u32 qp_handle;
@@ -908,6 +929,23 @@ struct ib_uverbs_flow_spec_ipv6 { · 215 unmodified lines
908929 struct ib_uverbs_flow_ipv6_filter mask;
909930 };
910931
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+
911949 struct ib_uverbs_flow_attr {
912950 __u32 type;
913951 __u16 size;
include/uapi/rdma/mlx5-abi.h+37−1
@@ -82,6 +82,7 @@ enum mlx5_ib_alloc_ucontext_resp_mask { · 81 unmodified lines
8282
8383 enum mlx5_user_cmds_supp_uhw {
8484 MLX5_USER_CMDS_SUPP_UHW_QUERY_DEVICE = 1 << 0,
85+ MLX5_USER_CMDS_SUPP_UHW_CREATE_AH = 1 << 1,
8586 };
8687
8788 struct mlx5_ib_alloc_ucontext_resp {
@@ -124,18 +125,47 @@ struct mlx5_ib_rss_caps { · 36 unmodified lines
124125 __u8 reserved[7];
125126 };
126127
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+
127151 struct mlx5_ib_query_device_resp {
128152 __u32 comp_mask;
129153 __u32 response_length;
130154 struct mlx5_ib_tso_caps tso_caps;
131155 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;
132160 };
133161
134162 struct mlx5_ib_create_cq {
135163 __u64 buf_addr;
136164 __u64 db_addr;
137165 __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) */
139169 };
140170
141171 struct mlx5_ib_create_cq_resp {
@@ -232,6 +262,12 @@ struct mlx5_ib_create_wq { · 90 unmodified lines
232262 __u32 reserved;
233263 };
234264
265+struct mlx5_ib_create_ah_resp {
266+ __u32 response_length;
267+ __u8 dmac[ETH_ALEN];
268+ __u8 reserved[6];
269+};
270+
235271 struct mlx5_ib_create_wq_resp {
236272 __u32 response_length;
237273 __u32 reserved;