blob: 7347175961d1eacc2e596493d993e06ebf3d2923 [file] [log] [blame]
Elliott Hughes180edef2023-11-02 00:08:05 +00001/*
2 * This file is auto-generated. Modifications will be lost.
3 *
4 * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5 * for more information.
6 */
Christopher Ferris8b7fdc92023-02-21 13:36:32 -08007#ifndef MANA_ABI_USER_H
8#define MANA_ABI_USER_H
9#include <linux/types.h>
10#include <rdma/ib_user_ioctl_verbs.h>
11#define MANA_IB_UVERBS_ABI_VERSION 1
Christopher Ferris7ac54f52024-08-07 21:07:12 +000012enum mana_ib_create_cq_flags {
13 MANA_IB_CREATE_RNIC_CQ = 1 << 0,
14};
Christopher Ferris8b7fdc92023-02-21 13:36:32 -080015struct mana_ib_create_cq {
16 __aligned_u64 buf_addr;
Christopher Ferris7ac54f52024-08-07 21:07:12 +000017 __u16 flags;
18 __u16 reserved0;
19 __u32 reserved1;
20};
21struct mana_ib_create_cq_resp {
22 __u32 cqid;
23 __u32 reserved;
Christopher Ferris8b7fdc92023-02-21 13:36:32 -080024};
25struct mana_ib_create_qp {
26 __aligned_u64 sq_buf_addr;
27 __u32 sq_buf_size;
28 __u32 port;
29};
30struct mana_ib_create_qp_resp {
31 __u32 sqid;
32 __u32 cqid;
33 __u32 tx_vp_offset;
34 __u32 reserved;
35};
36struct mana_ib_create_wq {
37 __aligned_u64 wq_buf_addr;
38 __u32 wq_buf_size;
39 __u32 reserved;
40};
41enum mana_ib_rx_hash_function_flags {
42 MANA_IB_RX_HASH_FUNC_TOEPLITZ = 1 << 0,
43};
44struct mana_ib_create_qp_rss {
45 __aligned_u64 rx_hash_fields_mask;
46 __u8 rx_hash_function;
47 __u8 reserved[7];
48 __u32 rx_hash_key_len;
49 __u8 rx_hash_key[40];
50 __u32 port;
51};
52struct rss_resp_entry {
53 __u32 cqid;
54 __u32 wqid;
55};
56struct mana_ib_create_qp_rss_resp {
57 __aligned_u64 num_entries;
58 struct rss_resp_entry entries[64];
59};
60#endif