Ver Fonte

qcacld-3.0: update sta mlo information for mlo connection

Fix build error when WLAN_FEATURE_11BE_MLO is not enabled while
WLAN_FEATURE_11BE is enabled.

update sta mlo information only when WLAN_FEATURE_11BE_MLO is
defined

Change-Id: I863fad494a819d6676be4cc1adaf5e8ca9b519a9
CRs-Fixed: 3011721
bings há 3 anos atrás
pai
commit
ebf4bc83c7

+ 1 - 0
core/mac/src/pe/lim/lim_assoc_utils.c

@@ -2298,6 +2298,7 @@ lim_add_sta(struct mac_context *mac_ctx,
 
 	lim_update_sta_eht_capable(mac_ctx, add_sta_params, sta_ds,
 				   session_entry);
+	lim_update_sta_mlo_info(add_sta_params, sta_ds);
 
 	add_sta_params->maxAmpduDensity = sta_ds->htAMpduDensity;
 	add_sta_params->maxAmpduSize = sta_ds->htMaxRxAMpduFactor;

+ 16 - 9
core/mac/src/pe/lim/lim_utils.c

@@ -7972,6 +7972,21 @@ QDF_STATUS lim_populate_he_mcs_set(struct mac_context *mac_ctx,
 }
 #endif
 
+#ifdef WLAN_FEATURE_11BE_MLO
+void lim_update_sta_mlo_info(tpAddStaParams add_sta_params,
+			     tpDphHashNode sta_ds)
+{
+	if (add_sta_params->eht_capable) {
+		WLAN_ADDR_COPY(add_sta_params->mld_mac_addr, sta_ds->mld_addr);
+		add_sta_params->is_assoc_peer = lim_is_mlo_recv_assoc(sta_ds);
+	}
+	pe_debug("eht_capable: %d mld mac " QDF_MAC_ADDR_FMT " assoc peer %d",
+		 add_sta_params->eht_capable,
+		 QDF_MAC_ADDR_REF(add_sta_params->mld_mac_addr),
+		 add_sta_params->is_assoc_peer);
+}
+#endif
+
 #ifdef WLAN_FEATURE_11BE
 QDF_STATUS lim_populate_eht_mcs_set(struct mac_context *mac_ctx,
 				    struct supported_rates *rates,
@@ -8155,15 +8170,7 @@ void lim_update_sta_eht_capable(struct mac_context *mac,
 	else
 		add_sta_params->eht_capable = session_entry->eht_capable;
 
-	if (add_sta_params->eht_capable) {
-		WLAN_ADDR_COPY(add_sta_params->mld_mac_addr, sta_ds->mld_addr);
-		add_sta_params->is_assoc_peer = lim_is_mlo_recv_assoc(sta_ds);
-	}
-
-	pe_debug("eht_capable: %d mld mac " QDF_MAC_ADDR_FMT " assoc peer %d",
-		 add_sta_params->eht_capable,
-		 QDF_MAC_ADDR_REF(add_sta_params->mld_mac_addr),
-		 add_sta_params->is_assoc_peer);
+	pe_debug("eht_capable: %d", add_sta_params->eht_capable);
 }
 
 void lim_update_session_eht_capable_chan_switch(struct mac_context *mac,

+ 15 - 0
core/mac/src/pe/lim/lim_utils.h

@@ -251,6 +251,16 @@ uint16_t lim_assign_mlo_conn_idx(struct mac_context *mac,
 void
 lim_release_mlo_conn_idx(struct mac_context *mac, uint16_t peer_idx,
 			 struct pe_session *pe_session, bool free_aid);
+
+/**
+ * lim_update_sta_mlo_info() - update sta mlo information
+ * @add_sta_params: pointer to tpAddStaParams
+ * @sta_ds: pointer tpDphHashNode
+ *
+ * Return: Void
+ */
+void lim_update_sta_mlo_info(tpAddStaParams add_sta_params,
+			     tpDphHashNode sta_ds);
 #else
 static inline uint16_t lim_assign_mlo_conn_idx(struct mac_context *mac,
 					       struct pe_session *pe_session,
@@ -264,6 +274,11 @@ lim_release_mlo_conn_idx(struct mac_context *mac, uint16_t peer_idx,
 			 struct pe_session *pe_session, bool free_aid)
 {
 }
+
+static inline void lim_update_sta_mlo_info(tpAddStaParams add_sta_params,
+					   tpDphHashNode sta_ds)
+{
+}
 #endif
 
 void lim_enable_overlap11g_protection(struct mac_context *mac,