qcacld-3.0: Add MLME OCE CFG items
Add OCE CFG items based on converged cfg component, remove related legacy code. Change-Id: I976981048be2df3f429003fc5db13f48a6ad27d0 CRs-Fixed: 2313157
このコミットが含まれているのは:
@@ -21,7 +21,7 @@
|
||||
|
||||
#include "wlan_mlme_main.h"
|
||||
#include "cfg_ucfg_api.h"
|
||||
#include "wlan_scan_public_structs.h"
|
||||
#include "wmi_unified.h"
|
||||
|
||||
struct wlan_mlme_psoc_obj *mlme_get_psoc_obj(struct wlan_objmgr_psoc *psoc)
|
||||
{
|
||||
@@ -640,6 +640,57 @@ static void mlme_init_scoring_cfg(struct wlan_objmgr_psoc *psoc,
|
||||
cfg_get(psoc, CFG_SCORING_OCE_WAN_SCORE_IDX_15_TO_12));
|
||||
}
|
||||
|
||||
static void mlme_init_oce_cfg(struct wlan_objmgr_psoc *psoc,
|
||||
struct wlan_mlme_oce *oce)
|
||||
{
|
||||
uint8_t val;
|
||||
bool rssi_assoc_reject_enabled;
|
||||
bool probe_req_rate_enabled;
|
||||
bool probe_resp_rate_enabled;
|
||||
bool beacon_rate_enabled;
|
||||
bool probe_req_deferral_enabled;
|
||||
bool fils_discovery_sap_enabled;
|
||||
bool esp_for_roam_enabled;
|
||||
|
||||
oce->enable_bcast_probe_rsp =
|
||||
cfg_get(psoc, CFG_ENABLE_BCAST_PROBE_RESP);
|
||||
oce->oce_sta_enabled = cfg_get(psoc, CFG_OCE_ENABLE_STA);
|
||||
oce->oce_sap_enabled = cfg_get(psoc, CFG_OCE_ENABLE_SAP);
|
||||
oce->fils_enabled = cfg_get(psoc, CFG_IS_FILS_ENABLED);
|
||||
|
||||
rssi_assoc_reject_enabled =
|
||||
cfg_get(psoc, CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT);
|
||||
probe_req_rate_enabled = cfg_get(psoc, CFG_OCE_PROBE_REQ_RATE);
|
||||
probe_resp_rate_enabled = cfg_get(psoc, CFG_OCE_PROBE_RSP_RATE);
|
||||
beacon_rate_enabled = cfg_get(psoc, CFG_OCE_BEACON_RATE);
|
||||
probe_req_deferral_enabled =
|
||||
cfg_get(psoc, CFG_ENABLE_PROBE_REQ_DEFERRAL);
|
||||
fils_discovery_sap_enabled =
|
||||
cfg_get(psoc, CFG_ENABLE_FILS_DISCOVERY_SAP);
|
||||
esp_for_roam_enabled = cfg_get(psoc, CFG_ENABLE_ESP_FEATURE);
|
||||
|
||||
if (!rssi_assoc_reject_enabled ||
|
||||
!oce->enable_bcast_probe_rsp) {
|
||||
oce->oce_sta_enabled = 0;
|
||||
}
|
||||
|
||||
val = (probe_req_rate_enabled *
|
||||
WMI_VDEV_OCE_PROBE_REQUEST_RATE_FEATURE_BITMAP) +
|
||||
(probe_resp_rate_enabled *
|
||||
WMI_VDEV_OCE_PROBE_RESPONSE_RATE_FEATURE_BITMAP) +
|
||||
(beacon_rate_enabled *
|
||||
WMI_VDEV_OCE_BEACON_RATE_FEATURE_BITMAP) +
|
||||
(probe_req_deferral_enabled *
|
||||
WMI_VDEV_OCE_PROBE_REQUEST_DEFERRAL_FEATURE_BITMAP) +
|
||||
(fils_discovery_sap_enabled *
|
||||
WMI_VDEV_OCE_FILS_DISCOVERY_FRAME_FEATURE_BITMAP) +
|
||||
(esp_for_roam_enabled *
|
||||
WMI_VDEV_OCE_ESP_FEATURE_BITMAP) +
|
||||
(rssi_assoc_reject_enabled *
|
||||
WMI_VDEV_OCE_REASSOC_REJECT_FEATURE_BITMAP);
|
||||
oce->feature_bitmap = val;
|
||||
}
|
||||
|
||||
QDF_STATUS mlme_cfg_on_psoc_enable(struct wlan_objmgr_psoc *psoc)
|
||||
{
|
||||
struct wlan_mlme_psoc_obj *mlme_obj;
|
||||
@@ -665,6 +716,7 @@ QDF_STATUS mlme_cfg_on_psoc_enable(struct wlan_objmgr_psoc *psoc)
|
||||
mlme_init_sta_cfg(psoc, &mlme_cfg->sta);
|
||||
mlme_init_lfr_cfg(psoc, &mlme_cfg->lfr);
|
||||
mlme_init_scoring_cfg(psoc, &mlme_cfg->scoring);
|
||||
mlme_init_oce_cfg(psoc, &mlme_cfg->oce);
|
||||
|
||||
return status;
|
||||
}
|
||||
|
@@ -36,6 +36,7 @@
|
||||
#include "cfg_sap_protection.h"
|
||||
#include "cfg_mlme_sap.h"
|
||||
#include "cfg_mlme_scoring.h"
|
||||
#include "cfg_mlme_oce.h"
|
||||
|
||||
/* Please Maintain Alphabetic Order here */
|
||||
#define CFG_MLME_ALL \
|
||||
@@ -45,6 +46,7 @@
|
||||
CFG_LFR_ALL \
|
||||
CFG_MBO_ALL \
|
||||
CFG_OBSS_HT40_ALL \
|
||||
CFG_OCE_ALL \
|
||||
CFG_QOS_ALL \
|
||||
CFG_RATES_ALL \
|
||||
CFG_SAP_ALL \
|
||||
|
287
components/mlme/dispatcher/inc/cfg_mlme_oce.h
ノーマルファイル
287
components/mlme/dispatcher/inc/cfg_mlme_oce.h
ノーマルファイル
@@ -0,0 +1,287 @@
|
||||
/*
|
||||
* Copyright (c) 2012-2018 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
* above copyright notice and this permission notice appear in all
|
||||
* copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||||
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/**
|
||||
* DOC: This file contains centralized definitions of converged configuration.
|
||||
*/
|
||||
|
||||
#ifndef __CFG_MLME_OCE_H
|
||||
#define __CFG_MLME_OCE_H
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* g_enable_bcast_probe_rsp - Enable Broadcast probe response.
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable broadcast probe response.
|
||||
* If this is disabled then OCE ini oce_sta_enable will also be
|
||||
* disabled and OCE IE will not be sent in frames.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: FILS
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ENABLE_BCAST_PROBE_RESP CFG_INI_BOOL( \
|
||||
"g_enable_bcast_probe_rsp", \
|
||||
1, \
|
||||
"Enable Broadcast probe response")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_sta_enable - Enable/disable oce feature for STA
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable oce feature for STA
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_ENABLE_STA CFG_INI_BOOL( \
|
||||
"oce_sta_enable", \
|
||||
1, \
|
||||
"Enable/disable oce feature for STA")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_sap_enable - Enable/disable oce feature for SAP
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable oce feature for SAP
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_ENABLE_SAP CFG_INI_BOOL( \
|
||||
"oce_sap_enable", \
|
||||
1, \
|
||||
"Enable/disable oce feature for SAP")
|
||||
|
||||
/*
|
||||
* oce_enable_rssi_assoc_reject - Enable/disable rssi based assoc rejection
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable rssi based assoc rejection. If this is
|
||||
* disabled then OCE ini oce_sta_enable will also be disabled and OCE IE will
|
||||
* not be sent in frames.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT CFG_INI_BOOL( \
|
||||
"oce_enable_rssi_assoc_reject", \
|
||||
1, \
|
||||
"Enable/disable rssi based assoc rejection")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_probe_req_rate - Set probe request rate
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to set probe request rate to 5.5Mbps as per OCE requirement
|
||||
* in 2.4G band
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_PROBE_REQ_RATE CFG_INI_BOOL( \
|
||||
"oce_enable_probe_req_rate", \
|
||||
0, \
|
||||
"Set probe request rate for OCE")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_probe_resp_rate - Set probe response rate
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to set probe response rate to 5.5Mbps as per OCE requirement
|
||||
* in 2.4G band
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_PROBE_RSP_RATE CFG_INI_BOOL( \
|
||||
"oce_enable_probe_resp_rate", \
|
||||
0, \
|
||||
"Set probe response rate for OCE")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_beacon_rate - Set beacon rate
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to set beacon rate to 5.5Mbps as per OCE requirement in
|
||||
* 2.4G band
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_BEACON_RATE CFG_INI_BOOL( \
|
||||
"oce_enable_beacon_rate", \
|
||||
0, \
|
||||
"Set Beacon rate for OCE")
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_probe_req_deferral - Enable/disable probe request deferral
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to enable/disable probe request deferral as per OCE spec
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ENABLE_PROBE_REQ_DEFERRAL CFG_INI_BOOL( \
|
||||
"oce_enable_probe_req_deferral", \
|
||||
0, \
|
||||
"Enable/disable probe request deferral for OCE")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_fils_discovery_sap - Enable/disable fils discovery in sap mode
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable fils discovery in sap mode
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: FILS
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ENABLE_FILS_DISCOVERY_SAP CFG_INI_BOOL( \
|
||||
"oce_enable_fils_discovery_sap", \
|
||||
1, \
|
||||
"Enable/disable fils discovery in sap mode")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* enable_esp_for_roam - Enable/disable esp feature
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to enable/disable ESP(Estimated service parameters) IE
|
||||
* parsing and decides whether firmware will include this in its scoring algo.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: STA
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ENABLE_ESP_FEATURE CFG_INI_BOOL( \
|
||||
"enable_esp_for_roam", \
|
||||
0, \
|
||||
"Enable/disable esp feature")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* g_is_fils_enabled - Enable/Disable FILS support in driver
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable FILS support in driver
|
||||
* Driver will update config to supplicant based on this config.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: FILS
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_IS_FILS_ENABLED CFG_INI_BOOL( \
|
||||
"g_is_fils_enabled", \
|
||||
1, \
|
||||
"Enable/disable support")
|
||||
|
||||
#define CFG_OCE_ALL \
|
||||
CFG(CFG_ENABLE_BCAST_PROBE_RESP) \
|
||||
CFG(CFG_OCE_ENABLE_STA) \
|
||||
CFG(CFG_OCE_ENABLE_SAP) \
|
||||
CFG(CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT) \
|
||||
CFG(CFG_OCE_PROBE_REQ_RATE) \
|
||||
CFG(CFG_OCE_PROBE_RSP_RATE) \
|
||||
CFG(CFG_OCE_BEACON_RATE) \
|
||||
CFG(CFG_ENABLE_PROBE_REQ_DEFERRAL) \
|
||||
CFG(CFG_ENABLE_FILS_DISCOVERY_SAP) \
|
||||
CFG(CFG_ENABLE_ESP_FEATURE) \
|
||||
CFG(CFG_IS_FILS_ENABLED)
|
||||
#endif /* __CFG_MLME_OCE_H */
|
@@ -273,4 +273,54 @@ QDF_STATUS wlan_mlme_get_sap_reduced_beacon_interval(struct wlan_objmgr_psoc
|
||||
QDF_STATUS wlan_mlme_get_sap_chan_switch_rate_enabled(struct wlan_objmgr_psoc
|
||||
*psoc, bool *value);
|
||||
|
||||
/**
|
||||
* wlan_mlme_get_oce_sta_enabled_info() - Get the OCE feature enable
|
||||
* info for STA
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: pointer to the value which will be filled for the caller
|
||||
*
|
||||
* Return: QDF Status
|
||||
*/
|
||||
QDF_STATUS wlan_mlme_get_oce_sta_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value);
|
||||
|
||||
/**
|
||||
* wlan_mlme_get_oce_sap_enabled_info() - Get the OCE feature enable
|
||||
* info for SAP
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: pointer to the value which will be filled for the caller
|
||||
*
|
||||
* Return: QDF Status
|
||||
*/
|
||||
QDF_STATUS wlan_mlme_get_oce_sap_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value);
|
||||
|
||||
/**
|
||||
* wlan_mlme_get_fils_enabled_info() - Get the fils enable info for driver
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: pointer to the value which will be filled for the caller
|
||||
*
|
||||
* Return: QDF Status
|
||||
*/
|
||||
QDF_STATUS wlan_mlme_get_fils_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value);
|
||||
/**
|
||||
* wlan_mlme_set_fils_enabled_info() - Set the fils enable info for driver
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: value that needs to be set from the caller
|
||||
*
|
||||
* Return: QDF Status
|
||||
*/
|
||||
QDF_STATUS wlan_mlme_set_fils_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool value);
|
||||
|
||||
/**
|
||||
* wlan_mlme_set_enable_bcast_probe_rsp() - Set enable bcast probe resp info
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: value that needs to be set from the caller
|
||||
*
|
||||
* Return: QDF Status
|
||||
*/
|
||||
QDF_STATUS wlan_mlme_set_enable_bcast_probe_rsp(struct wlan_objmgr_psoc *psoc,
|
||||
bool value);
|
||||
#endif /* _WLAN_MLME_API_H_ */
|
||||
|
@@ -617,6 +617,23 @@ struct wlan_mlme_scoring_cfg {
|
||||
uint32_t band_weight_per_index;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct wlan_mlme_oce - OCE related config items
|
||||
* @enable_bcast_probe_rsp: enable broadcast probe response
|
||||
* @oce_sta_enabled: enable/disable oce feature for sta
|
||||
* @oce_sap_enabled: enable/disable oce feature for sap
|
||||
* @fils_enabled: enable/disable fils support
|
||||
* @feature_bitmap: oce feature bitmap
|
||||
*
|
||||
*/
|
||||
struct wlan_mlme_oce {
|
||||
bool enable_bcast_probe_rsp;
|
||||
bool oce_sta_enabled;
|
||||
bool oce_sap_enabled;
|
||||
bool fils_enabled;
|
||||
uint8_t feature_bitmap;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct wlan_mlme_cfg - MLME config items
|
||||
* @ht_cfg: HT related CFG Items
|
||||
@@ -643,6 +660,7 @@ struct wlan_mlme_cfg {
|
||||
struct wlan_mlme_cfg_sap sap_cfg;
|
||||
struct wlan_mlme_sta_cfg sta;
|
||||
struct wlan_mlme_scoring_cfg scoring;
|
||||
struct wlan_mlme_oce oce;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@@ -575,4 +575,95 @@ QDF_STATUS ucfg_mlme_get_sap_chan_switch_rate_enabled(struct wlan_objmgr_psoc
|
||||
return wlan_mlme_get_sap_chan_switch_rate_enabled(psoc, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* ucfg_mlme_get_oce_sta_enabled_info() - Get OCE feature enable/disable
|
||||
* info for STA
|
||||
*
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: pointer to the value which will be filled for the caller
|
||||
*
|
||||
* Inline UCFG API to be used by HDD/OSIF callers to get the
|
||||
* OCE STA feature enable value
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS or QDF_STATUS_FAILURE
|
||||
*/
|
||||
static inline
|
||||
QDF_STATUS ucfg_mlme_get_oce_sta_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value)
|
||||
{
|
||||
return wlan_mlme_get_oce_sta_enabled_info(psoc, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* ucfg_mlme_get_oce_sap_enabled_info() - Get OCE feature enable/disable
|
||||
* info for SAP
|
||||
*
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: pointer to the value which will be filled for the caller
|
||||
*
|
||||
* Inline UCFG API to be used by HDD/OSIF callers to get the
|
||||
* OCE SAP feature enable value
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS or QDF_STATUS_FAILURE
|
||||
*/
|
||||
static inline
|
||||
QDF_STATUS ucfg_mlme_get_oce_sap_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value)
|
||||
{
|
||||
return wlan_mlme_get_oce_sap_enabled_info(psoc, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* ucfg_mlme_get_fils_enabled_info() - Get fils enable/disable info
|
||||
*
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: pointer to the value which will be filled for the caller
|
||||
*
|
||||
* Inline UCFG API to be used by HDD/OSIF callers to get the
|
||||
* fils enable value
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS or QDF_STATUS_FAILURE
|
||||
*/
|
||||
static inline
|
||||
QDF_STATUS ucfg_mlme_get_fils_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value)
|
||||
{
|
||||
return wlan_mlme_get_fils_enabled_info(psoc, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* ucfg_mlme_set_fils_enabled_info() - Set fils enable info
|
||||
*
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: value that needs to be set from the caller
|
||||
*
|
||||
* Inline UCFG API to be used by HDD/OSIF callers to set the
|
||||
* fils enable value
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS or QDF_STATUS_FAILURE
|
||||
*/
|
||||
static inline
|
||||
QDF_STATUS ucfg_mlme_set_fils_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool value)
|
||||
{
|
||||
return wlan_mlme_set_fils_enabled_info(psoc, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* ucfg_mlme_set_enable_bcast_probe_rsp() - Set enable bcast probe resp info
|
||||
*
|
||||
* @psoc: pointer to psoc object
|
||||
* @value: value that needs to be set from the caller
|
||||
*
|
||||
* Inline UCFG API to be used by HDD/OSIF callers to set the
|
||||
* enable bcast probe resp info
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS or QDF_STATUS_FAILURE
|
||||
*/
|
||||
static inline
|
||||
QDF_STATUS ucfg_mlme_set_enable_bcast_probe_rsp(struct wlan_objmgr_psoc *psoc,
|
||||
bool value)
|
||||
{
|
||||
return wlan_mlme_set_enable_bcast_probe_rsp(psoc, value);
|
||||
}
|
||||
#endif /* _WLAN_MLME_UCFG_API_H_ */
|
||||
|
@@ -448,3 +448,73 @@ QDF_STATUS wlan_mlme_get_sap_chan_switch_rate_enabled(struct wlan_objmgr_psoc
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
QDF_STATUS wlan_mlme_get_oce_sta_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value)
|
||||
{
|
||||
struct wlan_mlme_psoc_obj *mlme_obj = mlme_get_psoc_obj(psoc);
|
||||
|
||||
if (!mlme_obj) {
|
||||
mlme_err("Failed to get MLME Obj");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
*value = mlme_obj->cfg.oce.oce_sta_enabled;
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
QDF_STATUS wlan_mlme_get_oce_sap_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value)
|
||||
{
|
||||
struct wlan_mlme_psoc_obj *mlme_obj = mlme_get_psoc_obj(psoc);
|
||||
|
||||
if (!mlme_obj) {
|
||||
mlme_err("Failed to get MLME Obj");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
*value = mlme_obj->cfg.oce.oce_sap_enabled;
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
QDF_STATUS wlan_mlme_get_fils_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value)
|
||||
{
|
||||
struct wlan_mlme_psoc_obj *mlme_obj = mlme_get_psoc_obj(psoc);
|
||||
|
||||
if (!mlme_obj) {
|
||||
mlme_err("Failed to get MLME Obj");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
*value = mlme_obj->cfg.oce.fils_enabled;
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
QDF_STATUS wlan_mlme_set_fils_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool value)
|
||||
{
|
||||
struct wlan_mlme_psoc_obj *mlme_obj = mlme_get_psoc_obj(psoc);
|
||||
|
||||
if (!mlme_obj) {
|
||||
mlme_err("Failed to get MLME Obj");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
mlme_obj->cfg.oce.fils_enabled = value;
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
QDF_STATUS wlan_mlme_set_enable_bcast_probe_rsp(struct wlan_objmgr_psoc *psoc,
|
||||
bool value)
|
||||
{
|
||||
struct wlan_mlme_psoc_obj *mlme_obj = mlme_get_psoc_obj(psoc);
|
||||
|
||||
if (!mlme_obj) {
|
||||
mlme_err("Failed to get MLME Obj");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
mlme_obj->cfg.oce.enable_bcast_probe_rsp = value;
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
@@ -8851,53 +8851,6 @@ enum hdd_wext_control {
|
||||
#define CFG_EXTWOW_TCP_RX_TIMEOUT_DEFAULT (200)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* g_is_fils_enabled - Enable/Disable FILS support in driver
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable FILS support in driver
|
||||
* Driver will update config to supplicant based on this config.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: FILS
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_IS_FILS_ENABLED_NAME "g_is_fils_enabled"
|
||||
#define CFG_IS_FILS_ENABLED_DEFAULT (1)
|
||||
#define CFG_IS_FILS_ENABLED_MIN (0)
|
||||
#define CFG_IS_FILS_ENABLED_MAX (1)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* g_enable_bcast_probe_rsp - Enable Broadcast probe response.
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable broadcast probe response.
|
||||
* If this is disabled then OCE ini oce_sta_enable will also be
|
||||
* disabled and OCE IE will not be sent in frames.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: FILS
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ENABLE_BCAST_PROBE_RESP_NAME "g_enable_bcast_probe_rsp"
|
||||
#define CFG_ENABLE_BCAST_PROBE_RESP_MIN (0)
|
||||
#define CFG_ENABLE_BCAST_PROBE_RESP_MAX (1)
|
||||
#define CFG_ENABLE_BCAST_PROBE_RESP_DEFAULT (1)
|
||||
|
||||
/**
|
||||
* arp_ac_category - ARP access category
|
||||
* @Min: 0
|
||||
@@ -9708,50 +9661,6 @@ enum hdd_external_acs_policy {
|
||||
#define CFG_ITO_REPEAT_COUNT_MAX (5)
|
||||
#define CFG_ITO_REPEAT_COUNT_DEFAULT (0)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_sta_enable - Enable/disable oce feature for STA
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable oce feature for STA
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_ENABLE_STA_NAME "oce_sta_enable"
|
||||
#define CFG_OCE_ENABLE_STA_MIN (0)
|
||||
#define CFG_OCE_ENABLE_STA_MAX (1)
|
||||
#define CFG_OCE_ENABLE_STA_DEFAULT (1)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_sap_enable - Enable/disable oce feature for SAP
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable oce feature for SAP
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_ENABLE_SAP_NAME "oce_sap_enable"
|
||||
#define CFG_OCE_ENABLE_SAP_MIN (0)
|
||||
#define CFG_OCE_ENABLE_SAP_MAX (1)
|
||||
#define CFG_OCE_ENABLE_SAP_DEFAULT (1)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* gEnableLPRx - Enable/Disable LPRx
|
||||
@@ -9990,166 +9899,6 @@ enum hdd_external_acs_policy {
|
||||
#define CFG_DFS_BEACON_TX_ENHANCED_MAX (1)
|
||||
#define CFG_DFS_BEACON_TX_ENHANCED_DEFAULT (0)
|
||||
|
||||
/*
|
||||
* oce_enable_rssi_assoc_reject - Enable/disable rssi based assoc rejection
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This ini is used to enable/disable rssi based assoc rejection. If this is
|
||||
* disabled then OCE ini oce_sta_enable will also be disabled and OCE IE will
|
||||
* not be sent in frames.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_NAME \
|
||||
"oce_enable_rssi_assoc_reject"
|
||||
#define CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_MIN (0)
|
||||
#define CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_MAX (1)
|
||||
#define CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_DEFAULT (1)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_probe_req_rate - Set probe request rate
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to set probe request rate to 5.5Mbps as per OCE requirement
|
||||
* in 2.4G band
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_PROBE_REQ_RATE_NAME "oce_enable_probe_req_rate"
|
||||
#define CFG_OCE_PROBE_REQ_RATE_MIN (0)
|
||||
#define CFG_OCE_PROBE_REQ_RATE_MAX (1)
|
||||
#define CFG_OCE_PROBE_REQ_RATE_DEFAULT (1)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_probe_resp_rate - Set probe response rate
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to set probe response rate to 5.5Mbps as per OCE requirement
|
||||
* in 2.4G band
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_PROBE_RSP_RATE_NAME "oce_enable_probe_resp_rate"
|
||||
#define CFG_OCE_PROBE_RSP_RATE_MIN (0)
|
||||
#define CFG_OCE_PROBE_RSP_RATE_MAX (1)
|
||||
#define CFG_OCE_PROBE_RSP_RATE_DEFAULT (0)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_beacon_rate - Set beacon rate
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to set beacon rate to 5.5Mbps as per OCE requirement in
|
||||
* 2.4G band
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_OCE_BEACON_RATE_NAME "oce_enable_beacon_rate"
|
||||
#define CFG_OCE_BEACON_RATE_MIN (0)
|
||||
#define CFG_OCE_BEACON_RATE_MAX (1)
|
||||
#define CFG_OCE_BEACON_RATE_DEFAULT (0)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_probe_req_deferral - Enable/disable probe request deferral
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to enable/disable probe request deferral as per OCE spec
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: OCE
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ENABLE_PROBE_REQ_DEFERRAL_NAME "oce_enable_probe_req_deferral"
|
||||
#define CFG_ENABLE_PROBE_REQ_DEFERRAL_MIN (0)
|
||||
#define CFG_ENABLE_PROBE_REQ_DEFERRAL_MAX (1)
|
||||
#define CFG_ENABLE_PROBE_REQ_DEFERRAL_DEFAULT (1)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* oce_enable_fils_discovery_sap - Enable/disable fils discovery in sap mode
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to enable/disable fils discovery in sap mode
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: FILS
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ENABLE_FILS_DISCOVERY_SAP_NAME "oce_enable_fils_discovery_sap"
|
||||
#define CFG_ENABLE_FILS_DISCOVERY_SAP_MIN (0)
|
||||
#define CFG_ENABLE_FILS_DISCOVERY_SAP_MAX (1)
|
||||
#define CFG_ENABLE_FILS_DISCOVERY_SAP_DEFAULT (1)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* enable_esp_for_roam - Enable/disable esp feature
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 0
|
||||
*
|
||||
* This ini is used to enable/disable ESP(Estimated service parameters) IE
|
||||
* parsing and decides whether firmware will include this in its scoring algo.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: STA
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ENABLE_ESP_FEATURE_NAME "enable_esp_for_roam"
|
||||
#define CFG_ENABLE_ESP_FEATURE_MIN (0)
|
||||
#define CFG_ENABLE_ESP_FEATURE_MAX (1)
|
||||
#define CFG_ENABLE_ESP_FEATURE_DEFAULT (1)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* btm_offload_config - Configure BTM
|
||||
@@ -11643,7 +11392,6 @@ struct hdd_config {
|
||||
restart_beaconing_on_chan_avoid_event;
|
||||
enum active_apf_mode active_uc_apf_mode;
|
||||
enum active_apf_mode active_mc_bc_apf_mode;
|
||||
bool enable_bcast_probe_rsp;
|
||||
uint8_t he_dynamic_frag_support;
|
||||
#ifdef WLAN_FEATURE_11AX
|
||||
bool enable_ul_mimo;
|
||||
@@ -11687,8 +11435,6 @@ struct hdd_config {
|
||||
uint8_t max_mpdus_inampdu;
|
||||
enum pmo_auto_pwr_detect_failure_mode auto_pwr_save_fail_mode;
|
||||
uint8_t ito_repeat_count;
|
||||
bool oce_sta_enabled;
|
||||
bool oce_sap_enabled;
|
||||
bool enable_11d_in_world_mode;
|
||||
/* 5G preference parameters for boosting RSSI */
|
||||
bool enable_5g_band_pref;
|
||||
@@ -11706,7 +11452,6 @@ struct hdd_config {
|
||||
int8_t rssi_thresh_offset_5g;
|
||||
uint32_t scan_11d_interval;
|
||||
bool is_bssid_hint_priority;
|
||||
bool is_fils_enabled;
|
||||
uint16_t wlm_latency_enable;
|
||||
uint16_t wlm_latency_level;
|
||||
uint32_t wlm_latency_flags_normal;
|
||||
@@ -11718,13 +11463,6 @@ struct hdd_config {
|
||||
#endif
|
||||
uint8_t enable_phy_reg_retention;
|
||||
uint8_t dfs_beacon_tx_enhanced;
|
||||
bool rssi_assoc_reject_enabled;
|
||||
bool oce_probe_req_rate_enabled;
|
||||
bool oce_probe_resp_rate_enabled;
|
||||
bool oce_beacon_rate_enabled;
|
||||
bool probe_req_deferral_enabled;
|
||||
bool fils_discovery_sap_enabled;
|
||||
bool esp_for_roam_enabled;
|
||||
uint32_t btm_offload_config;
|
||||
#ifdef WLAN_FEATURE_SAE
|
||||
bool is_sae_enabled;
|
||||
|
@@ -3652,13 +3652,6 @@ struct reg_table_entry g_registry_table[] = {
|
||||
CFG_ACTIVE_MC_BC_APF_MODE_MIN,
|
||||
CFG_ACTIVE_MC_BC_APF_MODE_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_ENABLE_BCAST_PROBE_RESP_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, enable_bcast_probe_rsp,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_ENABLE_BCAST_PROBE_RESP_DEFAULT,
|
||||
CFG_ENABLE_BCAST_PROBE_RESP_MIN,
|
||||
CFG_ENABLE_BCAST_PROBE_RESP_MAX),
|
||||
|
||||
#ifdef WLAN_FEATURE_11AX
|
||||
REG_VARIABLE(CFG_ENABLE_UL_MIMO_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, enable_ul_mimo,
|
||||
@@ -3885,20 +3878,6 @@ struct reg_table_entry g_registry_table[] = {
|
||||
CFG_ITO_REPEAT_COUNT_MIN,
|
||||
CFG_ITO_REPEAT_COUNT_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_OCE_ENABLE_STA_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, oce_sta_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_OCE_ENABLE_STA_DEFAULT,
|
||||
CFG_OCE_ENABLE_STA_MIN,
|
||||
CFG_OCE_ENABLE_STA_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_OCE_ENABLE_SAP_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, oce_sap_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_OCE_ENABLE_SAP_DEFAULT,
|
||||
CFG_OCE_ENABLE_SAP_MIN,
|
||||
CFG_OCE_ENABLE_SAP_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_ENABLE_11D_IN_WORLD_MODE_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, enable_11d_in_world_mode,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
@@ -4032,13 +4011,6 @@ struct reg_table_entry g_registry_table[] = {
|
||||
CFG_LATENCY_FLAGS_ULTRALOW_MAX),
|
||||
|
||||
|
||||
REG_VARIABLE(CFG_IS_FILS_ENABLED_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, is_fils_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_IS_FILS_ENABLED_DEFAULT,
|
||||
CFG_IS_FILS_ENABLED_MIN,
|
||||
CFG_IS_FILS_ENABLED_MAX),
|
||||
|
||||
#ifdef WLAN_FEATURE_PACKET_FILTERING
|
||||
REG_VARIABLE(CFG_ENABLE_PACKET_FILTERS_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, packet_filters_bitmap,
|
||||
@@ -4055,56 +4027,6 @@ struct reg_table_entry g_registry_table[] = {
|
||||
CFG_DFS_BEACON_TX_ENHANCED_MIN,
|
||||
CFG_DFS_BEACON_TX_ENHANCED_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_NAME,
|
||||
WLAN_PARAM_Integer, struct hdd_config,
|
||||
rssi_assoc_reject_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_DEFAULT,
|
||||
CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_MIN,
|
||||
CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_OCE_PROBE_REQ_RATE_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, oce_probe_req_rate_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_OCE_PROBE_REQ_RATE_DEFAULT,
|
||||
CFG_OCE_PROBE_REQ_RATE_MIN,
|
||||
CFG_OCE_PROBE_REQ_RATE_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_OCE_PROBE_RSP_RATE_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, oce_probe_resp_rate_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_OCE_PROBE_RSP_RATE_DEFAULT,
|
||||
CFG_OCE_PROBE_RSP_RATE_MIN,
|
||||
CFG_OCE_PROBE_RSP_RATE_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_OCE_BEACON_RATE_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, oce_beacon_rate_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_OCE_BEACON_RATE_DEFAULT,
|
||||
CFG_OCE_BEACON_RATE_MIN,
|
||||
CFG_OCE_BEACON_RATE_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_ENABLE_PROBE_REQ_DEFERRAL_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, probe_req_deferral_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_ENABLE_PROBE_REQ_DEFERRAL_DEFAULT,
|
||||
CFG_ENABLE_PROBE_REQ_DEFERRAL_MIN,
|
||||
CFG_ENABLE_PROBE_REQ_DEFERRAL_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_ENABLE_FILS_DISCOVERY_SAP_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, fils_discovery_sap_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_ENABLE_FILS_DISCOVERY_SAP_DEFAULT,
|
||||
CFG_ENABLE_FILS_DISCOVERY_SAP_MIN,
|
||||
CFG_ENABLE_FILS_DISCOVERY_SAP_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_ENABLE_ESP_FEATURE_NAME, WLAN_PARAM_Integer,
|
||||
struct hdd_config, esp_for_roam_enabled,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_ENABLE_ESP_FEATURE_DEFAULT,
|
||||
CFG_ENABLE_ESP_FEATURE_MIN,
|
||||
CFG_ENABLE_ESP_FEATURE_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_BTM_ENABLE_NAME, WLAN_PARAM_HexInteger,
|
||||
struct hdd_config, btm_offload_config,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
@@ -5993,7 +5915,7 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
|
||||
{
|
||||
QDF_STATUS status = QDF_STATUS_SUCCESS;
|
||||
tSmeConfigParams *smeConfig;
|
||||
uint8_t rrm_capab_len, val;
|
||||
uint8_t rrm_capab_len;
|
||||
mac_handle_t mac_handle = hdd_ctx->mac_handle;
|
||||
|
||||
struct hdd_config *pConfig = hdd_ctx->config;
|
||||
@@ -6307,11 +6229,6 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
|
||||
|
||||
smeConfig->snr_monitor_enabled = hdd_ctx->config->fEnableSNRMonitoring;
|
||||
|
||||
smeConfig->csrConfig.enable_bcast_probe_rsp =
|
||||
hdd_ctx->config->enable_bcast_probe_rsp;
|
||||
smeConfig->csrConfig.is_fils_enabled =
|
||||
hdd_ctx->config->is_fils_enabled;
|
||||
|
||||
hdd_he_set_sme_config(smeConfig, pConfig);
|
||||
|
||||
smeConfig->csrConfig.wlm_latency_enable =
|
||||
@@ -6333,21 +6250,6 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
|
||||
smeConfig->csrConfig.is_force_1x1 =
|
||||
hdd_ctx->config->is_force_1x1;
|
||||
|
||||
val = (pConfig->oce_probe_req_rate_enabled *
|
||||
WMI_VDEV_OCE_PROBE_REQUEST_RATE_FEATURE_BITMAP) +
|
||||
(pConfig->oce_probe_resp_rate_enabled *
|
||||
WMI_VDEV_OCE_PROBE_RESPONSE_RATE_FEATURE_BITMAP) +
|
||||
(pConfig->oce_beacon_rate_enabled *
|
||||
WMI_VDEV_OCE_BEACON_RATE_FEATURE_BITMAP) +
|
||||
(pConfig->probe_req_deferral_enabled *
|
||||
WMI_VDEV_OCE_PROBE_REQUEST_DEFERRAL_FEATURE_BITMAP) +
|
||||
(pConfig->fils_discovery_sap_enabled *
|
||||
WMI_VDEV_OCE_FILS_DISCOVERY_FRAME_FEATURE_BITMAP) +
|
||||
(pConfig->esp_for_roam_enabled *
|
||||
WMI_VDEV_OCE_ESP_FEATURE_BITMAP) +
|
||||
(pConfig->rssi_assoc_reject_enabled *
|
||||
WMI_VDEV_OCE_REASSOC_REJECT_FEATURE_BITMAP);
|
||||
smeConfig->csrConfig.oce_feature_bitmap = val;
|
||||
smeConfig->csrConfig.btm_offload_config =
|
||||
hdd_ctx->config->btm_offload_config;
|
||||
smeConfig->csrConfig.btm_solicited_timeout =
|
||||
|
@@ -3308,7 +3308,9 @@ __wlan_hdd_cfg80211_get_features(struct wiphy *wiphy,
|
||||
struct sk_buff *skb = NULL;
|
||||
uint32_t dbs_capability = 0;
|
||||
bool one_by_one_dbs, two_by_two_dbs;
|
||||
bool value;
|
||||
QDF_STATUS ret = QDF_STATUS_E_FAILURE;
|
||||
QDF_STATUS status;
|
||||
int ret_val;
|
||||
|
||||
uint8_t feature_flags[(NUM_QCA_WLAN_VENDOR_FEATURES + 7) / 8] = {0};
|
||||
@@ -3341,11 +3343,19 @@ __wlan_hdd_cfg80211_get_features(struct wiphy *wiphy,
|
||||
wlan_hdd_cfg80211_set_feature(feature_flags,
|
||||
QCA_WLAN_VENDOR_FEATURE_P2P_LISTEN_OFFLOAD);
|
||||
|
||||
if (hdd_ctx->config->oce_sta_enabled)
|
||||
value = 0;
|
||||
status = ucfg_mlme_get_oce_sta_enabled_info(hdd_ctx->hdd_psoc, &value);
|
||||
if (QDF_IS_STATUS_ERROR(status))
|
||||
hdd_err("could not get OCE STA enable info");
|
||||
if (value)
|
||||
wlan_hdd_cfg80211_set_feature(feature_flags,
|
||||
QCA_WLAN_VENDOR_FEATURE_OCE_STA);
|
||||
|
||||
if (hdd_ctx->config->oce_sap_enabled)
|
||||
value = 0;
|
||||
status = ucfg_mlme_get_oce_sap_enabled_info(hdd_ctx->hdd_psoc, &value);
|
||||
if (QDF_IS_STATUS_ERROR(status))
|
||||
hdd_err("could not get OCE SAP enable info");
|
||||
if (value)
|
||||
wlan_hdd_cfg80211_set_feature(feature_flags,
|
||||
QCA_WLAN_VENDOR_FEATURE_OCE_STA_CFON);
|
||||
|
||||
@@ -6014,16 +6024,29 @@ __wlan_hdd_cfg80211_wifi_configuration_set(struct wiphy *wiphy,
|
||||
if (adapter->device_mode == QDF_STA_MODE &&
|
||||
tb[QCA_WLAN_VENDOR_ATTR_CONFIG_DISABLE_FILS]) {
|
||||
uint8_t disable_fils;
|
||||
bool value;
|
||||
|
||||
disable_fils = nla_get_u8(tb[
|
||||
QCA_WLAN_VENDOR_ATTR_CONFIG_DISABLE_FILS]);
|
||||
hdd_debug("Set disable_fils - %d", disable_fils);
|
||||
value = !disable_fils;
|
||||
|
||||
qdf_status = sme_update_fils_setting(mac_handle,
|
||||
adapter->session_id,
|
||||
disable_fils);
|
||||
qdf_status = ucfg_mlme_set_fils_enabled_info(hdd_ctx->hdd_psoc,
|
||||
value);
|
||||
if (QDF_IS_STATUS_ERROR(qdf_status))
|
||||
hdd_err("could not set fils enabled info");
|
||||
|
||||
qdf_status = ucfg_mlme_set_enable_bcast_probe_rsp(
|
||||
hdd_ctx->hdd_psoc, value);
|
||||
if (QDF_IS_STATUS_ERROR(qdf_status))
|
||||
hdd_err("could not set enable bcast probe resp info");
|
||||
|
||||
qdf_status = wma_cli_set_command(
|
||||
(int)adapter->session_id,
|
||||
(int)WMI_VDEV_PARAM_ENABLE_BCAST_PROBE_RESPONSE,
|
||||
!disable_fils, VDEV_CMD);
|
||||
if (qdf_status != QDF_STATUS_SUCCESS) {
|
||||
hdd_err("set disable_fils failed");
|
||||
hdd_err("failed to set enable bcast probe resp");
|
||||
ret_val = -EINVAL;
|
||||
}
|
||||
}
|
||||
@@ -12067,8 +12090,6 @@ int wlan_hdd_cfg80211_init(struct device *dev,
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0))
|
||||
wiphy_ext_feature_set(wiphy, NL80211_EXT_FEATURE_VHT_IBSS);
|
||||
#endif
|
||||
if (pCfg->is_fils_enabled)
|
||||
wlan_hdd_cfg80211_set_wiphy_fils_feature(wiphy);
|
||||
|
||||
wlan_hdd_cfg80211_set_wiphy_scan_flags(wiphy);
|
||||
|
||||
@@ -12349,10 +12370,20 @@ static void wlan_hdd_update_ht_cap(struct hdd_context *hdd_ctx)
|
||||
void wlan_hdd_update_wiphy(struct hdd_context *hdd_ctx)
|
||||
{
|
||||
int value;
|
||||
bool fils_enabled;
|
||||
QDF_STATUS status;
|
||||
|
||||
ucfg_mlme_get_sap_max_peers(hdd_ctx->hdd_psoc, &value);
|
||||
hdd_ctx->wiphy->max_ap_assoc_sta = value;
|
||||
wlan_hdd_update_ht_cap(hdd_ctx);
|
||||
|
||||
fils_enabled = 0;
|
||||
status = ucfg_mlme_get_fils_enabled_info(hdd_ctx->hdd_psoc,
|
||||
&fils_enabled);
|
||||
if (QDF_IS_STATUS_ERROR(status))
|
||||
hdd_err("could not get fils enabled info");
|
||||
if (fils_enabled)
|
||||
wlan_hdd_cfg80211_set_wiphy_fils_feature(hdd_ctx->wiphy);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -15133,14 +15164,20 @@ static int wlan_hdd_cfg80211_set_fils_config(struct hdd_adapter *adapter,
|
||||
struct csr_roam_profile *roam_profile;
|
||||
enum eAniAuthType auth_type;
|
||||
uint8_t *buf;
|
||||
bool value;
|
||||
QDF_STATUS status;
|
||||
struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
||||
|
||||
roam_profile = hdd_roam_profile(adapter);
|
||||
|
||||
if (!hdd_ctx->config->is_fils_enabled) {
|
||||
hdd_err("FILS disabled");
|
||||
value = 0;
|
||||
status = ucfg_mlme_get_fils_enabled_info(hdd_ctx->hdd_psoc, &value);
|
||||
if (QDF_IS_STATUS_ERROR(status) || !value) {
|
||||
hdd_err("get_fils_enabled status: %d fils_enabled: %d",
|
||||
status, value);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
hdd_clear_fils_connection_info(adapter);
|
||||
roam_profile->fils_con_info =
|
||||
qdf_mem_malloc(sizeof(*roam_profile->fils_con_info));
|
||||
|
@@ -8793,14 +8793,6 @@ static void hdd_override_ini_config(struct hdd_context *hdd_ctx)
|
||||
hdd_ctx->config->IpaConfig);
|
||||
}
|
||||
|
||||
if (!hdd_ctx->config->rssi_assoc_reject_enabled ||
|
||||
!hdd_ctx->config->enable_bcast_probe_rsp) {
|
||||
hdd_debug("OCE disabled, rssi_assoc_reject_enabled: %d enable_bcast_probe_rsp: %d",
|
||||
hdd_ctx->config->rssi_assoc_reject_enabled,
|
||||
hdd_ctx->config->enable_bcast_probe_rsp);
|
||||
hdd_ctx->config->oce_sta_enabled = 0;
|
||||
}
|
||||
|
||||
if (hdd_ctx->config->action_oui_enable && !ucfg_action_oui_enabled()) {
|
||||
hdd_ctx->config->action_oui_enable = 0;
|
||||
hdd_err("Ignore ini: %s, since no action_oui component",
|
||||
|
@@ -1654,17 +1654,6 @@ QDF_STATUS sme_set_default_scan_ie(tHalHandle hal, uint16_t session_id,
|
||||
*/
|
||||
QDF_STATUS sme_update_session_param(tHalHandle hal, uint8_t session_id,
|
||||
uint32_t param_type, uint32_t param_val);
|
||||
|
||||
/**
|
||||
* sme_update_fils_setting() - API to update PE FILS setting
|
||||
* @hal: HAL handle for device
|
||||
* @session_id: Session ID
|
||||
* @param_val: Param value to be update
|
||||
*
|
||||
* Return: QDF_STATUS
|
||||
*/
|
||||
QDF_STATUS sme_update_fils_setting(tHalHandle hal, uint8_t session_id,
|
||||
uint8_t param_val);
|
||||
#ifdef WLAN_FEATURE_FIPS
|
||||
/**
|
||||
* sme_fips_request() - Perform a FIPS certification operation
|
||||
|
@@ -6065,26 +6065,6 @@ QDF_STATUS sme_set_tx_power(tHalHandle hHal, uint8_t sessionId,
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
QDF_STATUS sme_update_fils_setting(tHalHandle hal, uint8_t session_id,
|
||||
uint8_t param_val)
|
||||
{
|
||||
QDF_STATUS status;
|
||||
tpAniSirGlobal pMac = PMAC_STRUCT(hal);
|
||||
|
||||
pMac->roam.configParam.is_fils_enabled = !param_val;
|
||||
|
||||
pMac->roam.configParam.enable_bcast_probe_rsp = !param_val;
|
||||
status = wma_cli_set_command((int)session_id,
|
||||
(int)WMI_VDEV_PARAM_ENABLE_BCAST_PROBE_RESPONSE,
|
||||
!param_val, VDEV_CMD);
|
||||
if (status)
|
||||
QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_ERROR,
|
||||
"%s: Failed to set enable bcast probe setting",
|
||||
__func__);
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
QDF_STATUS sme_update_session_param(tHalHandle hal, uint8_t session_id,
|
||||
uint32_t param_type, uint32_t param_val)
|
||||
{
|
||||
|
@@ -16170,7 +16170,7 @@ QDF_STATUS csr_send_join_req_msg(tpAniSirGlobal pMac, uint32_t sessionId,
|
||||
|
||||
if (pSession->pCurRoamProfile->csrPersona == QDF_STA_MODE)
|
||||
csr_join_req->enable_bcast_probe_rsp =
|
||||
pMac->roam.configParam.enable_bcast_probe_rsp;
|
||||
pMac->mlme_cfg->oce.enable_bcast_probe_rsp;
|
||||
|
||||
csr_join_req->enable_session_twt_support = csr_enable_twt(pIes);
|
||||
status = umac_send_mb_message_to_mac(csr_join_req);
|
||||
@@ -17108,13 +17108,13 @@ QDF_STATUS csr_issue_add_sta_for_session_req(tpAniSirGlobal pMac,
|
||||
qos_aggr->tx_aggr_sw_retry_threshold_vo;
|
||||
|
||||
add_sta_self_req->enable_bcast_probe_rsp =
|
||||
pMac->roam.configParam.enable_bcast_probe_rsp;
|
||||
pMac->mlme_cfg->oce.enable_bcast_probe_rsp;
|
||||
add_sta_self_req->fils_max_chan_guard_time =
|
||||
pMac->mlme_cfg->sta.fils_max_chan_guard_time;
|
||||
add_sta_self_req->pkt_err_disconn_th =
|
||||
pMac->roam.configParam.pkt_err_disconn_th;
|
||||
pMac->roam.configParam.pkt_err_disconn_th;
|
||||
add_sta_self_req->oce_feature_bitmap =
|
||||
pMac->roam.configParam.oce_feature_bitmap;
|
||||
pMac->mlme_cfg->oce.feature_bitmap;
|
||||
|
||||
msg.type = WMA_ADD_STA_SELF_REQ;
|
||||
msg.reserved = 0;
|
||||
|
新しいイシューから参照
ユーザーをブロックする