aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/rdma/bnxt_re-abi.h
diff options
context:
space:
mode:
authorDevesh Sharma <devesh.sharma@broadcom.com>2019-02-07 01:31:27 -0500
committerJason Gunthorpe <jgg@mellanox.com>2019-02-07 13:24:49 -0700
commit95b86d1c91ad3b19f882d9e70aa37c8e99e8dc17 (patch)
tree8e738c63a505763c924b071fe9be547c515e7162 /include/uapi/rdma/bnxt_re-abi.h
parentRDMA/bnxt_re: Add extended psn structure for 57500 adapters (diff)
downloadlinux-dev-95b86d1c91ad3b19f882d9e70aa37c8e99e8dc17.tar.xz
linux-dev-95b86d1c91ad3b19f882d9e70aa37c8e99e8dc17.zip
RDMA/bnxt_re: Update kernel user abi to pass chip context
User space verbs provider library would need chip context. Changing the ABI to add chip version details in structure. Furthermore, changing the kernel driver ucontext allocation code to initialize the abi structure with appropriate values. As suggested by community, appended the new fields at the bottom of the ABI structure and retaining to older fields as those were in the older versions. Keeping the ABI version at 1 and adding a new field in the ucontext response structure to hold the component mask. The user space library should check pre-defined flags to figure out if a certain feature is supported on not. Signed-off-by: Devesh Sharma <devesh.sharma@broadcom.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'include/uapi/rdma/bnxt_re-abi.h')
-rw-r--r--include/uapi/rdma/bnxt_re-abi.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/uapi/rdma/bnxt_re-abi.h b/include/uapi/rdma/bnxt_re-abi.h
index a7a6111e50c7..dc52e3cf574c 100644
--- a/include/uapi/rdma/bnxt_re-abi.h
+++ b/include/uapi/rdma/bnxt_re-abi.h
@@ -44,6 +44,14 @@
#define BNXT_RE_ABI_VERSION 1
+#define BNXT_RE_CHIP_ID0_CHIP_NUM_SFT 0x00
+#define BNXT_RE_CHIP_ID0_CHIP_REV_SFT 0x10
+#define BNXT_RE_CHIP_ID0_CHIP_MET_SFT 0x18
+
+enum {
+ BNXT_RE_UCNTX_CMASK_HAVE_CCTX = 0x1ULL
+};
+
struct bnxt_re_uctx_resp {
__u32 dev_id;
__u32 max_qp;
@@ -51,6 +59,9 @@ struct bnxt_re_uctx_resp {
__u32 cqe_sz;
__u32 max_cqd;
__u32 rsvd;
+ __aligned_u64 comp_mask;
+ __u32 chip_id0;
+ __u32 chip_id1;
};
/*