qcacld-3.0: Add 3 ini for data rssi check when roaming

3 ini:
roam_data_rssi_threshold_triggers
roam_data_rssi_threshold
rx_data_inactivity_time
If there's rx activity during latest rx_data_inactivity_time
and avg of data_rssi is better than roam_data_rssi_threshold, then
suppress roaming triggered by roam_data_rssi_threshold_triggers: low
RSSI or bg scan.

Change-Id: I5b41c4119e61392b50e52ab8ccb8650e5758f3b3
CRs-Fixed: 2768053
此提交包含在:
Jianmin Zhu
2020-09-03 00:20:12 +08:00
提交者 snandini
父節點 233ac1b475
當前提交 e7c9718446
共有 11 個檔案被更改,包括 204 行新增6 行删除

查看文件

@@ -500,6 +500,93 @@
CFG_VALUE_OR_DEFAULT, \
"RSSI threshold offset for 2G to 5G roam")
/*
* <ini>
* roam_data_rssi_threshold_triggers - triggers of data rssi threshold for roam
* @Min: 0
* @Max: 0xffff
* @Default: 0
*
* If the DUT is connected to an AP with weak signal, during latest
* rx_data_inactivity_time, if there is no activity or avg of data_rssi is
* better than roam_data_rssi_threshold(-70dbM), then suppress roaming
* triggered by roam_data_rssi_threshold_triggers: low RSSI or bg scan.
* Triggers bitmap definition:
* ROAM_DATA_RSSI_FLAG_LOW_RSSI 1<<0
* ROAM_DATA_RSSI_FLAG_BACKGROUND 1<<1
*
* Related: None
*
* Supported Feature: Roaming
*
* Usage: External
*
* </ini>
*/
#define CFG_ROAM_DATA_RSSI_THRESHOLD_TRIGGERS CFG_INI_UINT( \
"roam_data_rssi_threshold_triggers", \
0, \
0xffff, \
0x3, \
CFG_VALUE_OR_DEFAULT, \
"Triggers of DATA RSSI threshold for roam")
/*
* <ini>
* roam_data_rssi_threshold - Data RSSI threshold for background roam
* @Min: -96
* @Max: 0
* @Default: -70
*
* If the DUT is connected to an AP with weak signal, during latest
* rx_data_inactivity_time, if there is no activity or avg of data_rssi is
* better than roam_data_rssi_threshold(-70dbM), then suppress roaming
* triggered by roam_data_rssi_threshold_triggers: low RSSI or bg scan.
*
* Related: None
*
* Supported Feature: Roaming
*
* Usage: External
*
* </ini>
*/
#define CFG_ROAM_DATA_RSSI_THRESHOLD CFG_INI_INT( \
"roam_data_rssi_threshold", \
-96, \
0, \
-70, \
CFG_VALUE_OR_DEFAULT, \
"DATA RSSI threshold for roam")
/*
* <ini>
* rx_data_inactivity_time - Duration to check data rssi
* @Min: 0
* @Max: 100000 ms
* @Default: 2000
*
* If the DUT is connected to an AP with weak signal, during latest
* rx_data_inactivity_time, if there is no activity or avg of data_rssi is
* better than roam_data_rssi_threshold(-70dbM), then suppress roaming
* triggered by roam_data_rssi_threshold_triggers: low RSSI or bg scan.
*
* Related: None
*
* Supported Feature: Roaming
*
* Usage: External
*
* </ini>
*/
#define CFG_RX_DATA_INACTIVITY_TIME CFG_INI_UINT( \
"rx_data_inactivity_time", \
0, \
100000, \
2000, \
CFG_VALUE_OR_DEFAULT, \
"Rx inactivity time to check data rssi")
/*
* <ini>
* roamscan_adaptive_dwell_mode - Sets dwell time adaptive mode
@@ -2778,6 +2865,9 @@
CFG(CFG_LFR_ROAM_BG_SCAN_BAD_RSSI_THRESHOLD) \
CFG(CFG_LFR_ROAM_BG_SCAN_CLIENT_BITMAP) \
CFG(CFG_LFR_ROAM_BG_SCAN_BAD_RSSI_OFFSET_2G) \
CFG(CFG_ROAM_DATA_RSSI_THRESHOLD_TRIGGERS) \
CFG(CFG_ROAM_DATA_RSSI_THRESHOLD) \
CFG(CFG_RX_DATA_INACTIVITY_TIME) \
CFG(CFG_LFR_ADAPTIVE_ROAMSCAN_DWELL_MODE) \
CFG(CFG_LFR_PER_ROAM_ENABLE) \
CFG(CFG_LFR_PER_ROAM_CONFIG_HIGH_RATE_TH) \

查看文件

@@ -1585,6 +1585,10 @@ struct fw_scan_channels {
* @roam_bg_scan_bad_rssi_threshold:RSSI threshold for background roam
* @roam_bg_scan_client_bitmap: Bitmap used to identify the scan clients
* @roam_bg_scan_bad_rssi_offset_2g:RSSI threshold offset for 2G to 5G roam
* @roam_data_rssi_threshold_triggers: triggers of bad data RSSI threshold to
* roam
* @roam_data_rssi_threshold: Bad data RSSI threshold to roam
* @rx_data_inactivity_time: Rx duration to check data RSSI
* @adaptive_roamscan_dwell_mode: Sets dwell time adaptive mode
* @per_roam_enable: To enabled/disable PER based roaming in FW
* @per_roam_config_high_rate_th: Rate at which PER based roam will stop
@@ -1696,6 +1700,9 @@ struct wlan_mlme_lfr_cfg {
uint32_t roam_bg_scan_bad_rssi_threshold;
uint32_t roam_bg_scan_client_bitmap;
uint32_t roam_bg_scan_bad_rssi_offset_2g;
uint32_t roam_data_rssi_threshold_triggers;
int32_t roam_data_rssi_threshold;
uint32_t rx_data_inactivity_time;
uint32_t adaptive_roamscan_dwell_mode;
uint32_t per_roam_enable;
uint32_t per_roam_config_high_rate_th;