History

RDMA/bnxt_re: Add bnxt_re RoCE driver

This patch introduces the RoCE driver for the Broadcom NetXtreme-E 10/25/40/50G RoCE HCAs. The RoCE driver is a two part driver that relies on the parent bnxt_en NIC driver to operate. The changes needed in the bnxt_en driver have already been incorporated via Dave Miller's net tree into the mainline kernel. The vendor official git repository for this driver is available on github as: https://github.com/Broadcom/linux-rdma-nxt/

Selvin Xavier committed 9 years ago

Commit 1ac5a401 parent 24dc83114 files · +13347 −0Browse files

Showing the changes to include/uapi (1 of 14 files). Show all

Unified · Split

include/uapi/rdma/bnxt_re-abi.h+89−0
@@ -0,0 +1,89 @@
1+/*
2+ * Broadcom NetXtreme-E RoCE driver.
3+ *
4+ * Copyright (c) 2016 - 2017, Broadcom. All rights reserved. The term
5+ * Broadcom refers to Broadcom Limited and/or its subsidiaries.
6+ *
7+ * This software is available to you under a choice of one of two
8+ * licenses. You may choose to be licensed under the terms of the GNU
9+ * General Public License (GPL) Version 2, available from the file
10+ * COPYING in the main directory of this source tree, or the
11+ * BSD license below:
12+ *
13+ * Redistribution and use in source and binary forms, with or without
14+ * modification, are permitted provided that the following conditions
15+ * are met:
16+ *
17+ * 1. Redistributions of source code must retain the above copyright
18+ * notice, this list of conditions and the following disclaimer.
19+ * 2. Redistributions in binary form must reproduce the above copyright
20+ * notice, this list of conditions and the following disclaimer in
21+ * the documentation and/or other materials provided with the
22+ * distribution.
23+ *
24+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS''
25+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
26+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
27+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
28+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
30+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
31+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
32+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
33+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
34+ * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35+ *
36+ * Description: Uverbs ABI header file
37+ */
38+
39+#ifndef __BNXT_RE_UVERBS_ABI_H__
40+#define __BNXT_RE_UVERBS_ABI_H__
41+
42+#define BNXT_RE_ABI_VERSION 1
43+
44+struct bnxt_re_uctx_resp {
45+ __u32 dev_id;
46+ __u32 max_qp;
47+ __u32 pg_size;
48+ __u32 cqe_sz;
49+ __u32 max_cqd;
50+ __u32 rsvd;
51+};
52+
53+struct bnxt_re_pd_resp {
54+ __u32 pdid;
55+ __u32 dpi;
56+ __u64 dbr;
57+};
58+
59+struct bnxt_re_cq_req {
60+ __u64 cq_va;
61+ __u64 cq_handle;
62+};
63+
64+struct bnxt_re_cq_resp {
65+ __u32 cqid;
66+ __u32 tail;
67+ __u32 phase;
68+ __u32 rsvd;
69+};
70+
71+struct bnxt_re_qp_req {
72+ __u64 qpsva;
73+ __u64 qprva;
74+ __u64 qp_handle;
75+};
76+
77+struct bnxt_re_qp_resp {
78+ __u32 qpid;
79+ __u32 rsvd;
80+};
81+
82+enum bnxt_re_shpg_offt {
83+ BNXT_RE_BEG_RESV_OFFT = 0x00,
84+ BNXT_RE_AVID_OFFT = 0x10,
85+ BNXT_RE_AVID_SIZE = 0x04,
86+ BNXT_RE_END_RESV_OFFT = 0xFF0
87+};
88+
89+#endif /* __BNXT_RE_UVERBS_ABI_H__*/

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t