qcacld-3.0: Fix connection latency situation in driver

In 11D scan procedure if WMI_11D_NEW_COUNTRY_EVENTID event is
received, host processes 11d new country code event.
Host driver as a response sends WMI_SCAN_CHAN_LIST_CMDID
new channel list cmd to firmware.

As a result the ongoing scan procedure is aborted by firmware,
and if the scan was a first scan for connection, then it would
lead to connection latency as the supplicant then have to
scan again.

Fix is to check if any scan is in progress, then delay
WMI_SCAN_CHAN_LIST_CMDID channel list command to FW till
the current scan is complete.

Change-Id: I4e747bb747c32430b5d8024823aa0df4928a8c71
CRs-Fixed: 2569741
此提交包含在:
Pankaj Singh
2019-12-13 13:29:11 +05:30
提交者 nshrivas
父節點 5ae3b1b6b9
當前提交 f84a5dd718
共有 5 個檔案被更改,包括 93 行新增0 行删除

查看文件

@@ -274,8 +274,32 @@
0, \
"Ignore Regulatory offloads Indication from FW")
/*
* <ini>
* enable_pending_list_req - Sets Pending channel List Req.
* @Min: 0
* @Max: 1
* @Default: 0
*
* This option enables/disables SCAN_CHAN_LIST_CMDID channel list command to FW
* till the current scan is complete.
*
* Related: None
*
* Supported Feature: STA
*
* Usage: External
*
* </ini>
*/
#define CFG_ENABLE_PENDING_CHAN_LIST_REQ CFG_INI_BOOL( \
"enable_pending_list_req", \
0, \
"Enable Pending list req")
#define CFG_REG_ALL \
CFG(CFG_SELF_GEN_FRM_PWR) \
CFG(CFG_ENABLE_PENDING_CHAN_LIST_REQ) \
CFG(CFG_ENABLE_11D_IN_WORLD_MODE) \
CFG(CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE) \
CFG(CFG_RESTART_BEACONING_ON_CH_AVOID) \