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
This commit is contained in:
Prakash Dhavali 2016-12-01 16:41:42 -08:00 • committed by qcabuildsw
commit 0b17550a35
2 changed files with 5 additions and 4 deletions

View file

@ -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);

View file

@ -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;
}
/*--------------------------------------------------------------------------