xref: /aosp_15_r20/bionic/libc/kernel/uapi/rdma/irdma-abi.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef IRDMA_ABI_H
8*8d67ca89SAndroid Build Coastguard Worker #define IRDMA_ABI_H
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker #define IRDMA_ABI_VER 5
11*8d67ca89SAndroid Build Coastguard Worker enum irdma_memreg_type {
12*8d67ca89SAndroid Build Coastguard Worker   IRDMA_MEMREG_TYPE_MEM = 0,
13*8d67ca89SAndroid Build Coastguard Worker   IRDMA_MEMREG_TYPE_QP = 1,
14*8d67ca89SAndroid Build Coastguard Worker   IRDMA_MEMREG_TYPE_CQ = 2,
15*8d67ca89SAndroid Build Coastguard Worker };
16*8d67ca89SAndroid Build Coastguard Worker enum {
17*8d67ca89SAndroid Build Coastguard Worker   IRDMA_ALLOC_UCTX_USE_RAW_ATTR = 1 << 0,
18*8d67ca89SAndroid Build Coastguard Worker   IRDMA_ALLOC_UCTX_MIN_HW_WQ_SIZE = 1 << 1,
19*8d67ca89SAndroid Build Coastguard Worker };
20*8d67ca89SAndroid Build Coastguard Worker struct irdma_alloc_ucontext_req {
21*8d67ca89SAndroid Build Coastguard Worker   __u32 rsvd32;
22*8d67ca89SAndroid Build Coastguard Worker   __u8 userspace_ver;
23*8d67ca89SAndroid Build Coastguard Worker   __u8 rsvd8[3];
24*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 comp_mask;
25*8d67ca89SAndroid Build Coastguard Worker };
26*8d67ca89SAndroid Build Coastguard Worker struct irdma_alloc_ucontext_resp {
27*8d67ca89SAndroid Build Coastguard Worker   __u32 max_pds;
28*8d67ca89SAndroid Build Coastguard Worker   __u32 max_qps;
29*8d67ca89SAndroid Build Coastguard Worker   __u32 wq_size;
30*8d67ca89SAndroid Build Coastguard Worker   __u8 kernel_ver;
31*8d67ca89SAndroid Build Coastguard Worker   __u8 rsvd[3];
32*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 feature_flags;
33*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 db_mmap_key;
34*8d67ca89SAndroid Build Coastguard Worker   __u32 max_hw_wq_frags;
35*8d67ca89SAndroid Build Coastguard Worker   __u32 max_hw_read_sges;
36*8d67ca89SAndroid Build Coastguard Worker   __u32 max_hw_inline;
37*8d67ca89SAndroid Build Coastguard Worker   __u32 max_hw_rq_quanta;
38*8d67ca89SAndroid Build Coastguard Worker   __u32 max_hw_wq_quanta;
39*8d67ca89SAndroid Build Coastguard Worker   __u32 min_hw_cq_size;
40*8d67ca89SAndroid Build Coastguard Worker   __u32 max_hw_cq_size;
41*8d67ca89SAndroid Build Coastguard Worker   __u16 max_hw_sq_chunk;
42*8d67ca89SAndroid Build Coastguard Worker   __u8 hw_rev;
43*8d67ca89SAndroid Build Coastguard Worker   __u8 rsvd2;
44*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 comp_mask;
45*8d67ca89SAndroid Build Coastguard Worker   __u16 min_hw_wq_size;
46*8d67ca89SAndroid Build Coastguard Worker   __u8 rsvd3[6];
47*8d67ca89SAndroid Build Coastguard Worker };
48*8d67ca89SAndroid Build Coastguard Worker struct irdma_alloc_pd_resp {
49*8d67ca89SAndroid Build Coastguard Worker   __u32 pd_id;
50*8d67ca89SAndroid Build Coastguard Worker   __u8 rsvd[4];
51*8d67ca89SAndroid Build Coastguard Worker };
52*8d67ca89SAndroid Build Coastguard Worker struct irdma_resize_cq_req {
53*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 user_cq_buffer;
54*8d67ca89SAndroid Build Coastguard Worker };
55*8d67ca89SAndroid Build Coastguard Worker struct irdma_create_cq_req {
56*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 user_cq_buf;
57*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 user_shadow_area;
58*8d67ca89SAndroid Build Coastguard Worker };
59*8d67ca89SAndroid Build Coastguard Worker struct irdma_create_qp_req {
60*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 user_wqe_bufs;
61*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 user_compl_ctx;
62*8d67ca89SAndroid Build Coastguard Worker };
63*8d67ca89SAndroid Build Coastguard Worker struct irdma_mem_reg_req {
64*8d67ca89SAndroid Build Coastguard Worker   __u16 reg_type;
65*8d67ca89SAndroid Build Coastguard Worker   __u16 cq_pages;
66*8d67ca89SAndroid Build Coastguard Worker   __u16 rq_pages;
67*8d67ca89SAndroid Build Coastguard Worker   __u16 sq_pages;
68*8d67ca89SAndroid Build Coastguard Worker };
69*8d67ca89SAndroid Build Coastguard Worker struct irdma_modify_qp_req {
70*8d67ca89SAndroid Build Coastguard Worker   __u8 sq_flush;
71*8d67ca89SAndroid Build Coastguard Worker   __u8 rq_flush;
72*8d67ca89SAndroid Build Coastguard Worker   __u8 rsvd[6];
73*8d67ca89SAndroid Build Coastguard Worker };
74*8d67ca89SAndroid Build Coastguard Worker struct irdma_create_cq_resp {
75*8d67ca89SAndroid Build Coastguard Worker   __u32 cq_id;
76*8d67ca89SAndroid Build Coastguard Worker   __u32 cq_size;
77*8d67ca89SAndroid Build Coastguard Worker };
78*8d67ca89SAndroid Build Coastguard Worker struct irdma_create_qp_resp {
79*8d67ca89SAndroid Build Coastguard Worker   __u32 qp_id;
80*8d67ca89SAndroid Build Coastguard Worker   __u32 actual_sq_size;
81*8d67ca89SAndroid Build Coastguard Worker   __u32 actual_rq_size;
82*8d67ca89SAndroid Build Coastguard Worker   __u32 irdma_drv_opt;
83*8d67ca89SAndroid Build Coastguard Worker   __u16 push_idx;
84*8d67ca89SAndroid Build Coastguard Worker   __u8 lsmm;
85*8d67ca89SAndroid Build Coastguard Worker   __u8 rsvd;
86*8d67ca89SAndroid Build Coastguard Worker   __u32 qp_caps;
87*8d67ca89SAndroid Build Coastguard Worker };
88*8d67ca89SAndroid Build Coastguard Worker struct irdma_modify_qp_resp {
89*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 push_wqe_mmap_key;
90*8d67ca89SAndroid Build Coastguard Worker   __aligned_u64 push_db_mmap_key;
91*8d67ca89SAndroid Build Coastguard Worker   __u16 push_offset;
92*8d67ca89SAndroid Build Coastguard Worker   __u8 push_valid;
93*8d67ca89SAndroid Build Coastguard Worker   __u8 rsvd[5];
94*8d67ca89SAndroid Build Coastguard Worker };
95*8d67ca89SAndroid Build Coastguard Worker struct irdma_create_ah_resp {
96*8d67ca89SAndroid Build Coastguard Worker   __u32 ah_id;
97*8d67ca89SAndroid Build Coastguard Worker   __u8 rsvd[4];
98*8d67ca89SAndroid Build Coastguard Worker };
99*8d67ca89SAndroid Build Coastguard Worker #endif
100