From 281e7ec8ed2211d42e4dfbcb1352b89a72fa83a8 Mon Sep 17 00:00:00 2001 From: Arif Hussain Date: Mon, 26 Sep 2016 14:46:35 -0700 Subject: [PATCH] qcacld-3.0: Remove gRoamingTime There is a desire to remove unnecessary items from the default version of WCNSS_qcom_cfg.ini that is shipped to customers. Currently the default value within wlan_hdd_cfg.h is: define CFG_ROAMING_TIME_DEFAULT (10) gRoamingTime is set to zero in WCNSS_qcom_cfg.ini to always complete/cancel roaming operation. As part of this WCNSS_qcom_cfg.ini cleanup remove gRoamingTime and related code. Change-Id: I1f7833b2ae4794ceac8d4e3826fa26417b54eae4 CRs-Fixed: 1071268 --- core/hdd/inc/wlan_hdd_cfg.h | 7 -- core/hdd/src/wlan_hdd_cfg.c | 8 --- core/sme/inc/csr_api.h | 2 - core/sme/inc/csr_internal.h | 3 - core/sme/src/csr/csr_api_roam.c | 106 +----------------------------- core/sme/src/csr/csr_inside_api.h | 1 - 6 files changed, 1 insertion(+), 126 deletions(-) diff --git a/core/hdd/inc/wlan_hdd_cfg.h b/core/hdd/inc/wlan_hdd_cfg.h index 146f5955bb..9cfeeb3cf3 100644 --- a/core/hdd/inc/wlan_hdd_cfg.h +++ b/core/hdd/inc/wlan_hdd_cfg.h @@ -396,12 +396,6 @@ typedef enum { #define CFG_BEACON_INTERVAL_MAX WNI_CFG_BEACON_INTERVAL_STAMAX #define CFG_BEACON_INTERVAL_DEFAULT WNI_CFG_BEACON_INTERVAL_STADEF -/* Additional Handoff related Parameters */ -#define CFG_ROAMING_TIME_NAME "gRoamingTime" -#define CFG_ROAMING_TIME_MIN (0) -#define CFG_ROAMING_TIME_MAX (4294967UL) -#define CFG_ROAMING_TIME_DEFAULT (10) - #define CFG_VCC_RSSI_TRIGGER_NAME "gVccRssiTrigger" #define CFG_VCC_RSSI_TRIGGER_MIN (0) #define CFG_VCC_RSSI_TRIGGER_MAX (80) @@ -3587,7 +3581,6 @@ struct hdd_config { int32_t nhi_rssi_scan_rssi_ub; /* Additional Handoff params */ - uint32_t nRoamingTime; uint16_t nVccRssiTrigger; uint32_t nVccUlMacLossThreshold; diff --git a/core/hdd/src/wlan_hdd_cfg.c b/core/hdd/src/wlan_hdd_cfg.c index f04be9d50f..f3519ef35a 100644 --- a/core/hdd/src/wlan_hdd_cfg.c +++ b/core/hdd/src/wlan_hdd_cfg.c @@ -687,13 +687,6 @@ REG_TABLE_ENTRY g_registry_table[] = { CFG_BEACON_INTERVAL_MIN, CFG_BEACON_INTERVAL_MAX), - REG_VARIABLE(CFG_ROAMING_TIME_NAME, WLAN_PARAM_Integer, - struct hdd_config, nRoamingTime, - VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT, - CFG_ROAMING_TIME_DEFAULT, - CFG_ROAMING_TIME_MIN, - CFG_ROAMING_TIME_MAX), - REG_VARIABLE(CFG_VCC_RSSI_TRIGGER_NAME, WLAN_PARAM_Integer, struct hdd_config, nVccRssiTrigger, VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT, @@ -6866,7 +6859,6 @@ QDF_STATUS hdd_set_sme_config(hdd_context_t *pHddCtx) smeConfig->csrConfig.vccRssiThreshold = pConfig->nVccRssiTrigger; smeConfig->csrConfig.vccUlMacLossThreshold = pConfig->nVccUlMacLossThreshold; - smeConfig->csrConfig.nRoamingTime = pConfig->nRoamingTime; smeConfig->csrConfig.nInitialDwellTime = pConfig->nInitialDwellTime; smeConfig->csrConfig.initial_scan_no_dfs_chnl = pConfig->initial_scan_no_dfs_chnl; diff --git a/core/sme/inc/csr_api.h b/core/sme/inc/csr_api.h index 9795904f2b..07e9874784 100644 --- a/core/sme/inc/csr_api.h +++ b/core/sme/inc/csr_api.h @@ -1119,8 +1119,6 @@ typedef struct tagCsrConfigParam { uint32_t scanAgeTimeCNPS; /* scan res aging time threshold when Connect-Power-Save, in sec */ uint32_t scanAgeTimeCPS; - /* In sec, CSR'll try this long before gives up. 0 means no roaming */ - uint32_t nRoamingTime; /* to set the RSSI difference for each category */ uint8_t bCatRssiOffset; /* to set MCC Enable/Disable mode */ diff --git a/core/sme/inc/csr_internal.h b/core/sme/inc/csr_internal.h index 23c7a05c60..dd9dffafea 100644 --- a/core/sme/inc/csr_internal.h +++ b/core/sme/inc/csr_internal.h @@ -525,8 +525,6 @@ typedef struct tagCsrConfig { uint32_t BssPreferValue[CSR_NUM_RSSI_CAT]; int RSSICat[CSR_NUM_RSSI_CAT]; uint8_t bCatRssiOffset; /* to set RSSI difference for each category */ - /* In secs, CSR'll try this long before gives up, 0 means no roaming */ - uint32_t nRoamingTime; /* * Whether to limit the channels to the ones set in Csr11dInfo. * If true, the opertaional channels are limited to the default channel @@ -948,7 +946,6 @@ typedef struct tagCsrRoamSession { uint8_t *pAddIEScan; uint32_t nAddIEAssocLength; /* the byte count for pAddIeAssocIE */ uint8_t *pAddIEAssoc; - uint32_t roamingStartTime; /* in units of 10ms */ tCsrTimerInfo roamingTimerInfo; eCsrRoamingReason roamingReason; bool fCancelRoaming; diff --git a/core/sme/src/csr/csr_api_roam.c b/core/sme/src/csr/csr_api_roam.c index bb63955efb..58d0c0812b 100644 --- a/core/sme/src/csr/csr_api_roam.c +++ b/core/sme/src/csr/csr_api_roam.c @@ -1372,7 +1372,6 @@ static void init_config_param(tpAniSirGlobal pMac) } csr_assign_rssi_for_category(pMac, CSR_BEST_RSSI_VALUE, CSR_DEFAULT_RSSI_DB_GAP); - pMac->roam.configParam.nRoamingTime = CSR_DEFAULT_ROAMING_TIME; pMac->roam.configParam.fSupplicantCountryCodeHasPriority = false; pMac->roam.configParam.nActiveMaxChnTime = CSR_ACTIVE_MAX_CHANNEL_TIME; pMac->roam.configParam.nActiveMinChnTime = CSR_ACTIVE_MIN_CHANNEL_TIME; @@ -2265,7 +2264,6 @@ QDF_STATUS csr_change_default_config_param(tpAniSirGlobal pMac, csr_assign_rssi_for_category(pMac, pMac->first_scan_bucket_threshold, pParam->bCatRssiOffset); - pMac->roam.configParam.nRoamingTime = pParam->nRoamingTime; pMac->roam.configParam.fSupplicantCountryCodeHasPriority = pParam->fSupplicantCountryCodeHasPriority; pMac->roam.configParam.vccRssiThreshold = @@ -2576,7 +2574,6 @@ QDF_STATUS csr_get_config_param(tpAniSirGlobal pMac, tCsrConfigParam *pParam) pParam->scanAgeTimeCNPS = cfg_params->scanAgeTimeCNPS; pParam->scanAgeTimeCPS = cfg_params->scanAgeTimeCPS; pParam->bCatRssiOffset = cfg_params->bCatRssiOffset; - pParam->nRoamingTime = cfg_params->nRoamingTime; pParam->fSupplicantCountryCodeHasPriority = cfg_params->fSupplicantCountryCodeHasPriority; pParam->vccRssiThreshold = cfg_params->vccRssiThreshold; @@ -11393,10 +11390,6 @@ bool csr_roam_complete_roaming(tpAniSirGlobal pMac, uint32_t sessionId, bool fForce, eCsrRoamResult roamResult) { bool fCompleted = true; - uint32_t roamTime = - (uint32_t) (pMac->roam.configParam.nRoamingTime * - QDF_TICKS_PER_SECOND); - uint32_t curTime = (uint32_t) qdf_mc_timer_get_system_ticks(); tCsrRoamSession *pSession = CSR_GET_SESSION(pMac, sessionId); if (!pSession) { sms_log(pMac, LOGE, FL(" session %d not found "), sessionId); @@ -11404,7 +11397,6 @@ bool csr_roam_complete_roaming(tpAniSirGlobal pMac, uint32_t sessionId, } /* Check whether time is up */ if (pSession->fCancelRoaming || fForce || - ((curTime - pSession->roamingStartTime) > roamTime) || eCsrReassocRoaming == pSession->roamingReason || eCsrDynamicRoaming == pSession->roamingReason) { sms_log(pMac, LOGW, FL(" indicates roaming completion")); @@ -11682,7 +11674,6 @@ QDF_STATUS csr_roam_lost_link(tpAniSirGlobal pMac, uint32_t sessionId, tSirSmeDeauthInd *pDeauthIndMsg = NULL; tSirSmeDisassocInd *pDisassocIndMsg = NULL; eCsrRoamResult result = eCSR_ROAM_RESULT_LOSTLINK; - tCsrRoamInfo *pRoamInfo = NULL; tCsrRoamInfo roamInfo; bool fToRoam; tCsrRoamSession *pSession = CSR_GET_SESSION(pMac, sessionId); @@ -11774,50 +11765,7 @@ QDF_STATUS csr_roam_lost_link(tpAniSirGlobal pMac, uint32_t sessionId, (eWNI_SME_DEAUTH_IND == type) ? eCsrLostlinkRoamingDeauth : eCsrLostlinkRoamingDisassoc); - if (pMac->roam.configParam.nRoamingTime) { - status = csr_roam_start_roaming(pMac, sessionId, - (eWNI_SME_DEAUTH_IND == type) ? - eCsrLostlinkRoamingDeauth : - eCsrLostlinkRoamingDisassoc); - if (QDF_IS_STATUS_SUCCESS(status)) { - qdf_mem_set(&roamInfo, sizeof(tCsrRoamInfo), 0); - /* For IBSS, we need to give some more info to HDD */ - if (csr_is_bss_type_ibss - (pSession->connectedProfile.BSSType)) { - roamInfo.u.pConnectedProfile = - &pSession->connectedProfile; - roamInfo.statusCode = - (tSirResultCodes) pSession-> - roamingStatusCode; - roamInfo.reasonCode = - pSession->joinFailStatusCode. - reasonCode; - } else { - roamInfo.reasonCode = - eCsrRoamReasonSmeIssuedForLostLink; - } - pRoamInfo = &roamInfo; - pSession->roamingReason = - (eWNI_SME_DEAUTH_IND == - type) ? eCsrLostlinkRoamingDeauth : - eCsrLostlinkRoamingDisassoc; - pSession->roamingStartTime = - (uint32_t) qdf_mc_timer_get_system_ticks(); - csr_roam_call_callback(pMac, sessionId, pRoamInfo, - 0, eCSR_ROAM_ROAMING_START, - eCSR_ROAM_RESULT_LOSTLINK); - } else { - sms_log(pMac, LOGW, - " %s Fail to start roaming, status = %d", - __func__, status); - fToRoam = false; - } - } else { - /* We are told not to roam, indicate lostlink */ - fToRoam = false; - } - } - if (!fToRoam) { + /* Tell HDD about the lost link */ if (!CSR_IS_INFRA_AP(&pSession->connectedProfile)) { /* Don't call csr_roam_call_callback for GO/SoftAp case as this indication @@ -11833,58 +11781,6 @@ QDF_STATUS csr_roam_lost_link(tpAniSirGlobal pMac, uint32_t sessionId, return status; } -QDF_STATUS csr_roam_lost_link_afterhandoff_failure(tpAniSirGlobal pMac, - uint32_t sessionId) -{ - QDF_STATUS status = QDF_STATUS_SUCCESS; - tListElem *pEntry = NULL; - tSmeCmd *pCommand = NULL; - tCsrRoamSession *pSession = CSR_GET_SESSION(pMac, sessionId); - - if (!pSession) { - sms_log(pMac, LOGE, FL(" session %d not found "), sessionId); - return QDF_STATUS_E_FAILURE; - } - - pSession->fCancelRoaming = false; - /* Only remove the connected BSS in infrastructure mode */ - csr_roam_remove_connected_bss_from_scan_cache(pMac, - &pSession->connectedProfile); - if (pMac->roam.configParam.nRoamingTime) { - status = csr_roam_start_roaming(pMac, sessionId, - pSession->roamingReason); - if (QDF_IS_STATUS_SUCCESS(status)) { - /* - * before starting the lost link logic release - * the roam command for handoff - */ - pEntry = - csr_ll_peek_head(&pMac->sme.smeCmdActiveList, - LL_ACCESS_LOCK); - if (pEntry) { - pCommand = GET_BASE_ADDR(pEntry, tSmeCmd, Link); - } - if (pCommand) { - if ((eSmeCommandRoam == pCommand->command) && - (eCsrSmeIssuedAssocToSimilarAP == - pCommand->u.roamCmd.roamReason)) { - if (csr_ll_remove_entry - (&pMac->sme.smeCmdActiveList, - pEntry, LL_ACCESS_LOCK)) { - csr_release_command_roam(pMac, - pCommand); - } - } - } - sms_log(pMac, LOGW, "Lost link roaming started ..."); - } - } else { - /* We are told not to roam, indicate lostlink */ - status = QDF_STATUS_E_FAILURE; - } - - return status; -} void csr_roam_wm_status_change_complete(tpAniSirGlobal pMac) { diff --git a/core/sme/src/csr/csr_inside_api.h b/core/sme/src/csr/csr_inside_api.h index 0593c7c832..b8ee71bc58 100644 --- a/core/sme/src/csr/csr_inside_api.h +++ b/core/sme/src/csr/csr_inside_api.h @@ -90,7 +90,6 @@ #define CSR_BSS_CAP_VALUE_WMM 1 #define CSR_BSS_CAP_VALUE_UAPSD 1 #define CSR_BSS_CAP_VALUE_5GHZ 2 -#define CSR_DEFAULT_ROAMING_TIME 10 /* 10 seconds */ #define CSR_ROAMING_DFS_CHANNEL_DISABLED (0) #define CSR_ROAMING_DFS_CHANNEL_ENABLED_NORMAL (1)