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 __BNXT_RE_UVERBS_ABI_H__ 8*8d67ca89SAndroid Build Coastguard Worker #define __BNXT_RE_UVERBS_ABI_H__ 9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h> 10*8d67ca89SAndroid Build Coastguard Worker #include <rdma/ib_user_ioctl_cmds.h> 11*8d67ca89SAndroid Build Coastguard Worker #define BNXT_RE_ABI_VERSION 1 12*8d67ca89SAndroid Build Coastguard Worker #define BNXT_RE_CHIP_ID0_CHIP_NUM_SFT 0x00 13*8d67ca89SAndroid Build Coastguard Worker #define BNXT_RE_CHIP_ID0_CHIP_REV_SFT 0x10 14*8d67ca89SAndroid Build Coastguard Worker #define BNXT_RE_CHIP_ID0_CHIP_MET_SFT 0x18 15*8d67ca89SAndroid Build Coastguard Worker enum { 16*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_UCNTX_CMASK_HAVE_CCTX = 0x1ULL, 17*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_UCNTX_CMASK_HAVE_MODE = 0x02ULL, 18*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_UCNTX_CMASK_WC_DPI_ENABLED = 0x04ULL, 19*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_UCNTX_CMASK_DBR_PACING_ENABLED = 0x08ULL, 20*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_UCNTX_CMASK_POW2_DISABLED = 0x10ULL, 21*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_UCNTX_CMASK_MSN_TABLE_ENABLED = 0x40, 22*8d67ca89SAndroid Build Coastguard Worker }; 23*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_wqe_mode { 24*8d67ca89SAndroid Build Coastguard Worker BNXT_QPLIB_WQE_MODE_STATIC = 0x00, 25*8d67ca89SAndroid Build Coastguard Worker BNXT_QPLIB_WQE_MODE_VARIABLE = 0x01, 26*8d67ca89SAndroid Build Coastguard Worker BNXT_QPLIB_WQE_MODE_INVALID = 0x02, 27*8d67ca89SAndroid Build Coastguard Worker }; 28*8d67ca89SAndroid Build Coastguard Worker enum { 29*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_COMP_MASK_REQ_UCNTX_POW2_SUPPORT = 0x01, 30*8d67ca89SAndroid Build Coastguard Worker }; 31*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_uctx_req { 32*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 comp_mask; 33*8d67ca89SAndroid Build Coastguard Worker }; 34*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_uctx_resp { 35*8d67ca89SAndroid Build Coastguard Worker __u32 dev_id; 36*8d67ca89SAndroid Build Coastguard Worker __u32 max_qp; 37*8d67ca89SAndroid Build Coastguard Worker __u32 pg_size; 38*8d67ca89SAndroid Build Coastguard Worker __u32 cqe_sz; 39*8d67ca89SAndroid Build Coastguard Worker __u32 max_cqd; 40*8d67ca89SAndroid Build Coastguard Worker __u32 rsvd; 41*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 comp_mask; 42*8d67ca89SAndroid Build Coastguard Worker __u32 chip_id0; 43*8d67ca89SAndroid Build Coastguard Worker __u32 chip_id1; 44*8d67ca89SAndroid Build Coastguard Worker __u32 mode; 45*8d67ca89SAndroid Build Coastguard Worker __u32 rsvd1; 46*8d67ca89SAndroid Build Coastguard Worker }; 47*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_pd_resp { 48*8d67ca89SAndroid Build Coastguard Worker __u32 pdid; 49*8d67ca89SAndroid Build Coastguard Worker __u32 dpi; 50*8d67ca89SAndroid Build Coastguard Worker __u64 dbr; 51*8d67ca89SAndroid Build Coastguard Worker } __attribute__((packed, aligned(4))); 52*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_cq_req { 53*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 cq_va; 54*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 cq_handle; 55*8d67ca89SAndroid Build Coastguard Worker }; 56*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_cq_mask { 57*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_CQ_TOGGLE_PAGE_SUPPORT = 0x1, 58*8d67ca89SAndroid Build Coastguard Worker }; 59*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_cq_resp { 60*8d67ca89SAndroid Build Coastguard Worker __u32 cqid; 61*8d67ca89SAndroid Build Coastguard Worker __u32 tail; 62*8d67ca89SAndroid Build Coastguard Worker __u32 phase; 63*8d67ca89SAndroid Build Coastguard Worker __u32 rsvd; 64*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 comp_mask; 65*8d67ca89SAndroid Build Coastguard Worker }; 66*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_resize_cq_req { 67*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 cq_va; 68*8d67ca89SAndroid Build Coastguard Worker }; 69*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_qp_req { 70*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 qpsva; 71*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 qprva; 72*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 qp_handle; 73*8d67ca89SAndroid Build Coastguard Worker }; 74*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_qp_resp { 75*8d67ca89SAndroid Build Coastguard Worker __u32 qpid; 76*8d67ca89SAndroid Build Coastguard Worker __u32 rsvd; 77*8d67ca89SAndroid Build Coastguard Worker }; 78*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_srq_req { 79*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 srqva; 80*8d67ca89SAndroid Build Coastguard Worker __aligned_u64 srq_handle; 81*8d67ca89SAndroid Build Coastguard Worker }; 82*8d67ca89SAndroid Build Coastguard Worker struct bnxt_re_srq_resp { 83*8d67ca89SAndroid Build Coastguard Worker __u32 srqid; 84*8d67ca89SAndroid Build Coastguard Worker }; 85*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_shpg_offt { 86*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_BEG_RESV_OFFT = 0x00, 87*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_AVID_OFFT = 0x10, 88*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_AVID_SIZE = 0x04, 89*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_END_RESV_OFFT = 0xFF0 90*8d67ca89SAndroid Build Coastguard Worker }; 91*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_objects { 92*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_OBJECT_ALLOC_PAGE = (1U << UVERBS_ID_NS_SHIFT), 93*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_OBJECT_NOTIFY_DRV, 94*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_OBJECT_GET_TOGGLE_MEM, 95*8d67ca89SAndroid Build Coastguard Worker }; 96*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_alloc_page_type { 97*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_ALLOC_WC_PAGE = 0, 98*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_ALLOC_DBR_BAR_PAGE, 99*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_ALLOC_DBR_PAGE, 100*8d67ca89SAndroid Build Coastguard Worker }; 101*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_var_alloc_page_attrs { 102*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_ALLOC_PAGE_HANDLE = (1U << UVERBS_ID_NS_SHIFT), 103*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_ALLOC_PAGE_TYPE, 104*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_ALLOC_PAGE_DPI, 105*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_ALLOC_PAGE_MMAP_OFFSET, 106*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_ALLOC_PAGE_MMAP_LENGTH, 107*8d67ca89SAndroid Build Coastguard Worker }; 108*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_alloc_page_attrs { 109*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_DESTROY_PAGE_HANDLE = (1U << UVERBS_ID_NS_SHIFT), 110*8d67ca89SAndroid Build Coastguard Worker }; 111*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_alloc_page_methods { 112*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_METHOD_ALLOC_PAGE = (1U << UVERBS_ID_NS_SHIFT), 113*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_METHOD_DESTROY_PAGE, 114*8d67ca89SAndroid Build Coastguard Worker }; 115*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_notify_drv_methods { 116*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_METHOD_NOTIFY_DRV = (1U << UVERBS_ID_NS_SHIFT), 117*8d67ca89SAndroid Build Coastguard Worker }; 118*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_get_toggle_mem_type { 119*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_CQ_TOGGLE_MEM = 0, 120*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_SRQ_TOGGLE_MEM, 121*8d67ca89SAndroid Build Coastguard Worker }; 122*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_var_toggle_mem_attrs { 123*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_TOGGLE_MEM_HANDLE = (1U << UVERBS_ID_NS_SHIFT), 124*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_TOGGLE_MEM_TYPE, 125*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_TOGGLE_MEM_RES_ID, 126*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_TOGGLE_MEM_MMAP_PAGE, 127*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_TOGGLE_MEM_MMAP_OFFSET, 128*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_TOGGLE_MEM_MMAP_LENGTH, 129*8d67ca89SAndroid Build Coastguard Worker }; 130*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_toggle_mem_attrs { 131*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_RELEASE_TOGGLE_MEM_HANDLE = (1U << UVERBS_ID_NS_SHIFT), 132*8d67ca89SAndroid Build Coastguard Worker }; 133*8d67ca89SAndroid Build Coastguard Worker enum bnxt_re_toggle_mem_methods { 134*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_METHOD_GET_TOGGLE_MEM = (1U << UVERBS_ID_NS_SHIFT), 135*8d67ca89SAndroid Build Coastguard Worker BNXT_RE_METHOD_RELEASE_TOGGLE_MEM, 136*8d67ca89SAndroid Build Coastguard Worker }; 137*8d67ca89SAndroid Build Coastguard Worker #endif 138