[DAPL2] sync with WinOF 2.1 branch
[mirror/winof/.git] / inc / kernel / iba / ib_rdma_cm.h
1 /*\r
2  * Copyright (c) 2008 Intel Corporation.  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 \r
30 #pragma once\r
31 \r
32 #ifndef _IB_RDMA_CM_H_\r
33 #define _IB_RDMA_CM_H_\r
34 \r
35 #include <ntddk.h>\r
36 \r
37 #define IB_CMA_VERSION 0x00\r
38 \r
39 #define IB_CMA_SERVICE_ID       0x0000000001000000\r
40 #define IB_CMA_SERVICE_ID_MASK  0xFFFFFFFFFF000000\r
41 #define IB_CMA_CM_RESPONSE_TIMEOUT                              20\r
42 #define IB_CMA_MAX_CM_RETRIES                                   15\r
43 \r
44 typedef union _IB_CMA_IP_ADDRESS\r
45 {\r
46         UINT8                           Ip6Address[16];\r
47         struct {\r
48                 UINT32                  Pad[3];\r
49                 UINT32                  Address;\r
50 \r
51         }       Ip4;\r
52 \r
53 }       IB_CMA_IP_ADDRESS;\r
54 \r
55 typedef struct _IB_CMA_HEADER\r
56 {\r
57         UINT8                           CmaVersion;\r
58         UINT8                           IpVersion;              // IP Version: 7:4\r
59         UINT16                          Port;\r
60         IB_CMA_IP_ADDRESS       SrcAddress;\r
61         IB_CMA_IP_ADDRESS       DstAddress;\r
62 \r
63 }       IB_CMA_HEADER;\r
64 \r
65 #endif // _IB_RDMA_CM_H_