|
@@ -458,7 +458,7 @@ lim_send_probe_req_mgmt_frame(tpAniSirGlobal mac_ctx,
|
|
|
(uint16_t) sizeof(tSirMacMgmtHdr) + payload,
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_TODS, 7,
|
|
|
lim_tx_complete, frame, txflag, sme_sessionid,
|
|
|
- 0);
|
|
|
+ 0, RATEID_DEFAULT);
|
|
|
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
|
|
pe_err("could not send Probe Request frame!");
|
|
|
/* Pkt will be freed up by the callback */
|
|
@@ -867,7 +867,7 @@ lim_send_probe_rsp_mgmt_frame(tpAniSirGlobal mac_ctx,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, frame, tx_flag,
|
|
|
- sme_sessionid, 0);
|
|
|
+ sme_sessionid, 0, RATEID_DEFAULT);
|
|
|
|
|
|
/* Pkt will be freed up by the callback */
|
|
|
if (!QDF_IS_STATUS_SUCCESS(qdf_status))
|
|
@@ -1082,7 +1082,7 @@ lim_send_addts_req_action_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
|
|
|
@@ -1440,7 +1440,7 @@ lim_send_assoc_rsp_mgmt_frame(tpAniSirGlobal mac_ctx,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, frame, tx_flag,
|
|
|
- sme_session, 0);
|
|
|
+ sme_session, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
pe_session->peSessionId, qdf_status));
|
|
|
|
|
@@ -1587,7 +1587,7 @@ lim_send_delts_req_action_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
|
/* Pkt will be freed up by the callback */
|
|
@@ -1672,6 +1672,7 @@ lim_send_assoc_req_mgmt_frame(tpAniSirGlobal mac_ctx,
|
|
|
uint8_t *bcn_ie = NULL;
|
|
|
uint32_t bcn_ie_len = 0;
|
|
|
uint32_t aes_block_size_len = 0;
|
|
|
+ enum rateid min_rid = RATEID_DEFAULT;
|
|
|
|
|
|
if (NULL == pe_session) {
|
|
|
pe_err("pe_session is NULL");
|
|
@@ -2065,15 +2066,17 @@ lim_send_assoc_req_mgmt_frame(tpAniSirGlobal mac_ctx,
|
|
|
pe_session->peSessionId, mac_hdr->fc.subType));
|
|
|
|
|
|
pe_debug("Sending Association Request length %d to ", bytes);
|
|
|
+ min_rid = lim_get_min_session_txrate(pe_session);
|
|
|
qdf_status =
|
|
|
wma_tx_frameWithTxComplete(mac_ctx, packet,
|
|
|
(uint16_t) (sizeof(tSirMacMgmtHdr) + payload),
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_TODS, 7,
|
|
|
lim_tx_complete, frame, lim_assoc_tx_complete_cnf,
|
|
|
- tx_flag, sme_sessionid, false, 0);
|
|
|
+ tx_flag, sme_sessionid, false, 0, min_rid);
|
|
|
MTRACE(qdf_trace
|
|
|
(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
pe_session->peSessionId, qdf_status));
|
|
|
+
|
|
|
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
|
|
pe_err("Failed to send Association Request (%X)!",
|
|
|
qdf_status);
|
|
@@ -2160,6 +2163,7 @@ lim_send_auth_mgmt_frame(tpAniSirGlobal mac_ctx,
|
|
|
uint8_t sme_sessionid = 0;
|
|
|
uint16_t ft_ies_length = 0;
|
|
|
bool challenge_req = false;
|
|
|
+ enum rateid min_rid = RATEID_DEFAULT;
|
|
|
|
|
|
if (NULL == session) {
|
|
|
pe_err("Error: psession Entry is NULL");
|
|
@@ -2436,12 +2440,13 @@ alloc_packet:
|
|
|
session->peSessionId, mac_hdr->fc.subType));
|
|
|
|
|
|
mac_ctx->auth_ack_status = LIM_AUTH_ACK_NOT_RCD;
|
|
|
+ min_rid = lim_get_min_session_txrate(session);
|
|
|
qdf_status = wma_tx_frameWithTxComplete(mac_ctx, packet,
|
|
|
(uint16_t)frame_len,
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, frame,
|
|
|
lim_auth_tx_complete_cnf,
|
|
|
- tx_flag, sme_sessionid, false, 0);
|
|
|
+ tx_flag, sme_sessionid, false, 0, min_rid);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
session->peSessionId, qdf_status));
|
|
|
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
|
@@ -2786,7 +2791,8 @@ lim_send_disassoc_mgmt_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS, 7, lim_tx_complete,
|
|
|
pFrame, lim_disassoc_tx_complete_cnf,
|
|
|
- txFlag, smeSessionId, false, 0);
|
|
|
+ txFlag, smeSessionId, false, 0,
|
|
|
+ RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace
|
|
|
(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
@@ -2816,7 +2822,7 @@ lim_send_disassoc_mgmt_frame(tpAniSirGlobal pMac,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7,
|
|
|
lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace
|
|
|
(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
@@ -2961,7 +2967,8 @@ lim_send_deauth_mgmt_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS, 7, lim_tx_complete,
|
|
|
pFrame, lim_deauth_tx_complete_cnf,
|
|
|
- txFlag, smeSessionId, false, 0);
|
|
|
+ txFlag, smeSessionId, false, 0,
|
|
|
+ RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace
|
|
|
(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
@@ -3004,7 +3011,7 @@ lim_send_deauth_mgmt_frame(tpAniSirGlobal pMac,
|
|
|
wma_tx_frame(pMac, pPacket, (uint16_t) nBytes,
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_IBSS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
} else {
|
|
|
#endif
|
|
|
/* Queue Disassociation frame in high priority WQ */
|
|
@@ -3012,7 +3019,7 @@ lim_send_deauth_mgmt_frame(tpAniSirGlobal pMac,
|
|
|
wma_tx_frame(pMac, pPacket, (uint16_t) nBytes,
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
#ifdef FEATURE_WLAN_TDLS
|
|
|
}
|
|
|
#endif
|
|
@@ -3142,7 +3149,7 @@ lim_send_meas_report_frame(tpAniSirGlobal pMac,
|
|
|
qdf_status =
|
|
|
wma_tx_frame(pMac, pPacket, (uint16_t) nBytes,
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_TODS, 7,
|
|
|
- lim_tx_complete, pFrame, 0, 0);
|
|
|
+ lim_tx_complete, pFrame, 0, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace
|
|
|
(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
((psessionEntry) ? psessionEntry->peSessionId : NO_SESSION),
|
|
@@ -3242,7 +3249,7 @@ lim_send_tpc_request_frame(tpAniSirGlobal pMac,
|
|
|
qdf_status =
|
|
|
wma_tx_frame(pMac, pPacket, (uint16_t) nBytes,
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_TODS, 7,
|
|
|
- lim_tx_complete, pFrame, 0, 0);
|
|
|
+ lim_tx_complete, pFrame, 0, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace
|
|
|
(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
((psessionEntry) ? psessionEntry->peSessionId : NO_SESSION),
|
|
@@ -3345,7 +3352,7 @@ lim_send_tpc_report_frame(tpAniSirGlobal pMac,
|
|
|
qdf_status =
|
|
|
wma_tx_frame(pMac, pPacket, (uint16_t) nBytes,
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_TODS, 7,
|
|
|
- lim_tx_complete, pFrame, 0, 0);
|
|
|
+ lim_tx_complete, pFrame, 0, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace
|
|
|
(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
((psessionEntry) ? psessionEntry->peSessionId : NO_SESSION),
|
|
@@ -3474,7 +3481,7 @@ lim_send_channel_switch_mgmt_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
|
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
|
@@ -3601,7 +3608,8 @@ lim_send_extended_chan_switch_action_frame(tpAniSirGlobal mac_ctx,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7,
|
|
|
lim_tx_complete, frame,
|
|
|
- txFlag, sme_session_id, 0);
|
|
|
+ txFlag, sme_session_id, 0,
|
|
|
+ RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
session_entry->peSessionId, qdf_status));
|
|
|
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
|
@@ -3749,7 +3757,7 @@ lim_p2p_oper_chan_change_confirm_action_frame(tpAniSirGlobal mac_ctx,
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, frame,
|
|
|
lim_oper_chan_change_confirm_tx_complete_cnf,
|
|
|
- tx_flag, sme_session_id, false, 0);
|
|
|
+ tx_flag, sme_session_id, false, 0, RATEID_DEFAULT);
|
|
|
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
session_entry->peSessionId, qdf_status));
|
|
@@ -3852,7 +3860,7 @@ lim_send_vht_opmode_notification_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
|
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
|
@@ -3987,7 +3995,7 @@ lim_send_neighbor_report_request_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
|
if (QDF_STATUS_SUCCESS != qdf_status) {
|
|
@@ -4134,7 +4142,7 @@ lim_send_link_report_action_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
|
if (QDF_STATUS_SUCCESS != qdf_status) {
|
|
@@ -4319,7 +4327,7 @@ lim_send_radio_measure_report_action_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
|
if (QDF_STATUS_SUCCESS != qdf_status) {
|
|
@@ -4455,7 +4463,7 @@ tSirRetStatus lim_send_sa_query_request_frame(tpAniSirGlobal pMac, uint8_t *tran
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
if (QDF_STATUS_SUCCESS != qdf_status) {
|
|
|
pe_err("wma_tx_frame FAILED! Status [%d]", qdf_status);
|
|
|
nSirStatus = eSIR_FAILURE;
|
|
@@ -4587,7 +4595,7 @@ tSirRetStatus lim_send_sa_query_response_frame(tpAniSirGlobal pMac,
|
|
|
TXRX_FRM_802_11_MGMT,
|
|
|
ANI_TXDIR_TODS,
|
|
|
7, lim_tx_complete, pFrame, txFlag,
|
|
|
- smeSessionId, 0);
|
|
|
+ smeSessionId, 0, RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
psessionEntry->peSessionId, qdf_status));
|
|
|
if (QDF_STATUS_SUCCESS != qdf_status) {
|
|
@@ -4729,7 +4737,8 @@ QDF_STATUS lim_send_addba_response_frame(tpAniSirGlobal mac_ctx,
|
|
|
session->peSessionId, mgmt_hdr->fc.subType));
|
|
|
qdf_status = wma_tx_frame(mac_ctx, pkt_ptr, (uint16_t) num_bytes,
|
|
|
TXRX_FRM_802_11_MGMT, ANI_TXDIR_TODS, 7,
|
|
|
- lim_tx_complete, frame_ptr, tx_flag, sme_sessionid, 0);
|
|
|
+ lim_tx_complete, frame_ptr, tx_flag, sme_sessionid, 0,
|
|
|
+ RATEID_DEFAULT);
|
|
|
MTRACE(qdf_trace(QDF_MODULE_ID_PE, TRACE_CODE_TX_COMPLETE,
|
|
|
session->peSessionId, qdf_status));
|
|
|
if (QDF_STATUS_SUCCESS != qdf_status) {
|