diff --git a/core/cds/src/i_cds_packet.h b/core/cds/src/i_cds_packet.h index 358e15d9a986..947bcd6fef0f 100644 --- a/core/cds/src/i_cds_packet.h +++ b/core/cds/src/i_cds_packet.h @@ -50,7 +50,6 @@ * @mpdu_data_len: Length of 802.11 MPDU payload * @offloadScanLearn: Bit set to 1 for beacons received during roaming scan * @roamCandidateInd: Bit set to 1 when roaming candidate is found by fw - * @scan: Bit set to 1 if packet received during scanning * @scan_src: Source of scan * @dpuFeedback: DPU feedback for frame * @session_id: PE session @@ -69,7 +68,6 @@ typedef struct { uint32_t mpdu_data_len; uint8_t offloadScanLearn:1; uint8_t roamCandidateInd:1; - uint8_t scan:1; uint8_t scan_src; uint8_t dpuFeedback; uint8_t session_id; diff --git a/core/mac/src/pe/include/lim_api.h b/core/mac/src/pe/include/lim_api.h index 94876198aadd..6c8619abf079 100644 --- a/core/mac/src/pe/include/lim_api.h +++ b/core/mac/src/pe/include/lim_api.h @@ -188,10 +188,7 @@ QDF_STATUS lim_post_msg_high_priority(struct mac_context *mac, * and dispatch to various sub modules within LIM module. */ void lim_message_processor(struct mac_context *, struct scheduler_msg *); -/** - * Function to check the LIM state if system is in Scan/Learn state. - */ -uint8_t lim_is_system_in_scan_state(struct mac_context *); + /** * Function to handle IBSS coalescing. * Beacon Processing module to call this. diff --git a/core/mac/src/pe/include/lim_global.h b/core/mac/src/pe/include/lim_global.h index bcdd6eddc8a8..5f7527ff4207 100644 --- a/core/mac/src/pe/include/lim_global.h +++ b/core/mac/src/pe/include/lim_global.h @@ -76,7 +76,6 @@ typedef enum eLimSmeStates { eLIM_SME_OFFLINE_STATE, eLIM_SME_IDLE_STATE, eLIM_SME_SUSPEND_STATE, - eLIM_SME_WT_SCAN_STATE, eLIM_SME_WT_JOIN_STATE, eLIM_SME_WT_AUTH_STATE, eLIM_SME_WT_ASSOC_STATE, @@ -85,15 +84,12 @@ typedef enum eLimSmeStates { eLIM_SME_ASSOCIATED_STATE, eLIM_SME_REASSOCIATED_STATE, eLIM_SME_LINK_EST_STATE, - eLIM_SME_LINK_EST_WT_SCAN_STATE, eLIM_SME_WT_PRE_AUTH_STATE, eLIM_SME_WT_DISASSOC_STATE, eLIM_SME_WT_DEAUTH_STATE, eLIM_SME_WT_START_BSS_STATE, eLIM_SME_WT_STOP_BSS_STATE, eLIM_SME_NORMAL_STATE, - eLIM_SME_CHANNEL_SCAN_STATE, - eLIM_SME_NORMAL_CHANNEL_SCAN_STATE } tLimSmeStates; /* diff --git a/core/mac/src/pe/lim/lim_api.c b/core/mac/src/pe/lim/lim_api.c index 1772bf2512e5..e08a4f6c9324 100644 --- a/core/mac/src/pe/lim/lim_api.c +++ b/core/mac/src/pe/lim/lim_api.c @@ -1321,42 +1321,6 @@ void pe_register_callbacks_with_wma(struct mac_context *mac, pe_err("Registering roaming callbacks with WMA failed"); } -/** - * lim_is_system_in_scan_state() - * - ***FUNCTION: - * This function is called by various MAC software modules to - * determine if System is in Scan/Learn state - * - ***LOGIC: - * NA - * - ***ASSUMPTIONS: - * NA - * - ***NOTE: - * - * @param mac - Pointer to Global MAC structure - * @return true - System is in Scan/Learn state - * false - System is NOT in Scan/Learn state - */ - -uint8_t lim_is_system_in_scan_state(struct mac_context *mac) -{ - switch (mac->lim.gLimSmeState) { - case eLIM_SME_CHANNEL_SCAN_STATE: - case eLIM_SME_NORMAL_CHANNEL_SCAN_STATE: - case eLIM_SME_LINK_EST_WT_SCAN_STATE: - case eLIM_SME_WT_SCAN_STATE: - /* System is in Learn mode */ - return true; - - default: - /* System is NOT in Learn mode */ - return false; - } -} /*** end lim_is_system_in_scan_state() ***/ - /** *\brief lim_received_hb_handler() * @@ -2418,10 +2382,6 @@ tMgmtFrmDropReason lim_is_pkt_candidate_for_drop(struct mac_context *mac, eLOG_NODROP_MISSED_BEACON_SCENARIO)); return eMGMT_DROP_NO_DROP; } - if (lim_is_system_in_scan_state(mac)) - return eMGMT_DROP_NO_DROP; - else if (WMA_IS_RX_IN_SCAN(pRxPacketInfo)) - return eMGMT_DROP_SCAN_MODE_FRAME; framelen = WMA_GET_RX_PAYLOAD_LEN(pRxPacketInfo); pBody = WMA_GET_RX_MPDU_DATA(pRxPacketInfo); diff --git a/core/mac/src/pe/lim/lim_process_message_queue.c b/core/mac/src/pe/lim/lim_process_message_queue.c index 13df624b03b6..883c713f4339 100644 --- a/core/mac/src/pe/lim/lim_process_message_queue.c +++ b/core/mac/src/pe/lim/lim_process_message_queue.c @@ -526,8 +526,7 @@ static bool def_msg_decision(struct mac_context *mac_ctx, * When defer is requested then defer all the messages except * HAL responses. */ - if (!lim_is_system_in_scan_state(mac_ctx) && - !GET_LIM_PROCESS_DEFD_MESGS(mac_ctx)) { + if (!GET_LIM_PROCESS_DEFD_MESGS(mac_ctx)) { if (lim_msg->type == SIR_BB_XPORT_MGMT_MSG) { /* * Dont defer beacon and probe response @@ -2128,9 +2127,8 @@ static void lim_process_deferred_message_queue(struct mac_context *mac) size--; lim_process_messages(mac, &limMsg); - if ((lim_is_system_in_scan_state(mac)) - || (true != GET_LIM_PROCESS_DEFD_MESGS(mac)) - || mac->lim.gLimAddtsSent) + if (!GET_LIM_PROCESS_DEFD_MESGS(mac) || + mac->lim.gLimAddtsSent) break; } } @@ -2157,8 +2155,7 @@ void lim_message_processor(struct mac_context *mac_ctx, struct scheduler_msg *ms lim_process_messages(mac_ctx, msg); /* process deferred message queue if allowed */ if ((!(mac_ctx->lim.gLimAddtsSent)) && - (!(lim_is_system_in_scan_state(mac_ctx))) && - (true == GET_LIM_PROCESS_DEFD_MESGS(mac_ctx))) + GET_LIM_PROCESS_DEFD_MESGS(mac_ctx)) lim_process_deferred_message_queue(mac_ctx); } } @@ -2203,8 +2200,7 @@ static void lim_process_normal_hdd_msg(struct mac_context *mac_ctx, defer_msg = false; } - if (((mac_ctx->lim.gLimAddtsSent) || - (lim_is_system_in_scan_state(mac_ctx))) && defer_msg) { + if (mac_ctx->lim.gLimAddtsSent && defer_msg) { /* * System is in DFS (Learn) mode or awaiting addts response or * if radar is detected, Defer processing this message diff --git a/core/mac/src/pe/lim/lim_process_sme_req_messages.c b/core/mac/src/pe/lim/lim_process_sme_req_messages.c index c6e95a78493a..6a48f83d56d8 100644 --- a/core/mac/src/pe/lim/lim_process_sme_req_messages.c +++ b/core/mac/src/pe/lim/lim_process_sme_req_messages.c @@ -312,33 +312,6 @@ static bool __lim_is_sme_assoc_cnf_valid(struct assoc_cnf *assoc_cnf) return true; } -/** - * __lim_is_defered_msg_for_learn() - message handling in SME learn state - * @mac: Global MAC context - * @pMsg: Pointer to message posted from SME to LIM. - * - * Has role only if 11h is enabled. Not used on STA side. - * Defers the message if SME is in learn state and brings - * the LIM back to normal mode. - * - * Return: true - If defered false - Otherwise - */ - -static bool __lim_is_defered_msg_for_learn(struct mac_context *mac, - struct scheduler_msg *pMsg) -{ - if (lim_is_system_in_scan_state(mac)) { - if (lim_defer_msg(mac, pMsg) != TX_SUCCESS) { - pe_err("Could not defer Msg: %d", pMsg->type); - return false; - } - pe_debug("Defer the message, in learn mode type: %d", - pMsg->type); - return true; - } - return false; -} - /** * __lim_is_defered_msg_for_radar() - Defers the message if radar is detected * @mac_ctx: Pointer to Global MAC structure @@ -996,8 +969,7 @@ free: static bool __lim_process_sme_start_bss_req(struct mac_context *mac, struct scheduler_msg *pMsg) { - if (__lim_is_defered_msg_for_learn(mac, pMsg) || - __lim_is_defered_msg_for_radar(mac, pMsg)) { + if (__lim_is_defered_msg_for_radar(mac, pMsg)) { /** * If message defered, buffer is not consumed yet. * So return false @@ -2929,13 +2901,6 @@ __lim_handle_sme_stop_bss_request(struct mac_context *mac, uint32_t *pMsgBuf) static bool __lim_process_sme_stop_bss_req(struct mac_context *mac, struct scheduler_msg *pMsg) { - if (__lim_is_defered_msg_for_learn(mac, pMsg)) { - /** - * If message defered, buffer is not consumed yet. - * So return false - */ - return false; - } __lim_handle_sme_stop_bss_request(mac, (uint32_t *) pMsg->bodyptr); return true; } /*** end __lim_process_sme_stop_bss_req() ***/ @@ -2995,9 +2960,7 @@ void __lim_process_sme_assoc_cnf_new(struct mac_context *mac_ctx, uint32_t msg_t } if ((!LIM_IS_AP_ROLE(session_entry)) || - ((session_entry->limSmeState != eLIM_SME_NORMAL_STATE) && - (session_entry->limSmeState != - eLIM_SME_NORMAL_CHANNEL_SCAN_STATE))) { + (session_entry->limSmeState != eLIM_SME_NORMAL_STATE)) { pe_err("Rcvd unexpected msg %X in state %X, in role %X", msg_type, session_entry->limSmeState, GET_LIM_SYSTEM_ROLE(session_entry)); diff --git a/core/mac/src/pe/lim/lim_trace.c b/core/mac/src/pe/lim/lim_trace.c index aa6007e7ae7e..99f762248757 100644 --- a/core/mac/src/pe/lim/lim_trace.c +++ b/core/mac/src/pe/lim/lim_trace.c @@ -344,7 +344,6 @@ uint8_t *lim_trace_get_sme_state_string(uint32_t smeState) CASE_RETURN_STRING(eLIM_SME_OFFLINE_STATE); CASE_RETURN_STRING(eLIM_SME_IDLE_STATE); CASE_RETURN_STRING(eLIM_SME_SUSPEND_STATE); - CASE_RETURN_STRING(eLIM_SME_WT_SCAN_STATE); CASE_RETURN_STRING(eLIM_SME_WT_JOIN_STATE); CASE_RETURN_STRING(eLIM_SME_WT_AUTH_STATE); CASE_RETURN_STRING(eLIM_SME_WT_ASSOC_STATE); @@ -353,15 +352,12 @@ uint8_t *lim_trace_get_sme_state_string(uint32_t smeState) CASE_RETURN_STRING(eLIM_SME_ASSOCIATED_STATE); CASE_RETURN_STRING(eLIM_SME_REASSOCIATED_STATE); CASE_RETURN_STRING(eLIM_SME_LINK_EST_STATE); - CASE_RETURN_STRING(eLIM_SME_LINK_EST_WT_SCAN_STATE); CASE_RETURN_STRING(eLIM_SME_WT_PRE_AUTH_STATE); CASE_RETURN_STRING(eLIM_SME_WT_DISASSOC_STATE); CASE_RETURN_STRING(eLIM_SME_WT_DEAUTH_STATE); CASE_RETURN_STRING(eLIM_SME_WT_START_BSS_STATE); CASE_RETURN_STRING(eLIM_SME_WT_STOP_BSS_STATE); CASE_RETURN_STRING(eLIM_SME_NORMAL_STATE); - CASE_RETURN_STRING(eLIM_SME_CHANNEL_SCAN_STATE); - CASE_RETURN_STRING(eLIM_SME_NORMAL_CHANNEL_SCAN_STATE); default: return "UNKNOWN"; break; diff --git a/core/mac/src/pe/lim/lim_utils.c b/core/mac/src/pe/lim/lim_utils.c index 57750312a393..44f8f9879604 100644 --- a/core/mac/src/pe/lim/lim_utils.c +++ b/core/mac/src/pe/lim/lim_utils.c @@ -224,8 +224,6 @@ char *lim_sme_state_str(tLimSmeStates state) return "eLIM_SME_OFFLINE_STATE"; case eLIM_SME_SUSPEND_STATE: return "eLIM_SME_SUSPEND_STATE"; - case eLIM_SME_WT_SCAN_STATE: - return "eLIM_SME_WT_SCAN_STATE"; case eLIM_SME_WT_JOIN_STATE: return "eLIM_SME_WT_JOIN_STATE"; case eLIM_SME_WT_AUTH_STATE: @@ -242,8 +240,6 @@ char *lim_sme_state_str(tLimSmeStates state) return "eLIM_SME_REASSOCIATED_STATE"; case eLIM_SME_LINK_EST_STATE: return "eLIM_SME_LINK_EST_STATE"; - case eLIM_SME_LINK_EST_WT_SCAN_STATE: - return "eLIM_SME_LINK_EST_WT_SCAN_STATE"; case eLIM_SME_WT_PRE_AUTH_STATE: return "eLIM_SME_WT_PRE_AUTH_STATE"; case eLIM_SME_WT_DISASSOC_STATE: @@ -256,10 +252,6 @@ char *lim_sme_state_str(tLimSmeStates state) return "eLIM_SME_WT_STOP_BSS_STATE"; case eLIM_SME_NORMAL_STATE: return "eLIM_SME_NORMAL_STATE"; - case eLIM_SME_CHANNEL_SCAN_STATE: - return "eLIM_SME_CHANNEL_SCAN_STATE"; - case eLIM_SME_NORMAL_CHANNEL_SCAN_STATE: - return "eLIM_SME_NORMAL_CHANNEL_SCAN_STATE"; default: return "INVALID SME STATE"; } @@ -731,10 +723,9 @@ uint8_t lim_write_deferred_msg_q(struct mac_context *mac_ctx, * happen. */ if (mac_ctx->lim.gLimDeferredMsgQ.size > 0) - pe_debug("%d Deferred Msg type: 0x%x scan: %d global sme: %d global mlme: %d addts: %d", + pe_debug("%d Deferred Msg type: 0x%x global sme: %d global mlme: %d addts: %d", mac_ctx->lim.gLimDeferredMsgQ.size, lim_msg->type, - lim_is_system_in_scan_state(mac_ctx), mac_ctx->lim.gLimSmeState, mac_ctx->lim.gLimMlmState, mac_ctx->lim.gLimAddtsSent); @@ -853,9 +844,9 @@ struct scheduler_msg *lim_read_deferred_msg_q(struct mac_context *mac) mac->lim.gLimDeferredMsgQ.size, mac->lim.gLimDeferredMsgQ.read, msg->type); - pe_debug("DQ msg -- scan: %d global sme: %d global mlme: %d addts: %d", - lim_is_system_in_scan_state(mac), mac->lim.gLimSmeState, - mac->lim.gLimMlmState, mac->lim.gLimAddtsSent); + pe_debug("DQ msg -- global sme: %d global mlme: %d addts: %d", + mac->lim.gLimSmeState, mac->lim.gLimMlmState, + mac->lim.gLimAddtsSent); return msg; } @@ -4569,23 +4560,8 @@ lim_prepare_for11h_channel_switch(struct mac_context *mac, struct pe_session *pe /* Flag to indicate 11h channel switch in progress */ pe_session->gLimSpecMgmt.dot11hChanSwState = eLIM_11H_CHANSW_RUNNING; - if (mac->lim.gLimSmeState == eLIM_SME_LINK_EST_WT_SCAN_STATE || - mac->lim.gLimSmeState == eLIM_SME_CHANNEL_SCAN_STATE) { - pe_debug("Posting finish scan as we are in scan state"); - /* Stop ongoing scanning if any */ - if (GET_LIM_PROCESS_DEFD_MESGS(mac)) { - /* Set the resume channel to Any valid channel (invalid). */ - /* This will instruct HAL to set it to any previous valid channel. */ - pe_set_resume_channel(mac, 0, 0); - } else { - lim_restore_pre_channel_switch_state(mac, pe_session); - } - return; - } else { - pe_debug("Not in scan state, start channel switch timer"); - /** We are safe to switch channel at this point */ - lim_stop_tx_and_switch_channel(mac, pe_session->peSessionId); - } + /** We are safe to switch channel at this point */ + lim_stop_tx_and_switch_channel(mac, pe_session->peSessionId); } /**---------------------------------------------------- diff --git a/core/mac/src/sys/legacy/src/system/src/sys_entry_func.c b/core/mac/src/sys/legacy/src/system/src/sys_entry_func.c index b621adb6c459..5450c286a7ce 100644 --- a/core/mac/src/sys/legacy/src/system/src/sys_entry_func.c +++ b/core/mac/src/sys/legacy/src/system/src/sys_entry_func.c @@ -98,8 +98,7 @@ QDF_STATUS sys_bbt_process_message_core(struct mac_context *mac_ctx, * message wrappers. */ if ((subtype == SIR_MAC_MGMT_BEACON) && - (!lim_is_system_in_scan_state(mac_ctx)) && - (GET_LIM_PROCESS_DEFD_MESGS(mac_ctx) != true)) { + !GET_LIM_PROCESS_DEFD_MESGS(mac_ctx)) { pe_debug("dropping received beacon in deffered state"); goto fail; } diff --git a/core/mac/src/sys/legacy/src/utils/src/mac_trace.c b/core/mac/src/sys/legacy/src/utils/src/mac_trace.c index 1aa820d2e0cb..47465306764d 100644 --- a/core/mac/src/sys/legacy/src/utils/src/mac_trace.c +++ b/core/mac/src/sys/legacy/src/utils/src/mac_trace.c @@ -139,7 +139,6 @@ uint8_t *mac_trace_get_lim_sme_state(uint16_t lim_state) CASE_RETURN_STRING(eLIM_SME_OFFLINE_STATE); CASE_RETURN_STRING(eLIM_SME_IDLE_STATE); CASE_RETURN_STRING(eLIM_SME_SUSPEND_STATE); - CASE_RETURN_STRING(eLIM_SME_WT_SCAN_STATE); CASE_RETURN_STRING(eLIM_SME_WT_JOIN_STATE); CASE_RETURN_STRING(eLIM_SME_WT_AUTH_STATE); CASE_RETURN_STRING(eLIM_SME_WT_ASSOC_STATE); @@ -148,15 +147,12 @@ uint8_t *mac_trace_get_lim_sme_state(uint16_t lim_state) CASE_RETURN_STRING(eLIM_SME_ASSOCIATED_STATE); CASE_RETURN_STRING(eLIM_SME_REASSOCIATED_STATE); CASE_RETURN_STRING(eLIM_SME_LINK_EST_STATE); - CASE_RETURN_STRING(eLIM_SME_LINK_EST_WT_SCAN_STATE); CASE_RETURN_STRING(eLIM_SME_WT_PRE_AUTH_STATE); CASE_RETURN_STRING(eLIM_SME_WT_DISASSOC_STATE); CASE_RETURN_STRING(eLIM_SME_WT_DEAUTH_STATE); CASE_RETURN_STRING(eLIM_SME_WT_START_BSS_STATE); CASE_RETURN_STRING(eLIM_SME_WT_STOP_BSS_STATE); CASE_RETURN_STRING(eLIM_SME_NORMAL_STATE); - CASE_RETURN_STRING(eLIM_SME_CHANNEL_SCAN_STATE); - CASE_RETURN_STRING(eLIM_SME_NORMAL_CHANNEL_SCAN_STATE); default: return (uint8_t *) "UNKNOWN"; diff --git a/core/wma/inc/wma_types.h b/core/wma/inc/wma_types.h index 2361e470226e..ba8e44dea6fe 100644 --- a/core/wma/inc/wma_types.h +++ b/core/wma/inc/wma_types.h @@ -72,9 +72,6 @@ #define WMA_GET_RX_TIMESTAMP(pRxMeta) \ (((t_packetmeta *)pRxMeta)->timestamp) -#define WMA_IS_RX_IN_SCAN(pRxMeta) \ - (((t_packetmeta *)pRxMeta)->scan) - #define WMA_GET_OFFLOADSCANLEARN(pRxMeta) \ (((t_packetmeta *)pRxMeta)->offloadScanLearn) #define WMA_GET_ROAMCANDIDATEIND(pRxMeta) \