summaryrefslogtreecommitdiffstats
path: root/src/drivers/infiniband/arbel.h
diff options
context:
space:
mode:
authorMichael Brown2010-09-17 04:59:40 +0200
committerMichael Brown2010-09-17 06:49:34 +0200
commitf7a49e23e9194121b83c52a48795c2d4d6de789c (patch)
tree17fc950dbfbbcd525250b657cdbd36b767ff19ba /src/drivers/infiniband/arbel.h
parent[arbel] Inform embedded SMA of partition key changes (diff)
downloadipxe-f7a49e23e9194121b83c52a48795c2d4d6de789c.tar.gz
ipxe-f7a49e23e9194121b83c52a48795c2d4d6de789c.tar.xz
ipxe-f7a49e23e9194121b83c52a48795c2d4d6de789c.zip
[arbel] Allow for multiple calls to ib_modify_qp()
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/drivers/infiniband/arbel.h')
-rw-r--r--src/drivers/infiniband/arbel.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/drivers/infiniband/arbel.h b/src/drivers/infiniband/arbel.h
index 3fea17a5f..dd64afb56 100644
--- a/src/drivers/infiniband/arbel.h
+++ b/src/drivers/infiniband/arbel.h
@@ -365,12 +365,22 @@ struct arbel_recv_work_queue {
/** Queue pair number randomisation mask */
#define ARBEL_QPN_RANDOM_MASK 0xfff000
+/** Arbel queue pair state */
+enum arbel_queue_pair_state {
+ ARBEL_QP_ST_RST = 0,
+ ARBEL_QP_ST_INIT,
+ ARBEL_QP_ST_RTR,
+ ARBEL_QP_ST_RTS,
+};
+
/** An Arbel queue pair */
struct arbel_queue_pair {
/** Send work queue */
struct arbel_send_work_queue send;
/** Receive work queue */
struct arbel_recv_work_queue recv;
+ /** Queue state */
+ enum arbel_queue_pair_state state;
};
/** Maximum number of allocatable completion queues