blob: 0407571f928ea82148e9271e098410aeaebbac69 [file] [log] [blame]
Christopher Ferris48af7cb2017-02-21 12:35:09 -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 HNS_ABI_USER_H
20#define HNS_ABI_USER_H
21#include <linux/types.h>
22struct hns_roce_ib_create_cq {
Christopher Ferris76a1d452018-06-27 14:12:29 -070023 __aligned_u64 buf_addr;
24 __aligned_u64 db_addr;
Christopher Ferris32ff3f82020-12-14 13:10:04 -080025 __u32 cqe_size;
26 __u32 reserved;
Christopher Ferris76a1d452018-06-27 14:12:29 -070027};
Christopher Ferris05667cd2021-02-16 16:01:34 -080028enum hns_roce_cq_cap_flags {
29 HNS_ROCE_CQ_FLAG_RECORD_DB = 1 << 0,
30};
Christopher Ferris76a1d452018-06-27 14:12:29 -070031struct hns_roce_ib_create_cq_resp {
32 __aligned_u64 cqn;
33 __aligned_u64 cap_flags;
Christopher Ferris48af7cb2017-02-21 12:35:09 -080034};
Christopher Ferrisd842e432019-03-07 10:21:59 -080035struct hns_roce_ib_create_srq {
36 __aligned_u64 buf_addr;
37 __aligned_u64 db_addr;
38 __aligned_u64 que_addr;
39};
40struct hns_roce_ib_create_srq_resp {
41 __u32 srqn;
42 __u32 reserved;
43};
Christopher Ferris48af7cb2017-02-21 12:35:09 -080044struct hns_roce_ib_create_qp {
Christopher Ferris76a1d452018-06-27 14:12:29 -070045 __aligned_u64 buf_addr;
46 __aligned_u64 db_addr;
Christopher Ferris48af7cb2017-02-21 12:35:09 -080047 __u8 log_sq_bb_count;
48 __u8 log_sq_stride;
49 __u8 sq_no_prefetch;
Christopher Ferris48af7cb2017-02-21 12:35:09 -080050 __u8 reserved[5];
Christopher Ferris9ce28842018-10-25 12:11:39 -070051 __aligned_u64 sdb_addr;
Christopher Ferris48af7cb2017-02-21 12:35:09 -080052};
Christopher Ferris05667cd2021-02-16 16:01:34 -080053enum hns_roce_qp_cap_flags {
54 HNS_ROCE_QP_CAP_RQ_RECORD_DB = 1 << 0,
55 HNS_ROCE_QP_CAP_SQ_RECORD_DB = 1 << 1,
56 HNS_ROCE_QP_CAP_OWNER_DB = 1 << 2,
Christopher Ferris1ed55342022-03-22 16:06:25 -070057 HNS_ROCE_QP_CAP_DIRECT_WQE = 1 << 5,
Christopher Ferris05667cd2021-02-16 16:01:34 -080058};
Christopher Ferris76a1d452018-06-27 14:12:29 -070059struct hns_roce_ib_create_qp_resp {
60 __aligned_u64 cap_flags;
Christopher Ferris1ed55342022-03-22 16:06:25 -070061 __aligned_u64 dwqe_mmap_key;
Christopher Ferris76a1d452018-06-27 14:12:29 -070062};
Christopher Ferris8b7fdc92023-02-21 13:36:32 -080063enum {
64 HNS_ROCE_EXSGE_FLAGS = 1 << 0,
65};
66enum {
67 HNS_ROCE_RSP_EXSGE_FLAGS = 1 << 0,
68};
Christopher Ferris48af7cb2017-02-21 12:35:09 -080069struct hns_roce_ib_alloc_ucontext_resp {
70 __u32 qp_tab_size;
Christopher Ferris32ff3f82020-12-14 13:10:04 -080071 __u32 cqe_size;
Christopher Ferrisfcc3b4f2021-07-01 01:30:21 +000072 __u32 srq_tab_size;
73 __u32 reserved;
Christopher Ferris8b7fdc92023-02-21 13:36:32 -080074 __u32 config;
75 __u32 max_inline_data;
76};
77struct hns_roce_ib_alloc_ucontext {
78 __u32 config;
79 __u32 reserved;
Christopher Ferris76a1d452018-06-27 14:12:29 -070080};
81struct hns_roce_ib_alloc_pd_resp {
82 __u32 pdn;
Christopher Ferris48af7cb2017-02-21 12:35:09 -080083};
84#endif