1/* 2 * This header was generated from the Linux kernel headers by update_headers.py, 3 * to provide necessary information from kernel to userspace, such as constants, 4 * structures, and macros, and thus, contains no copyrightable information. 5 */ 6#ifndef CXGB4_ABI_USER_H 7#define CXGB4_ABI_USER_H 8#include <linux/types.h> 9#define C4IW_UVERBS_ABI_VERSION 3 10enum { 11 C4IW_64B_CQE = (1 << 0) 12}; 13struct c4iw_create_cq { 14 __u32 flags; 15 __u32 reserved; 16}; 17struct c4iw_create_cq_resp { 18 __aligned_u64 key; 19 __aligned_u64 gts_key; 20 __aligned_u64 memsize; 21 __u32 cqid; 22 __u32 size; 23 __u32 qid_mask; 24 __u32 flags; 25}; 26enum { 27 C4IW_QPF_ONCHIP = (1 << 0), 28 C4IW_QPF_WRITE_W_IMM = (1 << 1) 29}; 30struct c4iw_create_qp_resp { 31 __aligned_u64 ma_sync_key; 32 __aligned_u64 sq_key; 33 __aligned_u64 rq_key; 34 __aligned_u64 sq_db_gts_key; 35 __aligned_u64 rq_db_gts_key; 36 __aligned_u64 sq_memsize; 37 __aligned_u64 rq_memsize; 38 __u32 sqid; 39 __u32 rqid; 40 __u32 sq_size; 41 __u32 rq_size; 42 __u32 qid_mask; 43 __u32 flags; 44}; 45struct c4iw_create_srq_resp { 46 __aligned_u64 srq_key; 47 __aligned_u64 srq_db_gts_key; 48 __aligned_u64 srq_memsize; 49 __u32 srqid; 50 __u32 srq_size; 51 __u32 rqt_abs_idx; 52 __u32 qid_mask; 53 __u32 flags; 54 __u32 reserved; 55}; 56enum { 57 58 T4_SRQ_LIMIT_SUPPORT = 1 << 0, 59}; 60struct c4iw_alloc_ucontext_resp { 61 __aligned_u64 status_page_key; 62 __u32 status_page_size; 63 __u32 reserved; 64}; 65struct c4iw_alloc_pd_resp { 66 __u32 pdid; 67}; 68#endif 69