qcacld-3.0: Introduce a new compile time flag and INI

Introduce a compile time flag SAE_SINGLE_PMK and new INI
"sae_same_pmk_feature_enabled" to enable/disable SAE
Roaming with same PMK/PMKID feature.

Change-Id: Ifca8ec8bcf6e9a2f1d8409b35390bfee0033bd30
CRs-Fixed: 2616025
This commit is contained in:
Abhinav Kumar
2020-01-30 11:35:32 +05:30
committed by nshrivas
parent 4e50e00217
commit 282732250b
3 changed files with 60 additions and 1 deletions

View File

@@ -1432,6 +1432,30 @@ mlme_init_adaptive_11r_cfg(struct wlan_objmgr_psoc *psoc,
} }
#endif #endif
#ifdef WLAN_SAE_SINGLE_PMK
/**
* mlme_init_sae_single_pmk_cfg() - initialize sae_same_pmk_config
* flag
* @psoc: Pointer to PSOC
* @lfr: pointer to mlme lfr config
*
* Return: None
*/
static void
mlme_init_sae_single_pmk_cfg(struct wlan_objmgr_psoc *psoc,
struct wlan_mlme_lfr_cfg *lfr)
{
lfr->sae_same_pmk_feature_enabled = cfg_get(psoc, CFG_SAE_SINGLE_PMK);
}
#else
static inline void
mlme_init_sae_single_pmk_cfg(struct wlan_objmgr_psoc *psoc,
struct wlan_mlme_lfr_cfg *lfr)
{
}
#endif
#ifdef WLAN_FEATURE_ROAM_OFFLOAD #ifdef WLAN_FEATURE_ROAM_OFFLOAD
static void mlme_init_roam_offload_cfg(struct wlan_objmgr_psoc *psoc, static void mlme_init_roam_offload_cfg(struct wlan_objmgr_psoc *psoc,
struct wlan_mlme_lfr_cfg *lfr) struct wlan_mlme_lfr_cfg *lfr)
@@ -1684,6 +1708,7 @@ static void mlme_init_lfr_cfg(struct wlan_objmgr_psoc *psoc,
mlme_init_bss_load_trigger_params(psoc, &lfr->bss_load_trig); mlme_init_bss_load_trigger_params(psoc, &lfr->bss_load_trig);
mlme_init_adaptive_11r_cfg(psoc, lfr); mlme_init_adaptive_11r_cfg(psoc, lfr);
mlme_init_subnet_detection(psoc, lfr); mlme_init_subnet_detection(psoc, lfr);
mlme_init_sae_single_pmk_cfg(psoc, lfr);
} }
static uint32_t static uint32_t

View File

@@ -2414,6 +2414,34 @@
#define LFR_SUBNET_DETECTION_ALL #define LFR_SUBNET_DETECTION_ALL
#endif #endif
#ifdef WLAN_SAE_SINGLE_PMK
/*
* <ini>
* sae_same_pmk_feature_enabled - Enable/disable sae single pmk feature.
* @Min: 0
* @Max: 1
* @Default: 1
*
* This INI is to enable/disable SAE Roaming with same PMK/PMKID feature support
*
* Related: None.
*
* Supported Feature: Roaming
*
* Usage: Internal
*
* </ini>
*/
#define CFG_SAE_SINGLE_PMK CFG_INI_BOOL( \
"sae_same_pmk_feature_enabled", \
true, \
"Enable/disable SAE Roaming with same PMK/PMKID")
#define SAE_SINGLE_PMK_ALL CFG(CFG_SAE_SINGLE_PMK)
#else
#define SAE_SINGLE_PMK_ALL
#endif
#ifdef WLAN_ADAPTIVE_11R #ifdef WLAN_ADAPTIVE_11R
/* /*
* <ini> * <ini>
@@ -2658,6 +2686,7 @@
ADAPTIVE_11R_ALL \ ADAPTIVE_11R_ALL \
ROAM_OFFLOAD_ALL \ ROAM_OFFLOAD_ALL \
LFR_ESE_ALL \ LFR_ESE_ALL \
LFR_SUBNET_DETECTION_ALL LFR_SUBNET_DETECTION_ALL \
SAE_SINGLE_PMK_ALL
#endif /* CFG_MLME_LFR_H__ */ #endif /* CFG_MLME_LFR_H__ */

View File

@@ -1521,6 +1521,8 @@ struct bss_load_trigger {
* @fw_akm_bitmap: Supported Akm suites of firmware * @fw_akm_bitmap: Supported Akm suites of firmware
* @roam_full_scan_period: Idle period in seconds between two successive * @roam_full_scan_period: Idle period in seconds between two successive
* full channel roam scans * full channel roam scans
* @sae_same_pmk_feature_enabled: Contains value of ini
* sae_same_pmk_feature_enabled
*/ */
struct wlan_mlme_lfr_cfg { struct wlan_mlme_lfr_cfg {
bool mawc_roam_enabled; bool mawc_roam_enabled;
@@ -1624,6 +1626,9 @@ struct wlan_mlme_lfr_cfg {
uint32_t roam_scan_period_after_inactivity; uint32_t roam_scan_period_after_inactivity;
uint32_t fw_akm_bitmap; uint32_t fw_akm_bitmap;
uint32_t roam_full_scan_period; uint32_t roam_full_scan_period;
#ifdef WLAN_SAE_SINGLE_PMK
bool sae_same_pmk_feature_enabled;
#endif
}; };
/** /**