diff options
| author | Kiran Kumar Lokere <klokere@qca.qualcomm.com> | 2014-01-12 17:10:31 -0800 |
|---|---|---|
| committer | Prakash Dhavali <pdhavali@qca.qualcomm.com> | 2014-01-24 19:21:47 -0800 |
| commit | ba634cd4657ae88d8ba77d309673c9145e9fe57e (patch) | |
| tree | accb43efc9597a244212ccc2c76497f1bd48bc33 | |
| parent | 70fc54041d64e09f7f7dc2ca6e878ae71bda517e (diff) | |
Fix the CAC timeout value for ETSI reg domain
Fix the CAC timeout value for ETSI domain wether channels.
Change-Id: I07529f2b8c463bb7e55c266d6a2117f8fcacb87c
CRs-Fixed: 600104
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_cfg80211.c | 2 | ||||
| -rw-r--r-- | CORE/SAP/src/sapFsm.c | 12 | ||||
| -rw-r--r-- | CORE/SAP/src/sapInternal.h | 4 |
3 files changed, 17 insertions, 1 deletions
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c index acdfd9a8ceaf..8facceb8c21a 100644 --- a/CORE/HDD/src/wlan_hdd_cfg80211.c +++ b/CORE/HDD/src/wlan_hdd_cfg80211.c @@ -1880,6 +1880,8 @@ static int wlan_hdd_cfg80211_start_bss(hdd_adapter_t *pHostapdAdapter, } else { + pConfig->countryCode[0] = pHddCtx->reg.alpha2[0]; + pConfig->countryCode[1] = pHddCtx->reg.alpha2[1]; pConfig->ieee80211d = 0; } /* diff --git a/CORE/SAP/src/sapFsm.c b/CORE/SAP/src/sapFsm.c index 7664e054c79e..665d791b9fd2 100644 --- a/CORE/SAP/src/sapFsm.c +++ b/CORE/SAP/src/sapFsm.c @@ -1849,6 +1849,8 @@ void sapDfsCacTimerCallback(void *data) int sapStartDfsCacTimer(ptSapContext sapContext) { VOS_STATUS status; + v_U32_t cacTimeOut; + v_REGDOMAIN_t regDomain; if (sapContext == NULL) { return 0; @@ -1861,12 +1863,20 @@ int sapStartDfsCacTimer(ptSapContext sapContext) */ return 2; } + cacTimeOut = DEFAULT_CAC_TIMEOUT; + vos_nv_getRegDomainFromCountryCode(®Domain, + sapContext->csrRoamProfile.countryCode, COUNTRY_QUERY); + if ((regDomain == REGDOMAIN_ETSI) && + (IS_ETSI_WEATHER_CH(sapContext->SapDfsInfo.target_channel))) + { + cacTimeOut = ETSI_WEATHER_CH_CAC_TIMEOUT; + } vos_timer_init(&sapContext->SapDfsInfo.sap_dfs_cac_timer, VOS_TIMER_TYPE_SW, sapDfsCacTimerCallback, (v_PVOID_t)sapContext); /*Start the CAC timer for 60 Seconds*/ - status = vos_timer_start(&sapContext->SapDfsInfo.sap_dfs_cac_timer, 60000); + status = vos_timer_start(&sapContext->SapDfsInfo.sap_dfs_cac_timer, cacTimeOut); if (status == VOS_STATUS_SUCCESS) { sapContext->SapDfsInfo.is_dfs_cac_timer_running = VOS_TRUE; diff --git a/CORE/SAP/src/sapInternal.h b/CORE/SAP/src/sapInternal.h index 248614ac45b0..818eb03dd07e 100644 --- a/CORE/SAP/src/sapInternal.h +++ b/CORE/SAP/src/sapInternal.h @@ -99,6 +99,10 @@ when who what, where, why //MAC Address length #define ANI_EAPOL_KEY_RSN_NONCE_SIZE 32 +#define IS_ETSI_WEATHER_CH(_ch) ((_ch >= 120) && (_ch <= 130)) +#define DEFAULT_CAC_TIMEOUT (60 * 1000) //msecs - 1 min +#define ETSI_WEATHER_CH_CAC_TIMEOUT (10 * 60 * 1000) //msecs - 10 min + extern sRegulatoryChannel *regChannels; extern const tRfChannelProps rfChannels[NUM_RF_CHANNELS]; |
