summaryrefslogtreecommitdiffstats
path: root/src/include/ipxe
diff options
context:
space:
mode:
authorMichael Brown2010-09-11 16:31:33 +0200
committerMichael Brown2010-09-12 23:32:02 +0200
commitef8452a64222fb65c7b778736dbd50654e0188a4 (patch)
tree8b91c5877cd0af7d595ab658b29dd39fc04ae200 /src/include/ipxe
parent[infiniband] Fix TID magic signature (diff)
downloadipxe-ef8452a64222fb65c7b778736dbd50654e0188a4.tar.gz
ipxe-ef8452a64222fb65c7b778736dbd50654e0188a4.tar.xz
ipxe-ef8452a64222fb65c7b778736dbd50654e0188a4.zip
[infiniband] Respond to CM disconnection requests
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include/ipxe')
-rw-r--r--src/include/ipxe/ib_mad.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/include/ipxe/ib_mad.h b/src/include/ipxe/ib_mad.h
index 94f171ada..23c2657ca 100644
--- a/src/include/ipxe/ib_mad.h
+++ b/src/include/ipxe/ib_mad.h
@@ -451,6 +451,34 @@ struct ib_cm_ready_to_use {
uint8_t private_data[224];
} __attribute__ (( packed ));
+/** A communication management disconnection request
+ *
+ * Defined in section 12.6.10 of the IBA.
+ */
+struct ib_cm_disconnect_request {
+ /** Local communication ID */
+ uint32_t local_id;
+ /** Remote communication ID */
+ uint32_t remote_id;
+ /** Remote QPN/EECN */
+ uint32_t remote_qpn_eecn;
+ /** Private data */
+ uint8_t private_data[220];
+} __attribute__ (( packed ));
+
+/** A communication management disconnection reply
+ *
+ * Defined in section 12.6.11 of the IBA.
+ */
+struct ib_cm_disconnect_reply {
+ /** Local communication ID */
+ uint32_t local_id;
+ /** Remote communication ID */
+ uint32_t remote_id;
+ /** Private data */
+ uint8_t private_data[224];
+} __attribute__ (( packed ));
+
/** A communication management attribute */
union ib_cm_data {
struct ib_cm_common common;
@@ -458,6 +486,8 @@ union ib_cm_data {
struct ib_cm_connect_reject connect_reject;
struct ib_cm_connect_reply connect_reply;
struct ib_cm_ready_to_use ready_to_use;
+ struct ib_cm_disconnect_request disconnect_request;
+ struct ib_cm_disconnect_reply disconnect_reply;
uint8_t bytes[232];
} __attribute__ (( packed ));