xref: /aosp_15_r20/bionic/libc/kernel/uapi/rdma/ocrdma-abi.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1 /*
2  * This file is auto-generated. Modifications will be lost.
3  *
4  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5  * for more information.
6  */
7 #ifndef OCRDMA_ABI_USER_H
8 #define OCRDMA_ABI_USER_H
9 #include <linux/types.h>
10 #define OCRDMA_ABI_VERSION 2
11 #define OCRDMA_BE_ROCE_ABI_VERSION 1
12 struct ocrdma_alloc_ucontext_resp {
13   __u32 dev_id;
14   __u32 wqe_size;
15   __u32 max_inline_data;
16   __u32 dpp_wqe_size;
17   __aligned_u64 ah_tbl_page;
18   __u32 ah_tbl_len;
19   __u32 rqe_size;
20   __u8 fw_ver[32];
21   __aligned_u64 rsvd1;
22   __aligned_u64 rsvd2;
23 };
24 struct ocrdma_alloc_pd_ureq {
25   __u32 rsvd[2];
26 };
27 struct ocrdma_alloc_pd_uresp {
28   __u32 id;
29   __u32 dpp_enabled;
30   __u32 dpp_page_addr_hi;
31   __u32 dpp_page_addr_lo;
32   __u32 rsvd[2];
33 };
34 struct ocrdma_create_cq_ureq {
35   __u32 dpp_cq;
36   __u32 rsvd;
37 };
38 #define MAX_CQ_PAGES 8
39 struct ocrdma_create_cq_uresp {
40   __u32 cq_id;
41   __u32 page_size;
42   __u32 num_pages;
43   __u32 max_hw_cqe;
44   __aligned_u64 page_addr[MAX_CQ_PAGES];
45   __aligned_u64 db_page_addr;
46   __u32 db_page_size;
47   __u32 phase_change;
48   __aligned_u64 rsvd1;
49   __aligned_u64 rsvd2;
50 };
51 #define MAX_QP_PAGES 8
52 #define MAX_UD_AV_PAGES 8
53 struct ocrdma_create_qp_ureq {
54   __u8 enable_dpp_cq;
55   __u8 rsvd;
56   __u16 dpp_cq_id;
57   __u32 rsvd1;
58 };
59 struct ocrdma_create_qp_uresp {
60   __u16 qp_id;
61   __u16 sq_dbid;
62   __u16 rq_dbid;
63   __u16 resv0;
64   __u32 sq_page_size;
65   __u32 rq_page_size;
66   __u32 num_sq_pages;
67   __u32 num_rq_pages;
68   __aligned_u64 sq_page_addr[MAX_QP_PAGES];
69   __aligned_u64 rq_page_addr[MAX_QP_PAGES];
70   __aligned_u64 db_page_addr;
71   __u32 db_page_size;
72   __u32 dpp_credit;
73   __u32 dpp_offset;
74   __u32 num_wqe_allocated;
75   __u32 num_rqe_allocated;
76   __u32 db_sq_offset;
77   __u32 db_rq_offset;
78   __u32 db_shift;
79   __aligned_u64 rsvd[11];
80 };
81 struct ocrdma_create_srq_uresp {
82   __u16 rq_dbid;
83   __u16 resv0;
84   __u32 resv1;
85   __u32 rq_page_size;
86   __u32 num_rq_pages;
87   __aligned_u64 rq_page_addr[MAX_QP_PAGES];
88   __aligned_u64 db_page_addr;
89   __u32 db_page_size;
90   __u32 num_rqe_allocated;
91   __u32 db_rq_offset;
92   __u32 db_shift;
93   __aligned_u64 rsvd2;
94   __aligned_u64 rsvd3;
95 };
96 #endif
97