mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-11-09 04:12:08 -05:00
qcacld-3.0: Send roam preauth retry_count and no_ack_timeout ini to FW
Create and send user configurable ini for max number of roam preauth retries and roam preauth no-ack timeout to the firmware. Change-Id: I66808b33f421f56cd7c007cdde1db19c8e7ca5f9 CRs-Fixed: 2279049
This commit is contained in:
parent
56b84da35c
commit
5ba8da3645
6 changed files with 80 additions and 1 deletions
|
|
@ -901,6 +901,10 @@ static void mlme_init_lfr_cfg(struct wlan_objmgr_psoc *psoc,
|
|||
cfg_get(psoc, CFG_LFR_5G_MAX_RSSI_PENALIZE);
|
||||
lfr->max_num_pre_auth = (uint32_t)
|
||||
cfg_default(CFG_LFR_MAX_NUM_PRE_AUTH);
|
||||
lfr->roam_preauth_no_ack_timeout =
|
||||
cfg_get(psoc, CFG_LFR3_ROAM_PREAUTH_NO_ACK_TIMEOUT);
|
||||
lfr->roam_preauth_retry_count =
|
||||
cfg_get(psoc, CFG_LFR3_ROAM_PREAUTH_RETRY_COUNT);
|
||||
}
|
||||
|
||||
static uint32_t
|
||||
|
|
|
|||
|
|
@ -1086,6 +1086,61 @@
|
|||
CFG_VALUE_OR_DEFAULT, \
|
||||
"")
|
||||
|
||||
/*
|
||||
* roam_preauth_retry_count
|
||||
*
|
||||
* @Min: 1
|
||||
* @Max: 10
|
||||
* @Default: 5
|
||||
*
|
||||
* The maximum number of software retries for preauth or
|
||||
* reassoc made before picking up the next candidate for
|
||||
* connection during roaming.
|
||||
*
|
||||
* Related: N/A
|
||||
*
|
||||
* Supported Features: Roaming
|
||||
*
|
||||
* Usage: Internal/External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_LFR3_ROAM_PREAUTH_RETRY_COUNT CFG_INI_INT( \
|
||||
"roam_preauth_retry_count", \
|
||||
1, \
|
||||
10, \
|
||||
5, \
|
||||
CFG_VALUE_OR_DEFAULT, \
|
||||
"The maximum number of software retries for preauth")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* roam_preauth_no_ack_timeout
|
||||
*
|
||||
* @Min: 5
|
||||
* @Max: 50
|
||||
* @Default: 5
|
||||
*
|
||||
* Time to wait (in ms) after sending an preauth or reassoc
|
||||
* request which didn’t have an ack, before considering
|
||||
* it as a failure and making another software retry.
|
||||
*
|
||||
* Related: N/A
|
||||
*
|
||||
* Supported Features: Roaming
|
||||
*
|
||||
* Usage: Internal/External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_LFR3_ROAM_PREAUTH_NO_ACK_TIMEOUT CFG_INI_INT( \
|
||||
"roam_preauth_no_ack_timeout", \
|
||||
5, \
|
||||
50, \
|
||||
5, \
|
||||
CFG_VALUE_OR_DEFAULT, \
|
||||
"Time to wait after sending an preauth or reassoc")
|
||||
|
||||
#define CFG_LFR_ALL \
|
||||
CFG(CFG_LFR_MAWC_ROAM_ENABLED) \
|
||||
CFG(CFG_LFR_MAWC_ROAM_TRAFFIC_THRESHOLD) \
|
||||
|
|
@ -1125,6 +1180,8 @@
|
|||
CFG(CFG_LFR_5G_RSSI_PENALIZE_THRESHOLD) \
|
||||
CFG(CFG_LFR_5G_RSSI_PENALIZE_FACTOR) \
|
||||
CFG(CFG_LFR_5G_MAX_RSSI_PENALIZE) \
|
||||
CFG(CFG_LFR_MAX_NUM_PRE_AUTH)
|
||||
CFG(CFG_LFR_MAX_NUM_PRE_AUTH) \
|
||||
CFG(CFG_LFR3_ROAM_PREAUTH_RETRY_COUNT) \
|
||||
CFG(CFG_LFR3_ROAM_PREAUTH_NO_ACK_TIMEOUT)
|
||||
|
||||
#endif /* CFG_MLME_LFR_H__ */
|
||||
|
|
|
|||
|
|
@ -801,6 +801,8 @@ struct wlan_mlme_sta_cfg {
|
|||
* @rssi_penalize_factor_5g: Factor by which 5GHz RSSI is penalizeed
|
||||
* @max_rssi_penalize_5g: Max penalty that can be applied to 5G RSSI
|
||||
* @max_num_pre_auth: Configure max number of pre-auth
|
||||
* @roam_preauth_retry_count: Configure the max number of preauth retry
|
||||
* @roam_preauth_no_ack_timeout: Configure the no ack timeout period
|
||||
*/
|
||||
struct wlan_mlme_lfr_cfg {
|
||||
bool mawc_roam_enabled;
|
||||
|
|
@ -842,6 +844,8 @@ struct wlan_mlme_lfr_cfg {
|
|||
uint32_t rssi_penalize_factor_5g;
|
||||
uint32_t max_rssi_penalize_5g;
|
||||
uint32_t max_num_pre_auth;
|
||||
uint32_t roam_preauth_retry_count;
|
||||
uint32_t roam_preauth_no_ack_timeout;
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -2796,6 +2796,8 @@ typedef struct sSirRoamOffloadScanReq {
|
|||
uint32_t btm_sticky_time;
|
||||
struct wmi_11k_offload_params offload_11k_params;
|
||||
uint32_t ho_delay_for_rx;
|
||||
uint32_t roam_preauth_retry_count;
|
||||
uint32_t roam_preauth_no_ack_timeout;
|
||||
uint32_t min_delay_btw_roam_scans;
|
||||
uint32_t roam_trigger_reason_bitmask;
|
||||
bool roam_force_rssi_trigger;
|
||||
|
|
|
|||
|
|
@ -18214,6 +18214,10 @@ csr_update_roam_scan_offload_request(tpAniSirGlobal mac_ctx,
|
|||
req_buf->RoamRssiCatGap = mac_ctx->roam.configParam.bCatRssiOffset;
|
||||
req_buf->Select5GHzMargin = mac_ctx->mlme_cfg->gen.select_5ghz_margin;
|
||||
req_buf->ho_delay_for_rx = mac_ctx->roam.configParam.ho_delay_for_rx;
|
||||
req_buf->roam_preauth_retry_count =
|
||||
mac_ctx->mlme_cfg->lfr.roam_preauth_retry_count;
|
||||
req_buf->roam_preauth_no_ack_timeout =
|
||||
mac_ctx->mlme_cfg->lfr.roam_preauth_no_ack_timeout;
|
||||
req_buf->min_delay_btw_roam_scans =
|
||||
mac_ctx->roam.configParam.min_delay_btw_roam_scans;
|
||||
req_buf->roam_trigger_reason_bitmask =
|
||||
|
|
|
|||
|
|
@ -331,6 +331,10 @@ QDF_STATUS wma_roam_scan_offload_mode(tp_wma_handle wma_handle,
|
|||
params->roam_offload_enabled = roam_req->RoamOffloadEnabled;
|
||||
params->roam_offload_params.ho_delay_for_rx =
|
||||
roam_req->ho_delay_for_rx;
|
||||
params->roam_offload_params.roam_preauth_retry_count =
|
||||
roam_req->roam_preauth_retry_count;
|
||||
params->roam_offload_params.roam_preauth_no_ack_timeout =
|
||||
roam_req->roam_preauth_no_ack_timeout;
|
||||
params->prefer_5ghz = roam_req->Prefer5GHz;
|
||||
params->roam_rssi_cat_gap = roam_req->RoamRssiCatGap;
|
||||
params->select_5ghz_margin = roam_req->Select5GHzMargin;
|
||||
|
|
@ -375,6 +379,10 @@ QDF_STATUS wma_roam_scan_offload_mode(tp_wma_handle wma_handle,
|
|||
params->min_delay_btw_roam_scans,
|
||||
params->roam_trigger_reason_bitmask);
|
||||
|
||||
WMA_LOGD(FL("roam_preauth_retry_count: %d, roam_preauth_no_ack_timeout: %d"),
|
||||
params->roam_offload_params.roam_preauth_retry_count,
|
||||
params->roam_offload_params.roam_preauth_no_ack_timeout);
|
||||
|
||||
status = wmi_unified_roam_scan_offload_mode_cmd(wma_handle->wmi_handle,
|
||||
scan_cmd_fp, params);
|
||||
qdf_mem_free(params);
|
||||
|
|
|
|||
Loading…
Reference in a new issue