qcacld-3.0: Set AMSDU support in ADDBA if peer supports

Set AMSDU in AMPDU support in addba response frames only
if supports the feature.

Change-Id: Ibdb51e9055199b688f494f31fd484b246ec11163
CRs-Fixed: 2211374
这个提交包含在:
Kiran Kumar Lokere
2018-03-22 15:27:05 -07:00
提交者 nshrivas
父节点 665484ac26
当前提交 aee823af05
修改 3 个文件,包含 10 行新增5 行删除

查看文件

@@ -1698,7 +1698,8 @@ static void lim_process_addba_req(tpAniSirGlobal mac_ctx, uint8_t *rx_pkt_info,
if (QDF_STATUS_SUCCESS == qdf_status) {
lim_send_addba_response_frame(mac_ctx, mac_hdr->sa,
addba_req->addba_param_set.tid, session,
addba_req->addba_extn_element.present);
addba_req->addba_extn_element.present,
addba_req->addba_param_set.amsdu_supp);
} else {
pe_err("Failed to process addba request");
}

查看文件

@@ -4726,6 +4726,7 @@ returnAfterError:
* @tid: TID for which addba response is being sent
* @session: PE session entry
* @addba_extn_present: ADDBA extension present flag
* @amsdu_support: amsdu in ampdu support
*
* This function is called when ADDBA request is successful. ADDBA response is
* setup by calling addba_response_setup API and frame is then sent out OTA.
@@ -4734,7 +4735,8 @@ returnAfterError:
*/
QDF_STATUS lim_send_addba_response_frame(tpAniSirGlobal mac_ctx,
tSirMacAddr peer_mac, uint16_t tid,
tpPESession session, uint8_t addba_extn_present)
tpPESession session, uint8_t addba_extn_present,
uint8_t amsdu_support)
{
tDot11faddba_rsp frm;
@@ -4784,7 +4786,7 @@ QDF_STATUS lim_send_addba_response_frame(tpAniSirGlobal mac_ctx,
frm.addba_param_set.buff_size = SIR_MAC_BA_DEFAULT_BUFF_SIZE;
if (mac_ctx->usr_cfg_ba_buff_size)
frm.addba_param_set.buff_size = mac_ctx->usr_cfg_ba_buff_size;
frm.addba_param_set.amsdu_supp = SIR_MAC_BA_AMSDU_SUPPORTED;
frm.addba_param_set.amsdu_supp = amsdu_support;
frm.addba_param_set.policy = SIR_MAC_BA_POLICY_IMMEDIATE;
frm.ba_timeout.timeout = batimeout;
if (addba_extn_present) {

查看文件

@@ -1021,8 +1021,10 @@ enum {
};
QDF_STATUS lim_send_addba_response_frame(tpAniSirGlobal mac_ctx,
tSirMacAddr peer_mac, uint16_t tid,
tpPESession session, uint8_t addba_extn_present);
tSirMacAddr peer_mac, uint16_t tid,
tpPESession session,
uint8_t addba_extn_present,
uint8_t amsdu_support);
/**
* lim_process_join_failure_timeout() - This function is called to process
* JoinFailureTimeout