diff mbox

[libmlx5,1/2] libmlx5: Add cross-channel primitives

Message ID 1450610590-17361-2-git-send-email-leon@leon.nu (mailing list archive)
State Changes Requested
Headers show

Commit Message

Leon Romanovsky Dec. 20, 2015, 11:23 a.m. UTC
From: Leon Romanovsky <leonro@mellanox.com>

The cross-channel feature relies on special primitives to
send and receive work requests.

* WAIT on CQ WR - This WR holds execution of subsequent
  requests on that queue until producer index of a CQ is met.

• SEND_EN WR - This WR specifies value of producer index on
  the controlled send queue. It enables the execution of all
  WQEs up to this producer index.

• RECEIVE_EN WR - Same as SEND_EN but related to a receive
  queue.

Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
---
 src/mlx5.h | 4 ++++
 1 file changed, 4 insertions(+)
diff mbox

Patch

diff --git a/src/mlx5.h b/src/mlx5.h
index 0c0b0278f66e..49e3374b4439 100644
--- a/src/mlx5.h
+++ b/src/mlx5.h
@@ -208,6 +208,10 @@  enum {
 	MLX5_OPCODE_LOCAL_INVAL		= 0x1b,
 	MLX5_OPCODE_CONFIG_CMD		= 0x1f,
 
+	MLX5_OPCODE_SEND_ENABLE         = 0x17,
+	MLX5_OPCODE_RECV_ENABLE         = 0x16,
+	MLX5_OPCODE_CQE_WAIT            = 0x0f,
+
 	MLX5_RECV_OPCODE_RDMA_WRITE_IMM	= 0x00,
 	MLX5_RECV_OPCODE_SEND		= 0x01,
 	MLX5_RECV_OPCODE_SEND_IMM	= 0x02,