Эх сурвалжийг харах

qcacld-3.0: Update ignore_assoc_disallowed while creating PE session

For MBO[Multi-Band Operations], supplicant configures driver to ignore
assocition disallowed even if assoc disallowed attribute is present
in MBO IE of target BSS. Currently driver is updating this config
in PE session and fails if PE session doesnot exist at the instance.

Save ignore_assoc_disallowed config to mac context and update the same
to PE session while creating it.

Change-Id: I0379c756f6150533723ba4306f9780e345c3f61f
CRs-Fixed: 2042550
Selvaraj, Sridhar 8 жил өмнө
parent
commit
5b5a06598f

+ 1 - 0
core/mac/inc/ani_global.h

@@ -973,6 +973,7 @@ typedef struct sAniSirGlobal {
 	bool snr_monitor_enabled;
 	void (*chan_info_cb)(struct scan_chan_info *chan_info);
 	uint32_t rx_packet_drop_counter;
+	bool ignore_assoc_disallowed;
 } tAniSirGlobal;
 
 typedef enum {

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

@@ -401,6 +401,7 @@ pe_create_session(tpAniSirGlobal pMac, uint8_t *bssid, uint8_t *sessionId,
 #endif
 	session_ptr->fWaitForProbeRsp = 0;
 	session_ptr->fIgnoreCapsChange = 0;
+	session_ptr->ignore_assoc_disallowed = pMac->ignore_assoc_disallowed;
 
 	pe_debug("Create a new PE session: %d BSSID: "MAC_ADDRESS_STR" Max No of STA: %d",
 		*sessionId, MAC_ADDR_ARRAY(bssid), numSta);

+ 3 - 0
core/sme/src/common/sme_api.c

@@ -7469,6 +7469,9 @@ QDF_STATUS sme_update_session_param(tHalHandle hal, uint8_t session_id,
 			return status;
 		}
 
+		if (param_type == SIR_PARAM_IGNORE_ASSOC_DISALLOWED)
+			mac_ctx->ignore_assoc_disallowed = param_val;
+
 		if (!session->sessionActive)
 			QDF_ASSERT(0);