1/****************************************************************************
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 CXGB4_ABI_USER_H
20#define CXGB4_ABI_USER_H
21#include <linux/types.h>
22#define C4IW_UVERBS_ABI_VERSION 3
23enum {
24  C4IW_64B_CQE = (1 << 0)
25};
26struct c4iw_create_cq {
27  __u32 flags;
28  __u32 reserved;
29};
30struct c4iw_create_cq_resp {
31  __aligned_u64 key;
32  __aligned_u64 gts_key;
33  __aligned_u64 memsize;
34  __u32 cqid;
35  __u32 size;
36  __u32 qid_mask;
37  __u32 flags;
38};
39enum {
40  C4IW_QPF_ONCHIP = (1 << 0),
41  C4IW_QPF_WRITE_W_IMM = (1 << 1)
42};
43struct c4iw_create_qp_resp {
44  __aligned_u64 ma_sync_key;
45  __aligned_u64 sq_key;
46  __aligned_u64 rq_key;
47  __aligned_u64 sq_db_gts_key;
48  __aligned_u64 rq_db_gts_key;
49  __aligned_u64 sq_memsize;
50  __aligned_u64 rq_memsize;
51  __u32 sqid;
52  __u32 rqid;
53  __u32 sq_size;
54  __u32 rq_size;
55  __u32 qid_mask;
56  __u32 flags;
57};
58struct c4iw_create_srq_resp {
59  __aligned_u64 srq_key;
60  __aligned_u64 srq_db_gts_key;
61  __aligned_u64 srq_memsize;
62  __u32 srqid;
63  __u32 srq_size;
64  __u32 rqt_abs_idx;
65  __u32 qid_mask;
66  __u32 flags;
67  __u32 reserved;
68};
69enum {
70  T4_SRQ_LIMIT_SUPPORT = 1 << 0,
71};
72struct c4iw_alloc_ucontext_resp {
73  __aligned_u64 status_page_key;
74  __u32 status_page_size;
75  __u32 reserved;
76};
77struct c4iw_alloc_pd_resp {
78  __u32 pdid;
79};
80#endif
81