677f42d257046d8e4c56f4bf0d1b23fe9ba191b5
[mirror/winof/.git] / hw / mthca / user / mlnx_ual_data.h
1 /*\r
2  * Copyright (c) 2005 SilverStorm Technologies.  All rights reserved.\r
3  *\r
4  * This software is available to you under the OpenIB.org BSD license\r
5  * below:\r
6  *\r
7  *     Redistribution and use in source and binary forms, with or\r
8  *     without modification, are permitted provided that the following\r
9  *     conditions are met:\r
10  *\r
11  *      - Redistributions of source code must retain the above\r
12  *        copyright notice, this list of conditions and the following\r
13  *        disclaimer.\r
14  *\r
15  *      - Redistributions in binary form must reproduce the above\r
16  *        copyright notice, this list of conditions and the following\r
17  *        disclaimer in the documentation and/or other materials\r
18  *        provided with the distribution.\r
19  *\r
20  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
21  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
22  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
23  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS\r
24  * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\r
25  * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
26  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r
27  * SOFTWARE.\r
28  *\r
29  * $Id$\r
30  */\r
31 #include <iba/ib_types.h>\r
32 #include <iba/ib_uvp.h>\r
33 \r
34 // taken from ib_defs.h\r
35 typedef uint32_t IB_wqpn_t;  /* Work QP number: Only 24 LSbits */\r
36 typedef uint8_t  IB_port_t;\r
37 typedef uint8_t IB_gid_t[16]; /* GID (aka IPv6) H-to-L (big) (network) endianess */\r
38 typedef uint32_t IB_ts_t;\r
39 \r
40 typedef struct _ib_ca\r
41 {\r
42         struct ibv_context *ibv_ctx;\r
43         ib_ca_attr_t            *p_hca_attr;\r
44 } mlnx_ual_hobul_t;\r
45 \r
46 \r
47 typedef struct _ib_pd\r
48 {\r
49         struct ibv_pd *ibv_pd;\r
50         mlnx_ual_hobul_t        *p_hobul;\r
51 } mlnx_ual_pd_info_t;\r
52 \r
53 typedef struct _ib_mw\r
54 {\r
55 TO_LONG_PTR(    ib_pd_handle_t ,                h_uvp_pd) ;  \r
56         uint32_t                        rkey;\r
57 } mlnx_ual_mw_info_t;\r
58 \r