Ver código fonte

qcacld-3.0: Use vht operation or opmode to change the VHT channel width

Even if vht operation or Opmode IE is present in beacon, HT info IE is used to
detect the channel width and set to firmware and then again vht operation or
opmode IE is used to detect and set new channel width to firmware.

So if vht operation or Opmode IE are present, use them to detect and set
new channel width.

Change-Id: Ibbb5a2c55a5f79536fe269e0b6c0f5ff2c369309
CRs-Fixed: 2067727
Abhishek Singh 7 anos atrás
pai
commit
7eaf0e8528
1 arquivos alterados com 7 adições e 2 exclusões
  1. 7 2
      core/mac/src/pe/sch/sch_beacon_process.c

+ 7 - 2
core/mac/src/pe/sch/sch_beacon_process.c

@@ -787,8 +787,13 @@ static void __sch_beacon_process_for_session(tpAniSirGlobal mac_ctx,
 			return;
 	}
 
-	if (session->htCapability && bcn->HTInfo.present &&
-			!LIM_IS_IBSS_ROLE(session))
+	/*
+	 * For vht session, if opermode ie or vht oper IE is present
+	 * bandwidth change will be taken care using these vht IEs.
+	 */
+	if (!(session->vhtCapability && (bcn->OperatingMode.present ||
+	   bcn->VHTOperation.present)) && session->htCapability &&
+	   bcn->HTInfo.present && !LIM_IS_IBSS_ROLE(session))
 		lim_update_sta_run_time_ht_switch_chnl_params(mac_ctx,
 						&bcn->HTInfo, bssIdx, session);