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>
This commit is contained in:
@@ -191,6 +191,42 @@ struct ib_user_mad_reg_req {
|
||||
__u8 rmpp_version;
|
||||
};
|
||||
|
||||
/**
|
||||
* ib_user_mad_reg_req2 - MAD registration request
|
||||
*
|
||||
* @id - Set by the _kernel_; used by userspace to identify the
|
||||
* registered agent in future requests.
|
||||
* @qpn - Queue pair number; must be 0 or 1.
|
||||
* @mgmt_class - Indicates which management class of MADs should be
|
||||
* receive by the caller. This field is only required if
|
||||
* the user wishes to receive unsolicited MADs, otherwise
|
||||
* it should be 0.
|
||||
* @mgmt_class_version - Indicates which version of MADs for the given
|
||||
* management class to receive.
|
||||
* @res - Ignored.
|
||||
* @flags - additional registration flags; Must be in the set of
|
||||
* flags defined in IB_USER_MAD_REG_FLAGS_CAP
|
||||
* @method_mask - The caller wishes to receive unsolicited MADs for the
|
||||
* methods whose bit(s) is(are) set.
|
||||
* @oui - Indicates IEEE OUI to use when mgmt_class is a vendor
|
||||
* class in the range from 0x30 to 0x4f. Otherwise not
|
||||
* used.
|
||||
* @rmpp_version - If set, indicates the RMPP version to use.
|
||||
*/
|
||||
#define IB_USER_MAD_REG_FLAGS_CAP (0)
|
||||
struct ib_user_mad_reg_req2 {
|
||||
__u32 id;
|
||||
__u32 qpn;
|
||||
__u8 mgmt_class;
|
||||
__u8 mgmt_class_version;
|
||||
__u16 res;
|
||||
__u32 flags;
|
||||
__u64 method_mask[2];
|
||||
__u32 oui;
|
||||
__u8 rmpp_version;
|
||||
__u8 reserved[3];
|
||||
};
|
||||
|
||||
#define IB_IOCTL_MAGIC 0x1b
|
||||
|
||||
#define IB_USER_MAD_REGISTER_AGENT _IOWR(IB_IOCTL_MAGIC, 1, \
|
||||
@@ -200,4 +236,7 @@ struct ib_user_mad_reg_req {
|
||||
|
||||
#define IB_USER_MAD_ENABLE_PKEY _IO(IB_IOCTL_MAGIC, 3)
|
||||
|
||||
#define IB_USER_MAD_REGISTER_AGENT2 _IOWR(IB_IOCTL_MAGIC, 4, \
|
||||
struct ib_user_mad_reg_req2)
|
||||
|
||||
#endif /* IB_USER_MAD_H */
|
||||
|
Reference in New Issue
Block a user