aboutsummaryrefslogtreecommitdiffstats
path: root/include/rdma/ib_mad.h
diff options
context:
space:
mode:
authorIra Weiny <ira.weiny@intel.com>2014-08-08 19:00:55 -0400
committerRoland Dreier <roland@purestorage.com>2014-08-10 23:36:00 -0400
commit0f29b46d49b0ca50536632c6a33986c3171f5ea1 (patch)
tree8ce3551b9fd88c7706f68e0e26b915892e204154 /include/rdma/ib_mad.h
parent9ad13a423484725324fb2c5c5ab527d6bf9d84cc (diff)
IB/mad: add new ioctl to ABI to support new registration options
Registrations options are specified through flags. Definitions of flags will be in subsequent patches. Signed-off-by: Ira Weiny <ira.weiny@intel.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'include/rdma/ib_mad.h')
-rw-r--r--include/rdma/ib_mad.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/rdma/ib_mad.h b/include/rdma/ib_mad.h
index 3d81b90cc315..876f497f8b0c 100644
--- a/include/rdma/ib_mad.h
+++ b/include/rdma/ib_mad.h
@@ -355,6 +355,7 @@ typedef void (*ib_mad_recv_handler)(struct ib_mad_agent *mad_agent,
355 * @hi_tid: Access layer assigned transaction ID for this client. 355 * @hi_tid: Access layer assigned transaction ID for this client.
356 * Unsolicited MADs sent by this client will have the upper 32-bits 356 * Unsolicited MADs sent by this client will have the upper 32-bits
357 * of their TID set to this value. 357 * of their TID set to this value.
358 * @flags: registration flags
358 * @port_num: Port number on which QP is registered 359 * @port_num: Port number on which QP is registered
359 * @rmpp_version: If set, indicates the RMPP version used by this agent. 360 * @rmpp_version: If set, indicates the RMPP version used by this agent.
360 */ 361 */
@@ -367,6 +368,7 @@ struct ib_mad_agent {
367 ib_mad_snoop_handler snoop_handler; 368 ib_mad_snoop_handler snoop_handler;
368 void *context; 369 void *context;
369 u32 hi_tid; 370 u32 hi_tid;
371 u32 flags;
370 u8 port_num; 372 u8 port_num;
371 u8 rmpp_version; 373 u8 rmpp_version;
372}; 374};
@@ -426,6 +428,7 @@ struct ib_mad_recv_wc {
426 * in the range from 0x30 to 0x4f. Otherwise not used. 428 * in the range from 0x30 to 0x4f. Otherwise not used.
427 * @method_mask: The caller will receive unsolicited MADs for any method 429 * @method_mask: The caller will receive unsolicited MADs for any method
428 * where @method_mask = 1. 430 * where @method_mask = 1.
431 *
429 */ 432 */
430struct ib_mad_reg_req { 433struct ib_mad_reg_req {
431 u8 mgmt_class; 434 u8 mgmt_class;
@@ -451,6 +454,7 @@ struct ib_mad_reg_req {
451 * @recv_handler: The completion callback routine invoked for a received 454 * @recv_handler: The completion callback routine invoked for a received
452 * MAD. 455 * MAD.
453 * @context: User specified context associated with the registration. 456 * @context: User specified context associated with the registration.
457 * @registration_flags: Registration flags to set for this agent
454 */ 458 */
455struct ib_mad_agent *ib_register_mad_agent(struct ib_device *device, 459struct ib_mad_agent *ib_register_mad_agent(struct ib_device *device,
456 u8 port_num, 460 u8 port_num,
@@ -459,7 +463,8 @@ struct ib_mad_agent *ib_register_mad_agent(struct ib_device *device,
459 u8 rmpp_version, 463 u8 rmpp_version,
460 ib_mad_send_handler send_handler, 464 ib_mad_send_handler send_handler,
461 ib_mad_recv_handler recv_handler, 465 ib_mad_recv_handler recv_handler,
462 void *context); 466 void *context,
467 u32 registration_flags);
463 468
464enum ib_mad_snoop_flags { 469enum ib_mad_snoop_flags {
465 /*IB_MAD_SNOOP_POSTED_SENDS = 1,*/ 470 /*IB_MAD_SNOOP_POSTED_SENDS = 1,*/