blob: f9096321cb2dc3d3d6dd8578753231a8a0f628f7 [file] [log] [blame]
Christopher Ferris6a9755d2017-01-13 14:09:31 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef OCRDMA_ABI_USER_H
20#define OCRDMA_ABI_USER_H
21#include <linux/types.h>
22#define OCRDMA_ABI_VERSION 2
Christopher Ferris6a9755d2017-01-13 14:09:31 -080023#define OCRDMA_BE_ROCE_ABI_VERSION 1
24struct ocrdma_alloc_ucontext_resp {
25 __u32 dev_id;
26 __u32 wqe_size;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080027 __u32 max_inline_data;
28 __u32 dpp_wqe_size;
29 __u64 ah_tbl_page;
30 __u32 ah_tbl_len;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080031 __u32 rqe_size;
32 __u8 fw_ver[32];
33 __u64 rsvd1;
34 __u64 rsvd2;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080035};
36struct ocrdma_alloc_pd_ureq {
37 __u64 rsvd1;
38};
Christopher Ferris6a9755d2017-01-13 14:09:31 -080039struct ocrdma_alloc_pd_uresp {
40 __u32 id;
41 __u32 dpp_enabled;
42 __u32 dpp_page_addr_hi;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080043 __u32 dpp_page_addr_lo;
44 __u64 rsvd1;
45};
46struct ocrdma_create_cq_ureq {
Christopher Ferris6a9755d2017-01-13 14:09:31 -080047 __u32 dpp_cq;
48 __u32 rsvd;
49};
50#define MAX_CQ_PAGES 8
Christopher Ferris6a9755d2017-01-13 14:09:31 -080051struct ocrdma_create_cq_uresp {
52 __u32 cq_id;
53 __u32 page_size;
54 __u32 num_pages;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080055 __u32 max_hw_cqe;
56 __u64 page_addr[MAX_CQ_PAGES];
57 __u64 db_page_addr;
58 __u32 db_page_size;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080059 __u32 phase_change;
60 __u64 rsvd1;
61 __u64 rsvd2;
62};
Christopher Ferris6a9755d2017-01-13 14:09:31 -080063#define MAX_QP_PAGES 8
64#define MAX_UD_AV_PAGES 8
65struct ocrdma_create_qp_ureq {
66 __u8 enable_dpp_cq;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080067 __u8 rsvd;
68 __u16 dpp_cq_id;
69 __u32 rsvd1;
70};
Christopher Ferris6a9755d2017-01-13 14:09:31 -080071struct ocrdma_create_qp_uresp {
72 __u16 qp_id;
73 __u16 sq_dbid;
74 __u16 rq_dbid;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080075 __u16 resv0;
76 __u32 sq_page_size;
77 __u32 rq_page_size;
78 __u32 num_sq_pages;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080079 __u32 num_rq_pages;
80 __u64 sq_page_addr[MAX_QP_PAGES];
81 __u64 rq_page_addr[MAX_QP_PAGES];
82 __u64 db_page_addr;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080083 __u32 db_page_size;
84 __u32 dpp_credit;
85 __u32 dpp_offset;
86 __u32 num_wqe_allocated;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080087 __u32 num_rqe_allocated;
88 __u32 db_sq_offset;
89 __u32 db_rq_offset;
90 __u32 db_shift;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080091 __u64 rsvd[11];
92} __packed;
93struct ocrdma_create_srq_uresp {
94 __u16 rq_dbid;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080095 __u16 resv0;
96 __u32 resv1;
97 __u32 rq_page_size;
98 __u32 num_rq_pages;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080099 __u64 rq_page_addr[MAX_QP_PAGES];
100 __u64 db_page_addr;
101 __u32 db_page_size;
102 __u32 num_rqe_allocated;
Christopher Ferris6a9755d2017-01-13 14:09:31 -0800103 __u32 db_rq_offset;
104 __u32 db_shift;
105 __u64 rsvd2;
106 __u64 rsvd3;
Christopher Ferris6a9755d2017-01-13 14:09:31 -0800107};
108#endif