diff options
| -rw-r--r-- | CORE/HDD/inc/wlan_hdd_main.h | 2 | ||||
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_cfg80211.c | 5 | ||||
| -rw-r--r-- | CORE/MAC/inc/sirApi.h | 3 | ||||
| -rw-r--r-- | CORE/SERVICES/WMA/wma.c | 8 | ||||
| -rw-r--r-- | CORE/SERVICES/WMA/wma.h | 1 |
5 files changed, 12 insertions, 7 deletions
diff --git a/CORE/HDD/inc/wlan_hdd_main.h b/CORE/HDD/inc/wlan_hdd_main.h index 94763529387e..42514b85fe79 100644 --- a/CORE/HDD/inc/wlan_hdd_main.h +++ b/CORE/HDD/inc/wlan_hdd_main.h @@ -109,7 +109,7 @@ This value should be larger than the timeout used by WDI to wait for a response from WCNSS */ #define WLAN_WAIT_TIME_SESSIONOPENCLOSE 15000 -#define WLAN_WAIT_TIME_ABORTSCAN 2000 +#define WLAN_WAIT_TIME_ABORTSCAN (SIR_HW_DEF_SCAN_MAX_DURATION + 1000) #define WLAN_WAIT_TIME_EXTSCAN 1000 #define WLAN_WAIT_TIME_LL_STATS 5000 diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c index 23e45c2ccbd2..6b331285383e 100644 --- a/CORE/HDD/src/wlan_hdd_cfg80211.c +++ b/CORE/HDD/src/wlan_hdd_cfg80211.c @@ -9582,10 +9582,13 @@ static int wlan_hdd_cfg80211_stop_ap (struct wiphy *wiphy, staAdapter = pAdapterNode->pAdapter; if (WLAN_HDD_INFRA_STATION == staAdapter->device_mode || - (WLAN_HDD_P2P_CLIENT == staAdapter->device_mode)) { + (WLAN_HDD_P2P_CLIENT == staAdapter->device_mode) || + (WLAN_HDD_P2P_GO == staAdapter->device_mode)) { pScanInfo = &staAdapter->scan_info; if (pScanInfo && pScanInfo->mScanPending) { + hddLog(LOG1, FL("Aborting pending scan for device mode:%d"), + staAdapter->device_mode); INIT_COMPLETION(pScanInfo->abortscan_event_var); hdd_abort_mac_scan(staAdapter->pHddCtx, staAdapter->sessionId, eCSR_SCAN_ABORT_DEFAULT); diff --git a/CORE/MAC/inc/sirApi.h b/CORE/MAC/inc/sirApi.h index ddff8936fc1d..6ebb733baa0f 100644 --- a/CORE/MAC/inc/sirApi.h +++ b/CORE/MAC/inc/sirApi.h @@ -60,6 +60,9 @@ #define P2P_SEARCH_DWELL_TIME_INCREASE 20 #define P2P_SOCIAL_CHANNELS 3 +// Maximum scan duration before timeout +#define SIR_HW_DEF_SCAN_MAX_DURATION 30000 /* 30 secs */ + /* Max number of channels are 165, but to access 165th element of array, *array of 166 is required. */ diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c index 5db0889d16d8..0b2bc8a8d0b7 100644 --- a/CORE/SERVICES/WMA/wma.c +++ b/CORE/SERVICES/WMA/wma.c @@ -7484,7 +7484,7 @@ VOS_STATUS wma_get_buf_start_scan_cmd(tp_wma_handle wma_handle, cmd->idle_time = WMA_SCAN_IDLE_TIME_DEFAULT; /* Large timeout value for full scan cycle, 30 seconds */ - cmd->max_scan_time = WMA_HW_DEF_SCAN_MAX_DURATION; + cmd->max_scan_time = SIR_HW_DEF_SCAN_MAX_DURATION; /* do not add OFDM rates in 11B mode */ if (scan_req->dot11mode != WNI_CFG_DOT11_MODE_11B) @@ -7930,7 +7930,7 @@ VOS_STATUS wma_start_scan(tp_wma_handle wma_handle, if (msg_type == WDA_START_SCAN_OFFLOAD_REQ) { /* Start the timer for scan completion */ vos_status = vos_timer_start(&wma_handle->wma_scan_comp_timer, - WMA_HW_DEF_SCAN_MAX_DURATION); + SIR_HW_DEF_SCAN_MAX_DURATION); if (vos_status != VOS_STATUS_SUCCESS ) { WMA_LOGE("Failed to start the scan completion timer"); vos_status = VOS_STATUS_E_FAILURE; @@ -9123,7 +9123,7 @@ v_VOID_t wma_roam_scan_fill_scan_params(tp_wma_handle wma_handle, VOS_MAX(scan_params->dwell_time_active / roam_req->nProbes, 1) : 0; scan_params->probe_spacing_time = 0; scan_params->probe_delay = 0; - scan_params->max_scan_time = WMA_HW_DEF_SCAN_MAX_DURATION; /* 30 seconds for full scan cycle */ + scan_params->max_scan_time = SIR_HW_DEF_SCAN_MAX_DURATION; /* 30 seconds for full scan cycle */ scan_params->idle_time = scan_params->min_rest_time; scan_params->n_probes = roam_req->nProbes; if (roam_req->allowDFSChannelRoam == SIR_ROAMING_DFS_CHANNEL_DISABLED) { @@ -9155,7 +9155,7 @@ v_VOID_t wma_roam_scan_fill_scan_params(tp_wma_handle wma_handle, scan_params->repeat_probe_time = 0; scan_params->probe_spacing_time = 0; scan_params->probe_delay = 0; - scan_params->max_scan_time = WMA_HW_DEF_SCAN_MAX_DURATION; + scan_params->max_scan_time = SIR_HW_DEF_SCAN_MAX_DURATION; scan_params->idle_time = scan_params->min_rest_time; scan_params->burst_duration = 0; scan_params->n_probes = 0; diff --git a/CORE/SERVICES/WMA/wma.h b/CORE/SERVICES/WMA/wma.h index 1ec3d402d5ec..8eca27dfe391 100644 --- a/CORE/SERVICES/WMA/wma.h +++ b/CORE/SERVICES/WMA/wma.h @@ -142,7 +142,6 @@ #define WMA_HOST_ROAM_SCAN_REQID_PREFIX 0xA800 /* Prefix used by scan requestor id on host */ #define WMA_HOST_SCAN_REQUESTOR_ID_PREFIX 0xA000 -#define WMA_HW_DEF_SCAN_MAX_DURATION 30000 /* 30 secs */ /* Max offchannel duration */ #define WMA_BURST_SCAN_MAX_NUM_OFFCHANNELS (3) |
