1 /*******************************************************************
2 * This file is part of the Emulex RoCE Device Driver for *
3 * RoCE (RDMA over Converged Ethernet) adapters. *
4 * Copyright (C) 2008-2012 Emulex. All rights reserved. *
5 * EMULEX and SLI are trademarks of Emulex. *
8 * This program is free software; you can redistribute it and/or *
9 * modify it under the terms of version 2 of the GNU General *
10 * Public License as published by the Free Software Foundation. *
11 * This program is distributed in the hope that it will be useful. *
12 * ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND *
13 * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, *
14 * FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT, ARE *
15 * DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH DISCLAIMERS ARE HELD *
16 * TO BE LEGALLY INVALID. See the GNU General Public License for *
17 * more details, a copy of which can be found in the file COPYING *
18 * included with this package. *
20 * Contact Information:
21 * linux-drivers@emulex.com
25 * Costa Mesa, CA 92626
26 *******************************************************************/
28 #ifndef __OCRDMA_ABI_H__
29 #define __OCRDMA_ABI_H__
31 #define OCRDMA_ABI_VERSION 1
32 /* user kernel communication data structures. */
34 struct ocrdma_alloc_ucontext_resp {
43 /* for future use/new features in progress */
48 struct ocrdma_alloc_pd_ureq {
52 struct ocrdma_alloc_pd_uresp {
60 struct ocrdma_create_cq_ureq {
65 #define MAX_CQ_PAGES 8
66 struct ocrdma_create_cq_uresp {
71 u64 page_addr[MAX_CQ_PAGES];
75 /* for future use/new features in progress */
80 #define MAX_QP_PAGES 8
81 #define MAX_UD_AV_PAGES 8
83 struct ocrdma_create_qp_ureq {
90 struct ocrdma_create_qp_uresp {
99 u64 sq_page_addr[MAX_QP_PAGES];
100 u64 rq_page_addr[MAX_QP_PAGES];
105 u32 num_wqe_allocated;
106 u32 num_rqe_allocated;
115 struct ocrdma_create_srq_uresp {
123 u64 rq_page_addr[MAX_QP_PAGES];
127 u32 num_rqe_allocated;
135 #endif /* __OCRDMA_ABI_H__ */