blob: 724852e2dfe2527c9cfd2ff3d8a373aa63146aa3 [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 NES_ABI_USER_H
20#define NES_ABI_USER_H
21#include <linux/types.h>
22#define NES_ABI_USERSPACE_VER 2
Christopher Ferris6a9755d2017-01-13 14:09:31 -080023#define NES_ABI_KERNEL_VER 2
24struct nes_alloc_ucontext_req {
25 __u32 reserved32;
26 __u8 userspace_ver;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080027 __u8 reserved8[3];
28};
29struct nes_alloc_ucontext_resp {
30 __u32 max_pds;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080031 __u32 max_qps;
32 __u32 wq_size;
33 __u8 virtwq;
34 __u8 kernel_ver;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080035 __u8 reserved[2];
36};
37struct nes_alloc_pd_resp {
38 __u32 pd_id;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080039 __u32 mmap_db_index;
40};
41struct nes_create_cq_req {
Christopher Ferris76a1d452018-06-27 14:12:29 -070042 __aligned_u64 user_cq_buffer;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080043 __u32 mcrqf;
44 __u8 reserved[4];
45};
46struct nes_create_qp_req {
Christopher Ferris76a1d452018-06-27 14:12:29 -070047 __aligned_u64 user_wqe_buffers;
48 __aligned_u64 user_qp_buffer;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080049};
50enum iwnes_memreg_type {
Christopher Ferris6a9755d2017-01-13 14:09:31 -080051 IWNES_MEMREG_TYPE_MEM = 0x0000,
52 IWNES_MEMREG_TYPE_QP = 0x0001,
53 IWNES_MEMREG_TYPE_CQ = 0x0002,
54 IWNES_MEMREG_TYPE_MW = 0x0003,
Christopher Ferris6a9755d2017-01-13 14:09:31 -080055 IWNES_MEMREG_TYPE_FMR = 0x0004,
56 IWNES_MEMREG_TYPE_FMEM = 0x0005,
57};
58struct nes_mem_reg_req {
Christopher Ferris6a9755d2017-01-13 14:09:31 -080059 __u32 reg_type;
60 __u32 reserved;
61};
62struct nes_create_cq_resp {
Christopher Ferris6a9755d2017-01-13 14:09:31 -080063 __u32 cq_id;
64 __u32 cq_size;
65 __u32 mmap_db_index;
66 __u32 reserved;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080067};
68struct nes_create_qp_resp {
69 __u32 qp_id;
70 __u32 actual_sq_size;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080071 __u32 actual_rq_size;
72 __u32 mmap_sq_db_index;
73 __u32 mmap_rq_db_index;
74 __u32 nes_drv_opt;
Christopher Ferris6a9755d2017-01-13 14:09:31 -080075};
76#endif