Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
[deliverable/linux.git] / include / rdma / ib_sa.h
index cdc1c81aa275bda38f97f1e71c3c774dfbc8c983..5ee7aab95eb8499239ae2f74b0534dd393290a95 100644 (file)
@@ -94,6 +94,21 @@ enum ib_sa_selector {
        IB_SA_BEST = 3
 };
 
+/*
+ * There are 4 types of join states:
+ * FullMember, NonMember, SendOnlyNonMember, SendOnlyFullMember.
+ * The order corresponds to JoinState bits in MCMemberRecord.
+ */
+enum ib_sa_mc_join_states {
+       FULLMEMBER_JOIN,
+       NONMEMBER_JOIN,
+       SENDONLY_NONMEBER_JOIN,
+       SENDONLY_FULLMEMBER_JOIN,
+       NUM_JOIN_MEMBERSHIP_TYPES,
+};
+
+#define IB_SA_CAP_MASK2_SENDONLY_FULL_MEM_SUPPORT      BIT(12)
+
 /*
  * Structures for SA records are named "struct ib_sa_xxx_rec."  No
  * attempt is made to pack structures to match the physical layout of
@@ -439,4 +454,14 @@ int ib_sa_guid_info_rec_query(struct ib_sa_client *client,
                              void *context,
                              struct ib_sa_query **sa_query);
 
+/* Support get SA ClassPortInfo */
+int ib_sa_classport_info_rec_query(struct ib_sa_client *client,
+                                  struct ib_device *device, u8 port_num,
+                                  int timeout_ms, gfp_t gfp_mask,
+                                  void (*callback)(int status,
+                                                   struct ib_class_port_info *resp,
+                                                   void *context),
+                                  void *context,
+                                  struct ib_sa_query **sa_query);
+
 #endif /* IB_SA_H */
This page took 0.024287 seconds and 5 git commands to generate.