summaryrefslogtreecommitdiff
path: root/core/mac
diff options
context:
space:
mode:
authorVarun Reddy Yeturu <varunreddy.yeturu@codeaurora.org>2016-02-29 14:01:57 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2016-04-17 18:10:33 -0700
commitbbbbe237f9fa0ac35a93a6b863d2d64e71e51229 (patch)
treea4a24a063de5fd8da79cb3591184ed9b1bc54685 /core/mac
parent86459d63ca6d141bf3045af9166f8a3fc1bcb3a1 (diff)
qcacld-3.0: Enable compile time enable/disable for roaming
Enable compile time featurization support for both LFR2.0 and LFR3.0 using WLAN_FEATURE_HOST_ROAM and WLAN_FEATURE_ROAM_OFFLOAD respectively CRs-Fixed: 978905 Change-Id: Ib5976cd0cd5a6e117a1334bfc73a043e36e25f77
Diffstat (limited to 'core/mac')
-rw-r--r--core/mac/inc/sir_api.h5
-rw-r--r--core/mac/src/pe/include/lim_api.h7
-rw-r--r--core/mac/src/pe/include/lim_ft.h90
-rw-r--r--core/mac/src/pe/lim/lim_assoc_utils.c2
-rw-r--r--core/mac/src/pe/lim/lim_assoc_utils.h64
-rw-r--r--core/mac/src/pe/lim/lim_ft.c25
-rw-r--r--core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c51
-rw-r--r--core/mac/src/pe/lim/lim_process_tdls.c2
-rw-r--r--core/mac/src/pe/lim/lim_types.h15
-rw-r--r--core/mac/src/pe/lim/lim_utils.h12
10 files changed, 189 insertions, 84 deletions
diff --git a/core/mac/inc/sir_api.h b/core/mac/inc/sir_api.h
index 7859837648f8..e6d13f0219da 100644
--- a/core/mac/inc/sir_api.h
+++ b/core/mac/inc/sir_api.h
@@ -154,12 +154,11 @@ typedef enum {
#endif /* FEATURE_WLAN_EXTSCAN */
#define SIR_KRK_KEY_LEN 16
-#ifdef WLAN_FEATURE_ROAM_OFFLOAD
#define SIR_BTK_KEY_LEN 32
#define SIR_KCK_KEY_LEN 16
#define SIR_KEK_KEY_LEN 16
#define SIR_REPLAY_CTR_LEN 8
-
+#ifdef WLAN_FEATURE_ROAM_OFFLOAD
#define SIR_UAPSD_BITOFFSET_ACVO 0
#define SIR_UAPSD_BITOFFSET_ACVI 1
#define SIR_UAPSD_BITOFFSET_ACBK 2
@@ -4006,7 +4005,6 @@ typedef struct {
uint8_t event_data[];
} tSirNanEvent, *tpSirNanEvent;
#endif
-#ifdef WLAN_FEATURE_ROAM_OFFLOAD
typedef struct sSirSmeRoamOffloadSynchInd {
uint16_t messageType; /*eWNI_SME_ROAM_OFFLOAD_SYNCH_IND */
uint16_t length;
@@ -4034,6 +4032,7 @@ typedef struct sSirSmeRoamOffloadSynchInd {
tpSirBssDescription bss_desc_ptr;
} roam_offload_synch_ind;
+#ifdef WLAN_FEATURE_ROAM_OFFLOAD
typedef struct sSirSmeRoamOffloadSynchCnf {
uint8_t sessionId;
} tSirSmeRoamOffloadSynchCnf, *tpSirSmeRoamOffloadSynchCnf;
diff --git a/core/mac/src/pe/include/lim_api.h b/core/mac/src/pe/include/lim_api.h
index 149a2c0d71f9..126f2aa1baa8 100644
--- a/core/mac/src/pe/include/lim_api.h
+++ b/core/mac/src/pe/include/lim_api.h
@@ -170,6 +170,13 @@ bool lim_is_assoc_req_for_drop(tpAniSirGlobal mac, uint8_t *rx_pkt_info);
QDF_STATUS pe_roam_synch_callback(tpAniSirGlobal mac_ctx,
struct sSirSmeRoamOffloadSynchInd *roam_sync_ind_ptr,
tpSirBssDescription bss_desc_ptr);
+#else
+static inline QDF_STATUS pe_roam_synch_callback(tpAniSirGlobal mac_ctx,
+ struct sSirSmeRoamOffloadSynchInd *roam_sync_ind_ptr,
+ tpSirBssDescription bss_desc_ptr)
+{
+ return QDF_STATUS_E_NOSUPPORT;
+}
#endif
#define limGetQosMode(psessionEntry, pVal) (*(pVal) = (psessionEntry)->limQosEnabled)
#define limGetWmeMode(psessionEntry, pVal) (*(pVal) = (psessionEntry)->limWmeEnabled)
diff --git a/core/mac/src/pe/include/lim_ft.h b/core/mac/src/pe/include/lim_ft.h
index 2b40efc364bd..01307d77f5a3 100644
--- a/core/mac/src/pe/include/lim_ft.h
+++ b/core/mac/src/pe/include/lim_ft.h
@@ -45,45 +45,91 @@
------------------------------------------------------------------------*/
void lim_ft_open(tpAniSirGlobal pMac, tpPESession psessionEntry);
void lim_ft_cleanup(tpAniSirGlobal pMac, tpPESession psessionEntry);
-void lim_ft_cleanup_pre_auth_info(tpAniSirGlobal pMac, tpPESession psessionEntry);
+#ifdef WLAN_FEATURE_HOST_ROAM
+void lim_ft_cleanup_pre_auth_info(tpAniSirGlobal pMac,
+ tpPESession psessionEntry);
int lim_process_ft_pre_auth_req(tpAniSirGlobal pMac, tpSirMsgQ pMsg);
+void lim_process_ft_preauth_rsp_timeout(tpAniSirGlobal pMac);
+void lim_process_mlm_ft_reassoc_req(tpAniSirGlobal pMac, uint32_t *pMsgBuf,
+ tpPESession psessionEntry);
void lim_perform_ft_pre_auth(tpAniSirGlobal pMac, QDF_STATUS status,
- uint32_t *data, tpPESession psessionEntry);
-void limPerformPostFTPreAuth(tpAniSirGlobal pMac, QDF_STATUS status,
- uint32_t *data, tpPESession psessionEntry);
-void limFTResumeLinkCb(tpAniSirGlobal pMac, QDF_STATUS status, uint32_t *data);
+ uint32_t *data, tpPESession psessionEntry);
void lim_post_ft_pre_auth_rsp(tpAniSirGlobal pMac, tSirRetStatus status,
- uint8_t *auth_rsp, uint16_t auth_rsp_length,
- tpPESession psessionEntry);
+ uint8_t *auth_rsp, uint16_t auth_rsp_length,
+ tpPESession psessionEntry);
void lim_handle_ft_pre_auth_rsp(tpAniSirGlobal pMac, tSirRetStatus status,
- uint8_t *auth_rsp, uint16_t auth_rsp_len,
- tpPESession psessionEntry);
-void lim_process_mlm_reassoc_cnf(tpAniSirGlobal, uint32_t *);
+ uint8_t *auth_rsp, uint16_t auth_rsp_len,
+ tpPESession psessionEntry);
+tSirRetStatus lim_ft_setup_auth_session(tpAniSirGlobal pMac,
+ tpPESession psessionEntry);
+void lim_process_mlm_reassoc_cnf(tpAniSirGlobal mac_ctx, uint32_t *msg);
void lim_process_sta_mlm_add_bss_rsp_ft(tpAniSirGlobal pMac,
tpSirMsgQ limMsgQ, tpPESession psessionEntry);
-void lim_process_mlm_reassoc_req(tpAniSirGlobal, uint32_t *);
-void lim_process_mlm_ft_reassoc_req(tpAniSirGlobal pMac, uint32_t *pMsgBuf,
- tpPESession psessionEntry);
-void lim_process_ft_preauth_rsp_timeout(tpAniSirGlobal pMac);
+void lim_process_mlm_reassoc_req(tpAniSirGlobal mac_ctx, uint32_t *msg);
void lim_preauth_scan_event_handler(tpAniSirGlobal mac_ctx,
enum lim_scan_event_type event,
uint8_t session_id,
uint32_t scan_id);
-tSirRetStatus lim_ft_setup_auth_session(tpAniSirGlobal pMac,
- tpPESession psessionEntry);
+QDF_STATUS lim_send_preauth_scan_offload(tpAniSirGlobal mac_ctx,
+ uint8_t session_id, tSirFTPreAuthReq *ft_preauth_req);
+#else
+static inline void lim_ft_cleanup_pre_auth_info(tpAniSirGlobal pMac,
+ tpPESession psessionEntry)
+{}
+static inline void lim_process_ft_preauth_rsp_timeout(tpAniSirGlobal pMac)
+{}
+static inline void lim_process_mlm_ft_reassoc_req(tpAniSirGlobal pMac,
+ uint32_t *pMsgBuf, tpPESession psessionEntry)
+{}
+static inline void lim_handle_ft_pre_auth_rsp(tpAniSirGlobal pMac,
+ tSirRetStatus status, uint8_t *auth_rsp,
+ uint16_t auth_rsp_len, tpPESession psessionEntry)
+{}
+static inline void lim_process_mlm_reassoc_cnf(tpAniSirGlobal mac_ctx,
+ uint32_t *msg)
+{}
+static inline void lim_process_sta_mlm_add_bss_rsp_ft(tpAniSirGlobal pMac,
+ tpSirMsgQ limMsgQ, tpPESession psessionEntry)
+{}
+static inline void lim_process_mlm_reassoc_req(tpAniSirGlobal mac_ctx,
+ uint32_t *msg)
+{}
+static inline void lim_preauth_scan_event_handler(tpAniSirGlobal mac_ctx,
+ enum lim_scan_event_type event,
+ uint8_t session_id, uint32_t scan_id)
+{}
+static inline int lim_process_ft_pre_auth_req(tpAniSirGlobal pMac,
+ tpSirMsgQ pMsg)
+{
+ return 0;
+}
+#endif
-bool lim_process_ft_update_key(tpAniSirGlobal pMac, uint32_t *pMsgBuf);
-tSirRetStatus lim_process_ft_aggr_qos_req(tpAniSirGlobal pMac, uint32_t *pMsgBuf);
-void lim_process_ft_aggr_qo_s_rsp(tpAniSirGlobal pMac, tpSirMsgQ limMsg);
-void lim_ft_cleanup_all_ft_sessions(tpAniSirGlobal pMac);
+#if defined(WLAN_FEATURE_HOST_ROAM) || defined(WLAN_FEATURE_ROAM_OFFLOAD)
void lim_fill_ft_session(tpAniSirGlobal pMac,
tpSirBssDescription pbssDescription,
tpPESession pftSessionEntry,
tpPESession psessionEntry);
-tSirRetStatus lim_ft_prepare_add_bss_req(tpAniSirGlobal pMac,
- uint8_t updateEntry,
+void lim_ft_prepare_add_bss_req(tpAniSirGlobal pMac, uint8_t updateEntry,
tpPESession pftSessionEntry,
tpSirBssDescription bssDescription);
QDF_STATUS lim_send_preauth_scan_offload(tpAniSirGlobal mac_ctx,
uint8_t session_id, tSirFTPreAuthReq *ft_preauth_req);
+#else
+static inline void lim_fill_ft_session(tpAniSirGlobal pMac,
+ tpSirBssDescription pbssDescription,
+ tpPESession pftSessionEntry,
+ tpPESession psessionEntry)
+{}
+static inline void lim_ft_prepare_add_bss_req(tpAniSirGlobal pMac,
+ uint8_t updateEntry, tpPESession pftSessionEntry,
+ tpSirBssDescription bssDescription)
+{}
+#endif
+
+bool lim_process_ft_update_key(tpAniSirGlobal pMac, uint32_t *pMsgBuf);
+tSirRetStatus lim_process_ft_aggr_qos_req(tpAniSirGlobal pMac,
+ uint32_t *pMsgBuf);
+void lim_process_ft_aggr_qo_s_rsp(tpAniSirGlobal pMac, tpSirMsgQ limMsg);
+void lim_ft_cleanup_all_ft_sessions(tpAniSirGlobal pMac);
#endif /* __LIMFT_H__ */
diff --git a/core/mac/src/pe/lim/lim_assoc_utils.c b/core/mac/src/pe/lim/lim_assoc_utils.c
index 673e5c3d7359..04f13f0cc050 100644
--- a/core/mac/src/pe/lim/lim_assoc_utils.c
+++ b/core/mac/src/pe/lim/lim_assoc_utils.c
@@ -608,7 +608,7 @@ lim_cleanup_rx_path(tpAniSirGlobal pMac, tpDphHashNode pStaDs,
pStaDs->valid = 0;
lim_send_sme_tsm_ie_ind(pMac, psessionEntry, 0, 0, 0);
/* Any roaming related changes should be above this line */
- if (psessionEntry->bRoamSynchInProgress)
+ if (lim_is_roam_synch_in_progress(psessionEntry))
return eSIR_SUCCESS;
pStaDs->mlmStaContext.mlmState = eLIM_MLM_WT_DEL_STA_RSP_STATE;
diff --git a/core/mac/src/pe/lim/lim_assoc_utils.h b/core/mac/src/pe/lim/lim_assoc_utils.h
index 43c5d9018443..9e605f16dfa6 100644
--- a/core/mac/src/pe/lim/lim_assoc_utils.h
+++ b/core/mac/src/pe/lim/lim_assoc_utils.h
@@ -84,8 +84,6 @@ lim_populate_matching_rate_set(tpAniSirGlobal pMac,
uint8_t *pSupportedMCSSet,
tpPESession psessionEntry,
tDot11fIEVHTCaps * pVHTCaps);
-void lim_handle_del_bss_in_re_assoc_context(tpAniSirGlobal pMac,
- tpDphHashNode pStaDs, tpPESession psessionEntry);
#define MCSMAPMASK1x1 0x3
#define MCSMAPMASK2x2 0xC
@@ -93,16 +91,66 @@ void lim_handle_del_bss_in_re_assoc_context(tpAniSirGlobal pMac,
tSirRetStatus lim_add_sta(tpAniSirGlobal, tpDphHashNode, uint8_t, tpPESession);
tSirRetStatus lim_del_bss(tpAniSirGlobal, tpDphHashNode, uint16_t, tpPESession);
tSirRetStatus lim_del_sta(tpAniSirGlobal, tpDphHashNode, bool, tpPESession);
-tSirRetStatus lim_add_ft_sta_self(tpAniSirGlobal pMac, uint16_t assocId,
- tpPESession psessionEntry);
tSirRetStatus lim_add_sta_self(tpAniSirGlobal, uint16_t, uint8_t, tpPESession);
void lim_teardown_infra_bss(tpAniSirGlobal, tpPESession);
+#ifdef WLAN_FEATURE_HOST_ROAM
void lim_restore_pre_reassoc_state(tpAniSirGlobal,
tSirResultCodes, uint16_t, tpPESession);
void lim_post_reassoc_failure(tpAniSirGlobal,
tSirResultCodes, uint16_t, tpPESession);
bool lim_is_reassoc_in_progress(tpAniSirGlobal, tpPESession);
+
+void lim_handle_add_bss_in_re_assoc_context(tpAniSirGlobal pMac,
+ tpDphHashNode pStaDs, tpPESession psessionEntry);
+void lim_handle_del_bss_in_re_assoc_context(tpAniSirGlobal pMac,
+ tpDphHashNode pStaDs, tpPESession psessionEntry);
+void lim_send_retry_reassoc_req_frame(tpAniSirGlobal pMac,
+ tLimMlmReassocReq *pMlmReassocReq, tpPESession psessionEntry);
+tSirRetStatus lim_add_ft_sta_self(tpAniSirGlobal pMac, uint16_t assocId,
+ tpPESession psessionEntry);
+#else
+static inline void lim_restore_pre_reassoc_state(tpAniSirGlobal mac_ctx,
+ tSirResultCodes res_code, uint16_t prot_status,
+ tpPESession pe_session)
+{}
+static inline void lim_post_reassoc_failure(tpAniSirGlobal mac_ctx,
+ tSirResultCodes res_code, uint16_t prot_status,
+ tpPESession pe_session)
+{}
+static inline void lim_handle_add_bss_in_re_assoc_context(tpAniSirGlobal pMac,
+ tpDphHashNode pStaDs, tpPESession psessionEntry)
+{}
+static inline void lim_handle_del_bss_in_re_assoc_context(tpAniSirGlobal pMac,
+ tpDphHashNode pStaDs, tpPESession psessionEntry)
+{}
+static inline void lim_send_retry_reassoc_req_frame(tpAniSirGlobal pMac,
+ tLimMlmReassocReq *pMlmReassocReq, tpPESession psessionEntry)
+{}
+static inline bool lim_is_reassoc_in_progress(tpAniSirGlobal mac_ctx,
+ tpPESession pe_session)
+{
+ return false;
+}
+static inline tSirRetStatus lim_add_ft_sta_self(tpAniSirGlobal pMac,
+ uint16_t assocId, tpPESession psessionEntry)
+{
+ return eSIR_SUCCESS;
+}
+#endif
+
+#ifdef WLAN_FEATURE_ROAM_OFFLOAD
+static inline bool lim_is_roam_synch_in_progress(tpPESession pe_session)
+{
+ return pe_session->bRoamSynchInProgress;
+}
+#else
+static inline bool lim_is_roam_synch_in_progress(tpPESession pe_session)
+{
+ return false;
+}
+#endif
+
void
lim_send_del_sta_cnf(tpAniSirGlobal pMac, struct qdf_mac_addr sta_dsaddr,
uint16_t staDsAssocId, tLimMlmStaContext mlmStaContext,
@@ -150,18 +198,10 @@ tSirRetStatus lim_is_dot11h_supported_channels_valid(tpAniSirGlobal pMac,
tSirRetStatus lim_is_dot11h_power_capabilities_in_range(tpAniSirGlobal pMac,
tSirAssocReq *assoc,
tpPESession);
-
-/* API to re-add the same BSS during re-association */
-void lim_handle_add_bss_in_re_assoc_context(tpAniSirGlobal pMac, tpDphHashNode pStaDs,
- tpPESession psessionEntry);
-
/* API to fill in RX Highest Supported data Rate */
void lim_fill_rx_highest_supported_rate(tpAniSirGlobal pMac,
uint16_t *rxHighestRate,
uint8_t *pSupportedMCSSet);
-void lim_send_retry_reassoc_req_frame(tpAniSirGlobal pMac,
- tLimMlmReassocReq *pMlmReassocReq,
- tpPESession psessionEntry);
#ifdef WLAN_FEATURE_11W
void lim_send_sme_unprotected_mgmt_frame_ind(tpAniSirGlobal pMac, uint8_t frameType,
uint8_t *frame, uint32_t frameLen,
diff --git a/core/mac/src/pe/lim/lim_ft.c b/core/mac/src/pe/lim/lim_ft.c
index f79494777954..01a2afc88750 100644
--- a/core/mac/src/pe/lim/lim_ft.c
+++ b/core/mac/src/pe/lim/lim_ft.c
@@ -119,6 +119,7 @@ void lim_ft_cleanup(tpAniSirGlobal pMac, tpPESession psessionEntry)
qdf_mem_set(&psessionEntry->ftPEContext, sizeof(tftPEContext), 0);
}
+#if defined(WLAN_FEATURE_HOST_ROAM) || defined(WLAN_FEATURE_ROAM_OFFLOAD)
/*------------------------------------------------------------------
*
* Create the new Add Bss Req to the new AP.
@@ -126,10 +127,9 @@ void lim_ft_cleanup(tpAniSirGlobal pMac, tpPESession psessionEntry)
* The newly created ft Session entry is passed to this function
*
*------------------------------------------------------------------*/
-tSirRetStatus lim_ft_prepare_add_bss_req(tpAniSirGlobal pMac,
- uint8_t updateEntry,
- tpPESession pftSessionEntry,
- tpSirBssDescription bssDescription)
+void lim_ft_prepare_add_bss_req(tpAniSirGlobal pMac,
+ uint8_t updateEntry, tpPESession pftSessionEntry,
+ tpSirBssDescription bssDescription)
{
tpAddBssParams pAddBssParams = NULL;
tAddStaParams *sta_ctx;
@@ -139,14 +139,14 @@ tSirRetStatus lim_ft_prepare_add_bss_req(tpAniSirGlobal pMac,
/* Nothing to be done if the session is not in STA mode */
if (!LIM_IS_STA_ROLE(pftSessionEntry)) {
lim_log(pMac, LOGE, FL("psessionEntry is not in STA mode"));
- return eSIR_FAILURE;
+ return;
}
pBeaconStruct = qdf_mem_malloc(sizeof(tSchBeaconStruct));
if (NULL == pBeaconStruct) {
lim_log(pMac, LOGE,
FL("Unable to allocate memory for creating ADD_BSS"));
- return eSIR_MEM_ALLOC_FAILED;
+ return;
}
/* Package SIR_HAL_ADD_BSS_REQ message parameters */
pAddBssParams = qdf_mem_malloc(sizeof(tAddBssParams));
@@ -154,7 +154,7 @@ tSirRetStatus lim_ft_prepare_add_bss_req(tpAniSirGlobal pMac,
qdf_mem_free(pBeaconStruct);
lim_log(pMac, LOGP,
FL("Unable to allocate memory for creating ADD_BSS"));
- return eSIR_MEM_ALLOC_FAILED;
+ return;
}
qdf_mem_set((uint8_t *) pAddBssParams, sizeof(tAddBssParams), 0);
@@ -457,7 +457,7 @@ tSirRetStatus lim_ft_prepare_add_bss_req(tpAniSirGlobal pMac,
pAddBssParams->sessionId = pftSessionEntry->peSessionId;
/* Set a new state for MLME */
- if (!pftSessionEntry->bRoamSynchInProgress) {
+ if (!lim_is_roam_synch_in_progress(pftSessionEntry)) {
pftSessionEntry->limMlmState =
eLIM_MLM_WT_ADD_BSS_RSP_FT_REASSOC_STATE;
MTRACE(mac_trace
@@ -469,12 +469,14 @@ tSirRetStatus lim_ft_prepare_add_bss_req(tpAniSirGlobal pMac,
pftSessionEntry->ftPEContext.pAddBssReq = pAddBssParams;
- lim_log(pMac, LOG1, FL("Saving SIR_HAL_ADD_BSS_REQ for pre-auth ap..."));
+ lim_log(pMac, LOG1, FL("Saving SIR_HAL_ADD_BSS_REQ for pre-auth ap."));
qdf_mem_free(pBeaconStruct);
- return 0;
+ return;
}
+#endif
+#if defined(WLAN_FEATURE_HOST_ROAM) || defined(WLAN_FEATURE_ROAM_OFFLOAD)
/*------------------------------------------------------------------
*
* Setup the new session for the pre-auth AP.
@@ -667,7 +669,7 @@ void lim_fill_ft_session(tpAniSirGlobal pMac,
regMax, localPowerConstraint,
pMac->roam.configParam.nTxPowerCap,
pftSessionEntry->maxTxPower);
- if (!psessionEntry->bRoamSynchInProgress) {
+ if (!lim_is_roam_synch_in_progress(psessionEntry)) {
pftSessionEntry->limPrevSmeState = pftSessionEntry->limSmeState;
pftSessionEntry->limSmeState = eLIM_SME_WT_REASSOC_STATE;
MTRACE(mac_trace(pMac,
@@ -692,6 +694,7 @@ void lim_fill_ft_session(tpAniSirGlobal pMac,
qdf_mem_free(pBeaconStruct);
}
+#endif
/*------------------------------------------------------------------
*
diff --git a/core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c b/core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c
index 707d6e6876b8..03577a99d285 100644
--- a/core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c
+++ b/core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c
@@ -535,16 +535,14 @@ lim_process_assoc_rsp_frame(tpAniSirGlobal mac_ctx,
tSchBeaconStruct *beacon;
#ifdef WLAN_FEATURE_ROAM_OFFLOAD
uint8_t sme_sessionid = 0;
-#endif
tCsrRoamSession *roam_session;
+#endif
/* Initialize status code to success. */
-#ifdef WLAN_FEATURE_ROAM_OFFLOAD
- if (session_entry->bRoamSynchInProgress)
+ if (lim_is_roam_synch_in_progress(session_entry))
hdr = (tpSirMacMgmtHdr) mac_ctx->roam.pReassocResp;
else
-#endif
- hdr = WMA_GET_RX_MAC_HEADER(rx_pkt_info);
+ hdr = WMA_GET_RX_MAC_HEADER(rx_pkt_info);
#ifdef WLAN_FEATURE_ROAM_OFFLOAD
sme_sessionid = session_entry->smeSessionId;
#endif
@@ -587,21 +585,17 @@ lim_process_assoc_rsp_frame(tpAniSirGlobal mac_ctx,
qdf_mem_free(beacon);
return;
}
-#ifdef WLAN_FEATURE_ROAM_OFFLOAD
- if (session_entry->bRoamSynchInProgress) {
+ if (lim_is_roam_synch_in_progress(session_entry)) {
hdr = (tpSirMacMgmtHdr) mac_ctx->roam.pReassocResp;
frame_len = mac_ctx->roam.reassocRespLen - SIR_MAC_HDR_LEN_3A;
} else {
-#endif
- hdr = WMA_GET_RX_MAC_HEADER(rx_pkt_info);
- frame_len = WMA_GET_RX_PAYLOAD_LEN(rx_pkt_info);
-#ifdef WLAN_FEATURE_ROAM_OFFLOAD
-}
-#endif
+ hdr = WMA_GET_RX_MAC_HEADER(rx_pkt_info);
+ frame_len = WMA_GET_RX_PAYLOAD_LEN(rx_pkt_info);
+ }
if (((subtype == LIM_ASSOC) &&
(session_entry->limMlmState != eLIM_MLM_WT_ASSOC_RSP_STATE)) ||
((subtype == LIM_REASSOC) &&
- !session_entry->bRoamSynchInProgress &&
+ !lim_is_roam_synch_in_progress(session_entry) &&
((session_entry->limMlmState != eLIM_MLM_WT_REASSOC_RSP_STATE)
&& (session_entry->limMlmState !=
eLIM_MLM_WT_FT_REASSOC_RSP_STATE)
@@ -667,12 +661,10 @@ lim_process_assoc_rsp_frame(tpAniSirGlobal mac_ctx,
return;
}
/* Get pointer to Re/Association Response frame body */
-#ifdef WLAN_FEATURE_ROAM_OFFLOAD
- if (session_entry->bRoamSynchInProgress)
+ if (lim_is_roam_synch_in_progress(session_entry))
body = mac_ctx->roam.pReassocResp + SIR_MAC_HDR_LEN_3A;
else
-#endif
- body = WMA_GET_RX_MPDU_DATA(rx_pkt_info);
+ body = WMA_GET_RX_MPDU_DATA(rx_pkt_info);
/* parse Re/Association Response frame. */
if (sir_convert_assoc_resp_frame2_struct(mac_ctx, body,
frame_len, assoc_rsp) == eSIR_FAILURE) {
@@ -853,7 +845,7 @@ lim_process_assoc_rsp_frame(tpAniSirGlobal mac_ctx,
if (!((session_entry->bssType == eSIR_BTAMP_STA_MODE) ||
((session_entry->bssType == eSIR_BTAMP_AP_MODE) &&
LIM_IS_BT_AMP_STA_ROLE(session_entry)) ||
- session_entry->bRoamSynchInProgress)) {
+ lim_is_roam_synch_in_progress(session_entry))) {
if (lim_set_link_state
(mac_ctx, eSIR_LINK_POSTASSOC_STATE,
session_entry->bssId,
@@ -909,7 +901,7 @@ lim_process_assoc_rsp_frame(tpAniSirGlobal mac_ctx,
}
if ((session_entry->limMlmState ==
eLIM_MLM_WT_FT_REASSOC_RSP_STATE) ||
- session_entry->bRoamSynchInProgress) {
+ lim_is_roam_synch_in_progress(session_entry)) {
lim_log(mac_ctx, LOG1, FL("Sending self sta"));
lim_update_assoc_sta_datas(mac_ctx, sta_ds, assoc_rsp,
session_entry);
@@ -920,17 +912,14 @@ lim_process_assoc_rsp_frame(tpAniSirGlobal mac_ctx,
session_entry->gLimEdcaParams,
session_entry);
/* Send the active EDCA parameters to HAL */
-#ifdef WLAN_FEATURE_ROAM_OFFLOAD
- if (!session_entry->bRoamSynchInProgress) {
-#endif
- lim_send_edca_params(mac_ctx,
- session_entry->gLimEdcaParamsActive,
- sta_ds->bssId);
- lim_add_ft_sta_self(mac_ctx, (assoc_rsp->aid & 0x3FFF),
- session_entry);
-#ifdef WLAN_FEATURE_ROAM_OFFLOAD
- }
-#endif
+ if (!lim_is_roam_synch_in_progress(session_entry)) {
+ lim_send_edca_params(mac_ctx,
+ session_entry->gLimEdcaParamsActive,
+ sta_ds->bssId);
+ lim_add_ft_sta_self(mac_ctx,
+ (assoc_rsp->aid & 0x3FFF),
+ session_entry);
+ }
qdf_mem_free(beacon);
return;
}
diff --git a/core/mac/src/pe/lim/lim_process_tdls.c b/core/mac/src/pe/lim/lim_process_tdls.c
index f524a28f2b22..5950dd373704 100644
--- a/core/mac/src/pe/lim/lim_process_tdls.c
+++ b/core/mac/src/pe/lim/lim_process_tdls.c
@@ -3257,7 +3257,7 @@ tSirRetStatus lim_delete_tdls_peers(tpAniSirGlobal mac_ctx,
CLEAR_BIT(session_entry->peerAIDBitmap[i], aid);
}
}
- if (session_entry->bRoamSynchInProgress)
+ if (lim_is_roam_synch_in_progress(session_entry))
return eSIR_SUCCESS;
lim_send_sme_tdls_delete_all_peer_ind(mac_ctx, session_entry);
diff --git a/core/mac/src/pe/lim/lim_types.h b/core/mac/src/pe/lim/lim_types.h
index 2bbb79d19221..c2a4bb4a4fb0 100644
--- a/core/mac/src/pe/lim/lim_types.h
+++ b/core/mac/src/pe/lim/lim_types.h
@@ -458,11 +458,20 @@ void lim_send_probe_rsp_mgmt_frame(tpAniSirGlobal, tSirMacAddr, tpAniSSID, short
void lim_send_auth_mgmt_frame(tpAniSirGlobal, tSirMacAuthFrameBody *, tSirMacAddr,
uint8_t, tpPESession, bool wait_for_ack);
void lim_send_assoc_req_mgmt_frame(tpAniSirGlobal, tLimMlmAssocReq *, tpPESession);
+#ifdef WLAN_FEATURE_HOST_ROAM
+void lim_send_reassoc_req_with_ft_ies_mgmt_frame(tpAniSirGlobal pMac,
+ tLimMlmReassocReq *pMlmReassocReq, tpPESession psessionEntry);
void lim_send_reassoc_req_mgmt_frame(tpAniSirGlobal, tLimMlmReassocReq *,
tpPESession);
-void lim_send_reassoc_req_with_ft_ies_mgmt_frame(tpAniSirGlobal pMac,
- tLimMlmReassocReq *pMlmReassocReq,
- tpPESession psessionEntry);
+#else
+static inline void lim_send_reassoc_req_with_ft_ies_mgmt_frame(
+ tpAniSirGlobal pMac, tLimMlmReassocReq *pMlmReassocReq,
+ tpPESession psessionEntry)
+{}
+static inline void lim_send_reassoc_req_mgmt_frame(tpAniSirGlobal mac_ctx,
+ tLimMlmReassocReq *reassoc_req, tpPESession pe_session)
+{}
+#endif
void lim_send_delts_req_action_frame(tpAniSirGlobal pMac, tSirMacAddr peer,
uint8_t wmmTspecPresent,
tSirMacTSInfo * pTsinfo,
diff --git a/core/mac/src/pe/lim/lim_utils.h b/core/mac/src/pe/lim/lim_utils.h
index 1ceeabd0daf4..b96e9b87a049 100644
--- a/core/mac/src/pe/lim/lim_utils.h
+++ b/core/mac/src/pe/lim/lim_utils.h
@@ -585,9 +585,21 @@ uint8_t lim_get_80Mhz_center_channel(uint8_t primary_channel);
void lim_update_obss_scanparams(tpPESession session,
tDot11fIEOBSSScanParameters *scan_params);
void lim_init_obss_params(tpAniSirGlobal mac_ctx, tpPESession session);
+#ifdef WLAN_FEATURE_HOST_ROAM
uint32_t lim_create_timers_host_roam(tpAniSirGlobal mac_ctx);
void lim_delete_timers_host_roam(tpAniSirGlobal mac_ctx);
void lim_deactivate_and_change_timer_host_roam(tpAniSirGlobal mac_ctx,
uint32_t timer_id);
+#else
+static inline uint32_t lim_create_timers_host_roam(tpAniSirGlobal mac_ctx)
+{
+ return 0;
+}
+static inline void lim_delete_timers_host_roam(tpAniSirGlobal mac_ctx)
+{}
+static inline void lim_deactivate_and_change_timer_host_roam(
+ tpAniSirGlobal mac_ctx, uint32_t timer_id)
+{}
+#endif
#endif /* __LIM_UTILS_H */