qcacld-3.0: Update for converged NAN config params
Update driver to use NAN config params based converged CFG component. Cleanup hdd config references to nan ini params. Change-Id: I5af85d68ee53ad557e64523f7a1719e328536926 CRs-fixed: 2290360
Este commit está contenido en:

cometido por
nshrivas

padre
7bab3b4886
commit
dcd0fdfcc0
1
Kbuild
1
Kbuild
@@ -1195,6 +1195,7 @@ WLAN_NAN_OBJS := $(NAN_CORE_DIR)/nan_main.o \
|
|||||||
$(NAN_CORE_DIR)/nan_api.o \
|
$(NAN_CORE_DIR)/nan_api.o \
|
||||||
$(NAN_CORE_DIR)/nan_utils.o \
|
$(NAN_CORE_DIR)/nan_utils.o \
|
||||||
$(NAN_UCFG_DIR)/nan_ucfg_api.o \
|
$(NAN_UCFG_DIR)/nan_ucfg_api.o \
|
||||||
|
$(NAN_UCFG_DIR)/cfg_nan.o \
|
||||||
$(NAN_TGT_DIR)/target_if_nan.o \
|
$(NAN_TGT_DIR)/target_if_nan.o \
|
||||||
$(NAN_OS_IF_DIR)/os_if_nan.o
|
$(NAN_OS_IF_DIR)/os_if_nan.o
|
||||||
endif
|
endif
|
||||||
|
@@ -31,7 +31,14 @@
|
|||||||
#define CFG_TDLS_ALL
|
#define CFG_TDLS_ALL
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef WLAN_FEATURE_NAN_CONVERGENCE
|
||||||
|
#include "cfg_nan.h"
|
||||||
|
#else
|
||||||
|
#define CFG_NAN_ALL
|
||||||
|
#endif
|
||||||
|
|
||||||
#define CFG_ALL \
|
#define CFG_ALL \
|
||||||
CFG_CONVERGED_ALL \
|
CFG_CONVERGED_ALL \
|
||||||
CFG_P2P_ALL \
|
CFG_P2P_ALL \
|
||||||
CFG_TDLS_ALL
|
CFG_TDLS_ALL \
|
||||||
|
CFG_NAN_ALL
|
||||||
|
@@ -634,38 +634,6 @@ bool pmo_core_is_lpass_enabled(struct wlan_objmgr_vdev *vdev)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_NAN
|
|
||||||
/**
|
|
||||||
* pmo_is_nan_enabled() - check if NaN is enabled
|
|
||||||
* @vdev: objmgr vdev handle
|
|
||||||
*
|
|
||||||
* WoW is needed if LPASS or NaN feature is enabled in INI because
|
|
||||||
* target can't wake up itself if its put in PDEV suspend when LPASS
|
|
||||||
* or NaN features are supported
|
|
||||||
*
|
|
||||||
* Return: true if NaN is enabled else false
|
|
||||||
*/
|
|
||||||
static inline
|
|
||||||
bool pmo_core_is_nan_enabled(struct wlan_objmgr_vdev *vdev)
|
|
||||||
{
|
|
||||||
bool nan_enable;
|
|
||||||
struct pmo_vdev_priv_obj *vdev_ctx;
|
|
||||||
|
|
||||||
vdev_ctx = pmo_vdev_get_priv(vdev);
|
|
||||||
qdf_spin_lock_bh(&vdev_ctx->pmo_vdev_lock);
|
|
||||||
nan_enable = vdev_ctx->pmo_psoc_ctx->psoc_cfg.nan_enable;
|
|
||||||
qdf_spin_unlock_bh(&vdev_ctx->pmo_vdev_lock);
|
|
||||||
|
|
||||||
return nan_enable;
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
static inline
|
|
||||||
bool pmo_core_is_nan_enabled(struct wlan_objmgr_vdev *vdev)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* pmo_get_event_bitmap_idx() - get indices for extended wow bitmaps
|
* pmo_get_event_bitmap_idx() - get indices for extended wow bitmaps
|
||||||
* @event: wow event
|
* @event: wow event
|
||||||
|
@@ -26,6 +26,7 @@
|
|||||||
#include <wlan_scan_ucfg_api.h>
|
#include <wlan_scan_ucfg_api.h>
|
||||||
#include "wlan_pmo_static_config.h"
|
#include "wlan_pmo_static_config.h"
|
||||||
#include "wlan_reg_services_api.h"
|
#include "wlan_reg_services_api.h"
|
||||||
|
#include "cfg_nan_api.h"
|
||||||
|
|
||||||
void pmo_set_wow_event_bitmap(WOW_WAKE_EVENT_TYPE event,
|
void pmo_set_wow_event_bitmap(WOW_WAKE_EVENT_TYPE event,
|
||||||
uint32_t wow_bitmap_size,
|
uint32_t wow_bitmap_size,
|
||||||
@@ -315,7 +316,7 @@ bool pmo_core_is_wow_applicable(struct wlan_objmgr_psoc *psoc)
|
|||||||
} else if (pmo_core_is_lpass_enabled(vdev)) {
|
} else if (pmo_core_is_lpass_enabled(vdev)) {
|
||||||
pmo_debug("LPASS is enabled, enabling WoW");
|
pmo_debug("LPASS is enabled, enabling WoW");
|
||||||
is_wow_applicable = true;
|
is_wow_applicable = true;
|
||||||
} else if (pmo_core_is_nan_enabled(vdev)) {
|
} else if (cfg_nan_get_enable(psoc)) {
|
||||||
pmo_debug("NAN is enabled, enabling WoW");
|
pmo_debug("NAN is enabled, enabling WoW");
|
||||||
is_wow_applicable = true;
|
is_wow_applicable = true;
|
||||||
} else if (pmo_core_get_vdev_op_mode(vdev) == QDF_NDI_MODE) {
|
} else if (pmo_core_get_vdev_op_mode(vdev) == QDF_NDI_MODE) {
|
||||||
|
@@ -278,7 +278,6 @@ enum pmo_auto_pwr_detect_failure_mode {
|
|||||||
* @deauth_enable: true when wake up on deauth is enabled else false
|
* @deauth_enable: true when wake up on deauth is enabled else false
|
||||||
* @disassoc_enable: true when wake up on disassoc is enabled else false
|
* @disassoc_enable: true when wake up on disassoc is enabled else false
|
||||||
* @bmiss_enable: true when wake up on bmiss is enabled else false
|
* @bmiss_enable: true when wake up on bmiss is enabled else false
|
||||||
* @nan_enable: true when nan is enabled else false
|
|
||||||
* @lpass_enable: true when lpass is enabled else false
|
* @lpass_enable: true when lpass is enabled else false
|
||||||
* @sta_dynamic_dtim: station dynamic DTIM value
|
* @sta_dynamic_dtim: station dynamic DTIM value
|
||||||
* @sta_mod_dtim: station modulated DTIM value
|
* @sta_mod_dtim: station modulated DTIM value
|
||||||
@@ -305,7 +304,6 @@ struct pmo_psoc_cfg {
|
|||||||
bool deauth_enable;
|
bool deauth_enable;
|
||||||
bool disassoc_enable;
|
bool disassoc_enable;
|
||||||
bool bmiss_enable;
|
bool bmiss_enable;
|
||||||
bool nan_enable;
|
|
||||||
bool lpass_enable;
|
bool lpass_enable;
|
||||||
uint8_t sta_dynamic_dtim;
|
uint8_t sta_dynamic_dtim;
|
||||||
uint8_t sta_mod_dtim;
|
uint8_t sta_mod_dtim;
|
||||||
|
@@ -92,7 +92,6 @@ enum active_apf_mode {
|
|||||||
* @tx_flow_stop_queue_th: Threshold to stop queue in percentage
|
* @tx_flow_stop_queue_th: Threshold to stop queue in percentage
|
||||||
* @tx_flow_start_queue_offset: Start queue offset in percentage
|
* @tx_flow_start_queue_offset: Start queue offset in percentage
|
||||||
* @is_lpass_enabled: Indicate whether LPASS is enabled or not
|
* @is_lpass_enabled: Indicate whether LPASS is enabled or not
|
||||||
* @is_nan_enabled: Indicate whether NAN is enabled or not
|
|
||||||
* @bool apf_packet_filter_enable; Indicate apf filter enabled or not
|
* @bool apf_packet_filter_enable; Indicate apf filter enabled or not
|
||||||
* @tx_chain_mask_cck: Tx chain mask enabled or not
|
* @tx_chain_mask_cck: Tx chain mask enabled or not
|
||||||
* @self_gen_frm_pwr: Self gen from power
|
* @self_gen_frm_pwr: Self gen from power
|
||||||
@@ -149,9 +148,6 @@ struct cds_config_info {
|
|||||||
#endif
|
#endif
|
||||||
#ifdef WLAN_FEATURE_LPSS
|
#ifdef WLAN_FEATURE_LPSS
|
||||||
bool is_lpass_enabled;
|
bool is_lpass_enabled;
|
||||||
#endif
|
|
||||||
#ifdef WLAN_FEATURE_NAN
|
|
||||||
bool is_nan_enabled;
|
|
||||||
#endif
|
#endif
|
||||||
bool apf_packet_filter_enable;
|
bool apf_packet_filter_enable;
|
||||||
bool tx_chain_mask_cck;
|
bool tx_chain_mask_cck;
|
||||||
|
@@ -7489,18 +7489,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_ENABLE_LPASS_SUPPORT_MAX (1)
|
#define CFG_ENABLE_LPASS_SUPPORT_MAX (1)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* NaN feature support configuration
|
|
||||||
* gEnableNanSupport = 0 means NaN is not supported
|
|
||||||
* gEnableNanSupport = 1 means NaN is supported
|
|
||||||
*/
|
|
||||||
#ifdef WLAN_FEATURE_NAN
|
|
||||||
#define CFG_ENABLE_NAN_SUPPORT "gEnableNanSupport"
|
|
||||||
#define CFG_ENABLE_NAN_SUPPORT_DEFAULT (0)
|
|
||||||
#define CFG_ENABLE_NAN_SUPPORT_MIN (0)
|
|
||||||
#define CFG_ENABLE_NAN_SUPPORT_MAX (1)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define CFG_ENABLE_SELF_RECOVERY "gEnableSelfRecovery"
|
#define CFG_ENABLE_SELF_RECOVERY "gEnableSelfRecovery"
|
||||||
#define CFG_ENABLE_SELF_RECOVERY_MIN (0)
|
#define CFG_ENABLE_SELF_RECOVERY_MIN (0)
|
||||||
#define CFG_ENABLE_SELF_RECOVERY_MAX (1)
|
#define CFG_ENABLE_SELF_RECOVERY_MAX (1)
|
||||||
@@ -8588,26 +8576,6 @@ enum dot11p_mode {
|
|||||||
#define CFG_IGNORE_PEER_HT_MODE_MAX (1)
|
#define CFG_IGNORE_PEER_HT_MODE_MAX (1)
|
||||||
#define CFG_IGNORE_PEER_HT_MODE_DEFAULT (0)
|
#define CFG_IGNORE_PEER_HT_MODE_DEFAULT (0)
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_NAN_DATAPATH
|
|
||||||
/*
|
|
||||||
* Enable NaN data path feature. NaN data path enables
|
|
||||||
* NaN supported devices to exchange data over traditional
|
|
||||||
* TCP/UDP network stack.
|
|
||||||
*/
|
|
||||||
#define CFG_ENABLE_NAN_DATAPATH_NAME "genable_nan_datapath"
|
|
||||||
#define CFG_ENABLE_NAN_DATAPATH_MIN (0)
|
|
||||||
#define CFG_ENABLE_NAN_DATAPATH_MAX (1)
|
|
||||||
#define CFG_ENABLE_NAN_DATAPATH_DEFAULT (0)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* NAN channel on which NAN data interface to start
|
|
||||||
*/
|
|
||||||
#define CFG_ENABLE_NAN_NDI_CHANNEL_NAME "gnan_datapath_ndi_channel"
|
|
||||||
#define CFG_ENABLE_NAN_NDI_CHANNEL_MIN (6)
|
|
||||||
#define CFG_ENABLE_NAN_NDI_CHANNEL_MAX (149)
|
|
||||||
#define CFG_ENABLE_NAN_NDI_CHANNEL_DEFAULT (6)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Enable/Disable to initiate BUG report in case of fatal event
|
* Enable/Disable to initiate BUG report in case of fatal event
|
||||||
* Default: Enable
|
* Default: Enable
|
||||||
@@ -11540,30 +11508,6 @@ enum hdd_external_acs_policy {
|
|||||||
#define CFG_ROAM_NUM_DISALLOWED_APS_MAX (8)
|
#define CFG_ROAM_NUM_DISALLOWED_APS_MAX (8)
|
||||||
#define CFG_ROAM_NUM_DISALLOWED_APS_DEFAULT (3)
|
#define CFG_ROAM_NUM_DISALLOWED_APS_DEFAULT (3)
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gEnableNDIMacRandomization - When enabled this will randomize NDI Mac
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 1
|
|
||||||
* @Default: 1
|
|
||||||
*
|
|
||||||
* When enabled this will randomize NDI Mac
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: NAN
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_RANDOMIZE_NDI_MAC_NAME "gEnableNDIMacRandomization"
|
|
||||||
#define CFG_RANDOMIZE_NDI_MAC_MIN (0)
|
|
||||||
#define CFG_RANDOMIZE_NDI_MAC_MAX (1)
|
|
||||||
#define CFG_RANDOMIZE_NDI_MAC_DEFAULT (1)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* gEnableLPRx - Enable/Disable LPRx
|
* gEnableLPRx - Enable/Disable LPRx
|
||||||
@@ -14476,9 +14420,6 @@ struct hdd_config {
|
|||||||
|
|
||||||
#ifdef WLAN_FEATURE_LPSS
|
#ifdef WLAN_FEATURE_LPSS
|
||||||
bool enable_lpass_support;
|
bool enable_lpass_support;
|
||||||
#endif
|
|
||||||
#ifdef WLAN_FEATURE_NAN
|
|
||||||
bool enable_nan_support;
|
|
||||||
#endif
|
#endif
|
||||||
bool enableSelfRecovery;
|
bool enableSelfRecovery;
|
||||||
#ifdef FEATURE_WLAN_FORCE_SAP_SCC
|
#ifdef FEATURE_WLAN_FORCE_SAP_SCC
|
||||||
@@ -14640,10 +14581,6 @@ struct hdd_config {
|
|||||||
bool acs_support_for_dfs_ltecoex;
|
bool acs_support_for_dfs_ltecoex;
|
||||||
bool bug_report_for_no_scan_results;
|
bool bug_report_for_no_scan_results;
|
||||||
bool bug_on_reinit_failure;
|
bool bug_on_reinit_failure;
|
||||||
#ifdef WLAN_FEATURE_NAN_DATAPATH
|
|
||||||
bool enable_nan_datapath;
|
|
||||||
uint8_t nan_datapath_ndi_channel;
|
|
||||||
#endif
|
|
||||||
uint32_t iface_change_wait_time;
|
uint32_t iface_change_wait_time;
|
||||||
/* parameter to control GTX */
|
/* parameter to control GTX */
|
||||||
uint32_t tgt_gtx_usr_cfg;
|
uint32_t tgt_gtx_usr_cfg;
|
||||||
@@ -14765,7 +14702,6 @@ struct hdd_config {
|
|||||||
uint8_t lower_brssi_thresh;
|
uint8_t lower_brssi_thresh;
|
||||||
bool enable_dtim_1chrx;
|
bool enable_dtim_1chrx;
|
||||||
int8_t rssi_thresh_offset_5g;
|
int8_t rssi_thresh_offset_5g;
|
||||||
bool is_ndi_mac_randomized;
|
|
||||||
uint32_t scan_11d_interval;
|
uint32_t scan_11d_interval;
|
||||||
bool chan_switch_hostapd_rate_enabled;
|
bool chan_switch_hostapd_rate_enabled;
|
||||||
bool is_bssid_hint_priority;
|
bool is_bssid_hint_priority;
|
||||||
|
@@ -37,31 +37,6 @@ int wlan_hdd_cfg80211_nan_request(struct wiphy *wiphy,
|
|||||||
int data_len);
|
int data_len);
|
||||||
|
|
||||||
bool wlan_hdd_nan_is_supported(void);
|
bool wlan_hdd_nan_is_supported(void);
|
||||||
/**
|
|
||||||
* hdd_nan_populate_cds_config() - Populate NAN cds configuration
|
|
||||||
* @cds_cfg: CDS Configuration
|
|
||||||
* @hdd_ctx: Pointer to hdd context
|
|
||||||
*
|
|
||||||
* Return: none
|
|
||||||
*/
|
|
||||||
static inline void hdd_nan_populate_cds_config(struct cds_config_info *cds_cfg,
|
|
||||||
struct hdd_context *hdd_ctx)
|
|
||||||
{
|
|
||||||
cds_cfg->is_nan_enabled = hdd_ctx->config->enable_nan_support;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* hdd_nan_populate_pmo_config() - Populate NAN pmo configuration
|
|
||||||
* @pmo_cfg: PMO Configuration
|
|
||||||
* @hdd_ctx: Pointer to hdd context
|
|
||||||
*
|
|
||||||
* Return: none
|
|
||||||
*/
|
|
||||||
static inline void hdd_nan_populate_pmo_config(struct pmo_psoc_cfg *pmo_cfg,
|
|
||||||
struct hdd_context *hdd_ctx)
|
|
||||||
{
|
|
||||||
pmo_cfg->nan_enable = hdd_ctx->config->enable_nan_support;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* wlan_hdd_cfg80211_nan_callback() - cfg80211 NAN event handler
|
* wlan_hdd_cfg80211_nan_callback() - cfg80211 NAN event handler
|
||||||
|
@@ -2977,15 +2977,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_ENABLE_LPASS_SUPPORT_MAX),
|
CFG_ENABLE_LPASS_SUPPORT_MAX),
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_NAN
|
|
||||||
REG_VARIABLE(CFG_ENABLE_NAN_SUPPORT, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, enable_nan_support,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_NAN_SUPPORT_DEFAULT,
|
|
||||||
CFG_ENABLE_NAN_SUPPORT_MIN,
|
|
||||||
CFG_ENABLE_NAN_SUPPORT_MAX),
|
|
||||||
#endif
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_SELF_RECOVERY, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ENABLE_SELF_RECOVERY, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, enableSelfRecovery,
|
struct hdd_config, enableSelfRecovery,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -3781,22 +3772,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
VAR_FLAGS_OPTIONAL,
|
VAR_FLAGS_OPTIONAL,
|
||||||
(void *) CFG_ENABLE_TX_SCHED_WRR_BK_DEFAULT),
|
(void *) CFG_ENABLE_TX_SCHED_WRR_BK_DEFAULT),
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_NAN_DATAPATH
|
|
||||||
REG_VARIABLE(CFG_ENABLE_NAN_DATAPATH_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, enable_nan_datapath,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_NAN_DATAPATH_DEFAULT,
|
|
||||||
CFG_ENABLE_NAN_DATAPATH_MIN,
|
|
||||||
CFG_ENABLE_NAN_DATAPATH_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_NAN_NDI_CHANNEL_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, nan_datapath_ndi_channel,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_NAN_NDI_CHANNEL_DEFAULT,
|
|
||||||
CFG_ENABLE_NAN_NDI_CHANNEL_MIN,
|
|
||||||
CFG_ENABLE_NAN_NDI_CHANNEL_MAX),
|
|
||||||
#endif
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_CREATE_BUG_REPORT_FOR_SCAN, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_CREATE_BUG_REPORT_FOR_SCAN, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, bug_report_for_no_scan_results,
|
struct hdd_config, bug_report_for_no_scan_results,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -4646,13 +4621,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_DTIM_1CHRX_ENABLE_MIN,
|
CFG_DTIM_1CHRX_ENABLE_MIN,
|
||||||
CFG_DTIM_1CHRX_ENABLE_MAX),
|
CFG_DTIM_1CHRX_ENABLE_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_RANDOMIZE_NDI_MAC_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, is_ndi_mac_randomized,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_RANDOMIZE_NDI_MAC_DEFAULT,
|
|
||||||
CFG_RANDOMIZE_NDI_MAC_MIN,
|
|
||||||
CFG_RANDOMIZE_NDI_MAC_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_SCAN_11D_INTERVAL_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_SCAN_11D_INTERVAL_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, scan_11d_interval,
|
struct hdd_config, scan_11d_interval,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -6962,7 +6930,6 @@ void hdd_cfg_print(struct hdd_context *hdd_ctx)
|
|||||||
hdd_debug("Name = [%s] Value = [%u]",
|
hdd_debug("Name = [%s] Value = [%u]",
|
||||||
CFG_SAP_MAX_INACTIVITY_OVERRIDE_NAME,
|
CFG_SAP_MAX_INACTIVITY_OVERRIDE_NAME,
|
||||||
hdd_ctx->config->sap_max_inactivity_override);
|
hdd_ctx->config->sap_max_inactivity_override);
|
||||||
hdd_ndp_print_ini_config(hdd_ctx);
|
|
||||||
hdd_debug("Name = [%s] Value = [%s]",
|
hdd_debug("Name = [%s] Value = [%s]",
|
||||||
CFG_RM_CAPABILITY_NAME,
|
CFG_RM_CAPABILITY_NAME,
|
||||||
hdd_ctx->config->rm_capability);
|
hdd_ctx->config->rm_capability);
|
||||||
@@ -7057,9 +7024,6 @@ void hdd_cfg_print(struct hdd_context *hdd_ctx)
|
|||||||
hdd_debug("Name = [%s] value = [%u]",
|
hdd_debug("Name = [%s] value = [%u]",
|
||||||
CFG_DTIM_1CHRX_ENABLE_NAME,
|
CFG_DTIM_1CHRX_ENABLE_NAME,
|
||||||
hdd_ctx->config->enable_dtim_1chrx);
|
hdd_ctx->config->enable_dtim_1chrx);
|
||||||
hdd_debug("Name = [%s] value = [%u]",
|
|
||||||
CFG_RANDOMIZE_NDI_MAC_NAME,
|
|
||||||
hdd_ctx->config->is_ndi_mac_randomized);
|
|
||||||
hdd_debug("Name = [%s] value = [%u]",
|
hdd_debug("Name = [%s] value = [%u]",
|
||||||
CFG_DOT11P_MODE_NAME,
|
CFG_DOT11P_MODE_NAME,
|
||||||
hdd_ctx->config->dot11p_mode);
|
hdd_ctx->config->dot11p_mode);
|
||||||
|
@@ -9513,7 +9513,6 @@ static int hdd_update_cds_config(struct hdd_context *hdd_ctx)
|
|||||||
|
|
||||||
hdd_ra_populate_cds_config(cds_cfg, hdd_ctx);
|
hdd_ra_populate_cds_config(cds_cfg, hdd_ctx);
|
||||||
hdd_txrx_populate_cds_config(cds_cfg, hdd_ctx);
|
hdd_txrx_populate_cds_config(cds_cfg, hdd_ctx);
|
||||||
hdd_nan_populate_cds_config(cds_cfg, hdd_ctx);
|
|
||||||
hdd_lpass_populate_cds_config(cds_cfg, hdd_ctx);
|
hdd_lpass_populate_cds_config(cds_cfg, hdd_ctx);
|
||||||
cds_init_ini_config(cds_cfg);
|
cds_init_ini_config(cds_cfg);
|
||||||
return 0;
|
return 0;
|
||||||
@@ -13380,7 +13379,6 @@ static int hdd_update_pmo_config(struct hdd_context *hdd_ctx)
|
|||||||
hdd_ctx->config->auto_pwr_save_fail_mode;
|
hdd_ctx->config->auto_pwr_save_fail_mode;
|
||||||
|
|
||||||
hdd_ra_populate_pmo_config(&psoc_cfg, hdd_ctx);
|
hdd_ra_populate_pmo_config(&psoc_cfg, hdd_ctx);
|
||||||
hdd_nan_populate_pmo_config(&psoc_cfg, hdd_ctx);
|
|
||||||
hdd_lpass_populate_pmo_config(&psoc_cfg, hdd_ctx);
|
hdd_lpass_populate_pmo_config(&psoc_cfg, hdd_ctx);
|
||||||
|
|
||||||
status = ucfg_pmo_update_psoc_config(hdd_ctx->hdd_psoc, &psoc_cfg);
|
status = ucfg_pmo_update_psoc_config(hdd_ctx->hdd_psoc, &psoc_cfg);
|
||||||
|
@@ -32,6 +32,7 @@
|
|||||||
#include "wlan_hdd_main.h"
|
#include "wlan_hdd_main.h"
|
||||||
#include "wlan_hdd_nan.h"
|
#include "wlan_hdd_nan.h"
|
||||||
#include <qca_vendor.h>
|
#include <qca_vendor.h>
|
||||||
|
#include "cfg_nan_api.h"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* __wlan_hdd_cfg80211_nan_request() - cfg80211 NAN request handler
|
* __wlan_hdd_cfg80211_nan_request() - cfg80211 NAN request handler
|
||||||
@@ -68,7 +69,7 @@ static int __wlan_hdd_cfg80211_nan_request(struct wiphy *wiphy,
|
|||||||
return -EPERM;
|
return -EPERM;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!hdd_ctx->config->enable_nan_support) {
|
if (!cfg_nan_get_enable(hdd_ctx->hdd_psoc)) {
|
||||||
hdd_err("NaN support is not enabled in INI");
|
hdd_err("NaN support is not enabled in INI");
|
||||||
return -EPERM;
|
return -EPERM;
|
||||||
}
|
}
|
||||||
|
@@ -36,20 +36,7 @@
|
|||||||
#include "os_if_nan.h"
|
#include "os_if_nan.h"
|
||||||
#include "wlan_nan_api.h"
|
#include "wlan_nan_api.h"
|
||||||
#include "nan_public_structs.h"
|
#include "nan_public_structs.h"
|
||||||
|
#include "cfg_nan_api.h"
|
||||||
/**
|
|
||||||
* hdd_ndp_print_ini_config()- Print nan datapath specific INI configuration
|
|
||||||
* @hdd_ctx: handle to hdd context
|
|
||||||
*
|
|
||||||
* Return: None
|
|
||||||
*/
|
|
||||||
void hdd_ndp_print_ini_config(struct hdd_context *hdd_ctx)
|
|
||||||
{
|
|
||||||
hdd_debug("Name = [%s] Value = [%u]", CFG_ENABLE_NAN_DATAPATH_NAME,
|
|
||||||
hdd_ctx->config->enable_nan_datapath);
|
|
||||||
hdd_debug("Name = [%s] Value = [%u]", CFG_ENABLE_NAN_NDI_CHANNEL_NAME,
|
|
||||||
hdd_ctx->config->nan_datapath_ndi_channel);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* hdd_nan_datapath_target_config() - Configure NAN datapath features
|
* hdd_nan_datapath_target_config() - Configure NAN datapath features
|
||||||
@@ -62,15 +49,15 @@ void hdd_ndp_print_ini_config(struct hdd_context *hdd_ctx)
|
|||||||
* Return: None
|
* Return: None
|
||||||
*/
|
*/
|
||||||
void hdd_nan_datapath_target_config(struct hdd_context *hdd_ctx,
|
void hdd_nan_datapath_target_config(struct hdd_context *hdd_ctx,
|
||||||
struct wma_tgt_cfg *cfg)
|
struct wma_tgt_cfg *tgt_cfg)
|
||||||
{
|
{
|
||||||
hdd_ctx->nan_datapath_enabled =
|
hdd_ctx->nan_datapath_enabled =
|
||||||
hdd_ctx->config->enable_nan_datapath &&
|
cfg_nan_get_datapath_enable(hdd_ctx->hdd_psoc) &&
|
||||||
cfg->nan_datapath_enabled;
|
tgt_cfg->nan_datapath_enabled;
|
||||||
hdd_debug("final: %d, host: %d, fw: %d",
|
hdd_debug("NAN Datapath Enable: %d (Host: %d FW: %d)",
|
||||||
hdd_ctx->nan_datapath_enabled,
|
hdd_ctx->nan_datapath_enabled,
|
||||||
hdd_ctx->config->enable_nan_datapath,
|
cfg_nan_get_datapath_enable(hdd_ctx->hdd_psoc),
|
||||||
cfg->nan_datapath_enabled);
|
tgt_cfg->nan_datapath_enabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -485,7 +472,7 @@ int hdd_ndi_open(char *iface_name)
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hdd_ctx->config->is_ndi_mac_randomized) {
|
if (cfg_nan_get_ndi_mac_randomize(hdd_ctx->hdd_psoc)) {
|
||||||
if (hdd_get_random_nan_mac_addr(hdd_ctx, &random_ndi_mac)) {
|
if (hdd_get_random_nan_mac_addr(hdd_ctx, &random_ndi_mac)) {
|
||||||
hdd_err("get random mac address failed");
|
hdd_err("get random mac address failed");
|
||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
@@ -524,7 +511,7 @@ int hdd_ndi_start(char *iface_name, uint16_t transaction_id)
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
op_channel = hdd_ctx->config->nan_datapath_ndi_channel;
|
op_channel = cfg_nan_get_ndi_channel(hdd_ctx->hdd_psoc);
|
||||||
adapter = hdd_get_adapter_by_iface_name(hdd_ctx, iface_name);
|
adapter = hdd_get_adapter_by_iface_name(hdd_ctx, iface_name);
|
||||||
if (!adapter) {
|
if (!adapter) {
|
||||||
hdd_err("adapter is null");
|
hdd_err("adapter is null");
|
||||||
|
@@ -49,7 +49,6 @@ struct wireless_dev;
|
|||||||
#endif /* WLAN_FEATURE_NAN_DATAPATH */
|
#endif /* WLAN_FEATURE_NAN_DATAPATH */
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_NAN_DATAPATH
|
#ifdef WLAN_FEATURE_NAN_DATAPATH
|
||||||
void hdd_ndp_print_ini_config(struct hdd_context *hdd_ctx);
|
|
||||||
void hdd_nan_datapath_target_config(struct hdd_context *hdd_ctx,
|
void hdd_nan_datapath_target_config(struct hdd_context *hdd_ctx,
|
||||||
struct wma_tgt_cfg *cfg);
|
struct wma_tgt_cfg *cfg);
|
||||||
void hdd_ndp_event_handler(struct hdd_adapter *adapter,
|
void hdd_ndp_event_handler(struct hdd_adapter *adapter,
|
||||||
@@ -61,9 +60,6 @@ int wlan_hdd_cfg80211_process_ndp_cmd(struct wiphy *wiphy,
|
|||||||
int hdd_init_nan_data_mode(struct hdd_adapter *adapter);
|
int hdd_init_nan_data_mode(struct hdd_adapter *adapter);
|
||||||
void hdd_ndp_session_end_handler(struct hdd_adapter *adapter);
|
void hdd_ndp_session_end_handler(struct hdd_adapter *adapter);
|
||||||
#else
|
#else
|
||||||
static inline void hdd_ndp_print_ini_config(struct hdd_context *hdd_ctx)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
static inline void hdd_nan_datapath_target_config(struct hdd_context *hdd_ctx,
|
static inline void hdd_nan_datapath_target_config(struct hdd_context *hdd_ctx,
|
||||||
struct wma_tgt_cfg *cfg)
|
struct wma_tgt_cfg *cfg)
|
||||||
{
|
{
|
||||||
|
@@ -89,6 +89,7 @@
|
|||||||
#include "target_if_green_ap.h"
|
#include "target_if_green_ap.h"
|
||||||
#include "service_ready_param.h"
|
#include "service_ready_param.h"
|
||||||
#include "wlan_cp_stats_mc_ucfg_api.h"
|
#include "wlan_cp_stats_mc_ucfg_api.h"
|
||||||
|
#include "cfg_nan_api.h"
|
||||||
|
|
||||||
#define WMA_LOG_COMPLETION_TIMER 3000 /* 3 seconds */
|
#define WMA_LOG_COMPLETION_TIMER 3000 /* 3 seconds */
|
||||||
#define WMI_TLV_HEADROOM 128
|
#define WMI_TLV_HEADROOM 128
|
||||||
@@ -1814,7 +1815,7 @@ int wma_process_fw_event_handler(void *ctx, void *htc_packet, uint8_t rx_ctx)
|
|||||||
static void wma_set_nan_enable(tp_wma_handle wma_handle,
|
static void wma_set_nan_enable(tp_wma_handle wma_handle,
|
||||||
struct cds_config_info *cds_cfg)
|
struct cds_config_info *cds_cfg)
|
||||||
{
|
{
|
||||||
wma_handle->is_nan_enabled = cds_cfg->is_nan_enabled;
|
wma_handle->is_nan_enabled = cfg_nan_get_enable(wma_handle->psoc);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
static void wma_set_nan_enable(tp_wma_handle wma_handle,
|
static void wma_set_nan_enable(tp_wma_handle wma_handle,
|
||||||
|
Referencia en una nueva incidencia
Block a user