summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorMichael Brown2009-08-09 12:05:21 +0200
committerMichael Brown2009-08-10 23:23:28 +0200
commit4be11f523c57a22d18a7369fbe9ec6d9f1c88022 (patch)
tree52a89e82c63701baf2739f307c30dcd515a4e80e /src/include
parent[hermon] Reduce the RC ACK timeout (diff)
downloadipxe-4be11f523c57a22d18a7369fbe9ec6d9f1c88022.tar.gz
ipxe-4be11f523c57a22d18a7369fbe9ec6d9f1c88022.tar.xz
ipxe-4be11f523c57a22d18a7369fbe9ec6d9f1c88022.zip
[infiniband] Add a "communication-managed reliable connection" protocol
SRP over Infiniband uses a protocol whereby data is sent via a combination of the CM private data fields and the RC queue pair itself. This seems sufficiently generic that it's worth having available as a separate protocol.
Diffstat (limited to 'src/include')
-rw-r--r--src/include/gpxe/errfile.h1
-rw-r--r--src/include/gpxe/ib_cmrc.h20
2 files changed, 21 insertions, 0 deletions
diff --git a/src/include/gpxe/errfile.h b/src/include/gpxe/errfile.h
index aac6ca94c..d2305b323 100644
--- a/src/include/gpxe/errfile.h
+++ b/src/include/gpxe/errfile.h
@@ -153,6 +153,7 @@ FILE_LICENCE ( GPL2_OR_LATER );
#define ERRFILE_ib_cm ( ERRFILE_NET | 0x001e0000 )
#define ERRFILE_net80211 ( ERRFILE_NET | 0x001f0000 )
#define ERRFILE_ib_mi ( ERRFILE_NET | 0x00200000 )
+#define ERRFILE_ib_cmrc ( ERRFILE_NET | 0x00210000 )
#define ERRFILE_image ( ERRFILE_IMAGE | 0x00000000 )
#define ERRFILE_elf ( ERRFILE_IMAGE | 0x00010000 )
diff --git a/src/include/gpxe/ib_cmrc.h b/src/include/gpxe/ib_cmrc.h
new file mode 100644
index 000000000..efa741acc
--- /dev/null
+++ b/src/include/gpxe/ib_cmrc.h
@@ -0,0 +1,20 @@
+#ifndef _GPXE_IB_CMRC_H
+#define _GPXE_IB_CMRC_H
+
+/** @file
+ *
+ * Infiniband Communication-managed Reliable Connections
+ *
+ */
+
+FILE_LICENCE ( BSD2 );
+
+#include <gpxe/infiniband.h>
+#include <gpxe/xfer.h>
+
+extern int ib_cmrc_open ( struct xfer_interface *xfer,
+ struct ib_device *ibdev,
+ struct ib_gid *dgid,
+ struct ib_gid_half *service_id );
+
+#endif /* _GPXE_IB_CMRC_H */