Selaa lähdekoodia

qcacld-3.0: Update per session uapsd mask in sme after ADD TS rsp

In function sme_set_tspec_uapsd_mask_per_session update
uapsd_per_ac_bit_mask as per the values received from
ADD TS response. Otherwise, ini change if 0 will always
override ADD TS response values.

Change-Id: Ie834f651bb097c084c81c6ebc9c8637f96d7a075
CRs-Fixed: 1096829
Prakash Dhavali 8 vuotta sitten
vanhempi
sitoutus
0b17550a35
2 muutettua tiedostoa jossa 5 lisäystä ja 4 poistoa
  1. 2 0
      core/sme/src/common/sme_power_save.c
  2. 3 4
      core/sme/src/qos/sme_qos.c

+ 2 - 0
core/sme/src/common/sme_power_save.c

@@ -611,6 +611,7 @@ void sme_set_tspec_uapsd_mask_per_session(tpAniSirGlobal mac_ctx,
 	 */
 	ac = ((~ac) & 0x3);
 	if (ts_info->traffic.psb) {
+		ps_param->uapsd_per_ac_bit_mask |= (1 << ac);
 		if (direction == SIR_MAC_DIRECTION_UPLINK)
 			ps_param->uapsd_per_ac_trigger_enable_mask |=
 				(1 << ac);
@@ -624,6 +625,7 @@ void sme_set_tspec_uapsd_mask_per_session(tpAniSirGlobal mac_ctx,
 				(1 << ac);
 		}
 	} else {
+		ps_param->uapsd_per_ac_bit_mask &= ~(1 << ac);
 		if (direction == SIR_MAC_DIRECTION_UPLINK)
 			ps_param->uapsd_per_ac_trigger_enable_mask &=
 				~(1 << ac);

+ 3 - 4
core/sme/src/qos/sme_qos.c

@@ -5501,6 +5501,9 @@ QDF_STATUS sme_qos_process_add_ts_success_rsp(tpAniSirGlobal pMac,
 	pACInfo->curr_QoSInfo[tspec_pending - 1].medium_time =
 		pRsp->tspec.mediumTime;
 
+	sme_set_tspec_uapsd_mask_per_session(pMac,
+			&pRsp->tspec.tsinfo, sessionId);
+
 	QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_INFO_HIGH,
 		  "%s: %d: On session %d AddTspec Medium Time %d",
 		  __func__, __LINE__, sessionId, pRsp->tspec.mediumTime);
@@ -5619,12 +5622,8 @@ QDF_STATUS sme_qos_process_add_ts_success_rsp(tpAniSirGlobal pMac,
 
 	sme_qos_state_transition(sessionId, ac, SME_QOS_QOS_ON);
 
-	sme_set_tspec_uapsd_mask_per_session(pMac,
-			&pRsp->tspec.tsinfo, sessionId);
-
 	(void)sme_qos_process_buffered_cmd(sessionId);
 	return QDF_STATUS_SUCCESS;
-
 }
 
 /*--------------------------------------------------------------------------