qcacld-3.0: Add the MLME CFG items to new MLME component

Add the following mlme cfg items:
CFG_AP_PROTECTION_MODE_NAME
CFG_AP_OBSS_PROTECTION_MODE_NAME
CFG_AP_STA_SECURITY_SEPERATION_NAME
CFG_ENABLE_BT_CHAIN_SEPARATION
CFG_AP_QOS_UAPSD_MODE_NAME

Change-Id: Iabdfb7c2492c234cfc3e8f71f33801f0034e578d
CRs-Fixed: 2350626
This commit is contained in:
Pragaspathi Thilagaraj
2018-11-14 22:35:23 +05:30
committed by nshrivas
parent 85a6badcd3
commit 4b5c0601a2
17 changed files with 365 additions and 191 deletions

View File

@@ -267,6 +267,9 @@ static void mlme_init_chainmask_cfg(struct wlan_objmgr_psoc *psoc,
chainmask_info->rx_chain_mask_5g = chainmask_info->rx_chain_mask_5g =
cfg_get(psoc, CFG_RX_CHAIN_MASK_5G); cfg_get(psoc, CFG_RX_CHAIN_MASK_5G);
chainmask_info->enable_bt_chain_separation =
cfg_get(psoc, CFG_ENABLE_BT_CHAIN_SEPARATION);
} }
#ifdef WLAN_FEATURE_11W #ifdef WLAN_FEATURE_11W
@@ -690,6 +693,8 @@ static void mlme_init_qos_cfg(struct wlan_objmgr_psoc *psoc,
cfg_get(psoc, CFG_TX_NON_AGGR_SW_RETRY_VO); cfg_get(psoc, CFG_TX_NON_AGGR_SW_RETRY_VO);
qos_aggr_params->sap_max_inactivity_override = qos_aggr_params->sap_max_inactivity_override =
cfg_get(psoc, CFG_SAP_MAX_INACTIVITY_OVERRIDE); cfg_get(psoc, CFG_SAP_MAX_INACTIVITY_OVERRIDE);
qos_aggr_params->sap_uapsd_enabled =
cfg_get(psoc, CFG_SAP_QOS_UAPSD);
} }
static void mlme_init_mbo_cfg(struct wlan_objmgr_psoc *psoc, static void mlme_init_mbo_cfg(struct wlan_objmgr_psoc *psoc,
@@ -877,6 +882,10 @@ static void mlme_init_sap_protection_cfg(struct wlan_objmgr_psoc *psoc,
cfg_default(CFG_FORCE_POLICY_PROTECTION); cfg_default(CFG_FORCE_POLICY_PROTECTION);
sap_protection_params->ignore_peer_ht_opmode = sap_protection_params->ignore_peer_ht_opmode =
cfg_get(psoc, CFG_IGNORE_PEER_HT_MODE); cfg_get(psoc, CFG_IGNORE_PEER_HT_MODE);
sap_protection_params->enable_ap_obss_protection =
cfg_get(psoc, CFG_AP_OBSS_PROTECTION_ENABLE);
sap_protection_params->ap_protection_mode =
cfg_get(psoc, CFG_AP_PROTECTION_MODE);
} }
#ifdef WLAN_FEATURE_11AX #ifdef WLAN_FEATURE_11AX

View File

@@ -318,6 +318,32 @@
CFG_VALUE_OR_DEFAULT, \ CFG_VALUE_OR_DEFAULT, \
"5Ghz Tx Chainmask") "5Ghz Tx Chainmask")
/*
* <ini>
* enable_bt_chain_separation - Enables/disables bt /wlan chainmask assignment
* @Min: 0
* @Max: 1
* @Default: 0
*
* This ini disables/enables chainmask setting on 2x2, mainly used for ROME
* BT/WLAN chainmask assignment.
*
* 0, Disable
* 1, Enable
*
* Related: NA
*
* Supported Feature: 11n/11ac
*
* Usage: External
*
* </ini>
*/
#define CFG_ENABLE_BT_CHAIN_SEPARATION CFG_INI_BOOL( \
"enableBTChainSeparation", \
0, \
"Enable/disable BT chainmask assignment")
#define CFG_CHAINMASK_ALL \ #define CFG_CHAINMASK_ALL \
CFG(CFG_VHT_ENABLE_1x1_TX_CHAINMASK) \ CFG(CFG_VHT_ENABLE_1x1_TX_CHAINMASK) \
CFG(CFG_VHT_ENABLE_1x1_RX_CHAINMASK) \ CFG(CFG_VHT_ENABLE_1x1_RX_CHAINMASK) \
@@ -328,6 +354,7 @@
CFG(CFG_TX_CHAIN_MASK_2G) \ CFG(CFG_TX_CHAIN_MASK_2G) \
CFG(CFG_RX_CHAIN_MASK_2G) \ CFG(CFG_RX_CHAIN_MASK_2G) \
CFG(CFG_TX_CHAIN_MASK_5G) \ CFG(CFG_TX_CHAIN_MASK_5G) \
CFG(CFG_RX_CHAIN_MASK_5G) CFG(CFG_RX_CHAIN_MASK_5G) \
CFG(CFG_ENABLE_BT_CHAIN_SEPARATION)
#endif /* __CFG_CHAINMASK_H */ #endif /* __CFG_CHAINMASK_H */

View File

@@ -425,6 +425,28 @@
0, \ 0, \
"SAP maximum inactivity override flag") "SAP maximum inactivity override flag")
/*
* <ini>
* gEnableApUapsd - Enable/disable UAPSD for SoftAP
* @Min: 0
* @Max: 1
* @Default: 1
*
* This ini is used to setup setup U-APSD for Acs at association
*
* Related: None.
*
* Supported Feature: SAP
*
* Usage: Internal/External
*
* </ini>
*/
#define CFG_SAP_QOS_UAPSD CFG_INI_BOOL( \
"gEnableApUapsd", \
1, \
"Enable UAPSD for SAP")
#define CFG_QOS_ALL \ #define CFG_QOS_ALL \
CFG(CFG_SAP_MAX_INACTIVITY_OVERRIDE) \ CFG(CFG_SAP_MAX_INACTIVITY_OVERRIDE) \
CFG(CFG_TX_AGGREGATION_SIZE) \ CFG(CFG_TX_AGGREGATION_SIZE) \
@@ -440,6 +462,7 @@
CFG(CFG_TX_NON_AGGR_SW_RETRY_BE) \ CFG(CFG_TX_NON_AGGR_SW_RETRY_BE) \
CFG(CFG_TX_NON_AGGR_SW_RETRY_BK) \ CFG(CFG_TX_NON_AGGR_SW_RETRY_BK) \
CFG(CFG_TX_NON_AGGR_SW_RETRY_VI) \ CFG(CFG_TX_NON_AGGR_SW_RETRY_VI) \
CFG(CFG_TX_NON_AGGR_SW_RETRY_VO) CFG(CFG_TX_NON_AGGR_SW_RETRY_VO) \
CFG(CFG_SAP_QOS_UAPSD)
#endif /* __CFG_MLME_QOS_H */ #endif /* __CFG_MLME_QOS_H */

View File

@@ -61,9 +61,66 @@
0, \ 0, \
"ignore the peer ht mode") "ignore the peer ht mode")
/*
* <ini>
* gApProtection - Set AP protection parameter
* @Min: 0x0
* @Max: 0xFFFF
* @Default: 0xBFFF
*
* This ini is used to set AP protection parameter
* Bit map for CFG_AP_PROTECTION_MODE_DEFAULT
* LOWER byte for associated stations
* UPPER byte for overlapping stations
* each byte will have the following info
* bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
* OBSS RIFS LSIG_TXOP NON_GF HT20 FROM_11G FROM_11B FROM_11A
* bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
* OBSS RIFS LSIG_TXOP NON_GF HT_20 FROM_11G FROM_11B FROM_11A
*
* Related: None.
*
* Supported Feature: SAP
*
* Usage: Internal/External
*
* </ini>
*/
#define CFG_AP_PROTECTION_MODE CFG_INI_UINT( \
"gApProtection", \
0x0, \
0xFFFF, \
0xBFFF, \
CFG_VALUE_OR_DEFAULT, \
"AP protection mode bitmap")
/*
* <ini>
* gEnableApOBSSProt - Enable/Disable AP OBSS protection
* @Min: 0
* @Max: 1
* @Default: 0
*
* This ini is used to enable/disable AP OBSS protection
*
* Related: None.
*
* Supported Feature: SAP
*
* Usage: Internal/External
*
* </ini>
*/
#define CFG_AP_OBSS_PROTECTION_ENABLE CFG_INI_BOOL( \
"gEnableApOBSSProt", \
0, \
"Enable/Disable AP OBSS protection")
#define CFG_SAP_PROTECTION_ALL \ #define CFG_SAP_PROTECTION_ALL \
CFG(CFG_PROTECTION_ENABLED) \ CFG(CFG_PROTECTION_ENABLED) \
CFG(CFG_FORCE_POLICY_PROTECTION) \ CFG(CFG_FORCE_POLICY_PROTECTION) \
CFG(CFG_IGNORE_PEER_HT_MODE) CFG(CFG_IGNORE_PEER_HT_MODE) \
CFG(CFG_AP_PROTECTION_MODE) \
CFG(CFG_AP_OBSS_PROTECTION_ENABLE)
#endif /* __CFG_MLME_SAP_PROTECTION_H */ #endif /* __CFG_MLME_SAP_PROTECTION_H */

View File

@@ -372,7 +372,6 @@ wlan_mlme_get_acs_support_for_dfs_ltecoex(struct wlan_objmgr_psoc *psoc,
/** /**
* wlan_mlme_get_external_acs_policy() - Get the flag for external acs policy * wlan_mlme_get_external_acs_policy() - Get the flag for external acs policy
*
* @psoc: pointer to psoc object * @psoc: pointer to psoc object
* @value: Value that needs to be set from the caller * @value: Value that needs to be set from the caller
* *
@@ -405,7 +404,6 @@ QDF_STATUS wlan_mlme_get_ignore_peer_ht_mode(struct wlan_objmgr_psoc *psoc,
bool *value); bool *value);
/** /**
* wlan_mlme_get_tx_chainmask_cck() - Get the tx_chainmask_cfg value * wlan_mlme_get_tx_chainmask_cck() - Get the tx_chainmask_cfg value
*
* @psoc: pointer to psoc object * @psoc: pointer to psoc object
* @value: Value that needs to be set from the caller * @value: Value that needs to be set from the caller
* *
@@ -416,9 +414,8 @@ QDF_STATUS wlan_mlme_get_tx_chainmask_cck(struct wlan_objmgr_psoc *psoc,
/** /**
* wlan_mlme_get_tx_chainmask_1ss() - Get the tx_chainmask_1ss value * wlan_mlme_get_tx_chainmask_1ss() - Get the tx_chainmask_1ss value
*
* @psoc: pointer to psoc object * @psoc: pointer to psoc object
* @value: Value that needs to be set from the caller * @value: Value that caller needs to get
* *
* Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS * Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS
*/ */
@@ -427,7 +424,6 @@ QDF_STATUS wlan_mlme_get_tx_chainmask_1ss(struct wlan_objmgr_psoc *psoc,
/** /**
* wlan_mlme_get_num_11b_tx_chains() - Get the number of 11b only tx chains * wlan_mlme_get_num_11b_tx_chains() - Get the number of 11b only tx chains
*
* @psoc: pointer to psoc object * @psoc: pointer to psoc object
* @value: Value that needs to be set from the caller * @value: Value that needs to be set from the caller
* *
@@ -438,9 +434,8 @@ QDF_STATUS wlan_mlme_get_num_11b_tx_chains(struct wlan_objmgr_psoc *psoc,
/** /**
* wlan_mlme_get_num_11ag_tx_chains() - get the total number of 11a/g tx chains * wlan_mlme_get_num_11ag_tx_chains() - get the total number of 11a/g tx chains
*
* @psoc: pointer to psoc object * @psoc: pointer to psoc object
* @value: Value that needs to be set from the caller * @value: Value that caller needs to get
* *
* Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS * Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS
*/ */
@@ -448,8 +443,17 @@ QDF_STATUS wlan_mlme_get_num_11ag_tx_chains(struct wlan_objmgr_psoc *psoc,
uint16_t *value); uint16_t *value);
/** /**
* wlan_mlme_configure_chain_mask() - configure chainmask parameters * wlan_mlme_get_bt_chain_separation_flag() - get the enable_bt_chain_separation
* flag
* @psoc: pointer to psoc object
* @value: Value that needs to be set from the caller
* *
* Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS
*/
QDF_STATUS wlan_mlme_get_bt_chain_separation_flag(struct wlan_objmgr_psoc *psoc,
bool *value);
/**
* wlan_mlme_configure_chain_mask() - configure chainmask parameters
* @psoc: pointer to psoc object * @psoc: pointer to psoc object
* @session_id: vdev_id * @session_id: vdev_id
* *
@@ -737,6 +741,27 @@ QDF_STATUS mlme_update_tgt_he_caps_in_cfg(struct wlan_objmgr_psoc *psoc,
struct wma_tgt_cfg *cfg); struct wma_tgt_cfg *cfg);
#endif #endif
/**
* wlan_mlme_get_ap_protection_mode() - Get ap_protection_mode value
* @psoc: pointer to psoc object
* @value: pointer to the value which needs to be filled for the caller
*
* Return: QDF Status
*/
QDF_STATUS wlan_mlme_get_ap_protection_mode(struct wlan_objmgr_psoc *psoc,
uint16_t *value);
/**
* wlan_mlme_is_ap_obss_prot_enabled() - Get ap_obss_protection is
* enabled/disabled
* @psoc: pointer to psoc object
* @value: pointer to the value which needs to be filled for the caller
*
* Return: QDF Status
*/
QDF_STATUS wlan_mlme_is_ap_obss_prot_enabled(struct wlan_objmgr_psoc *psoc,
bool *value);
/** /**
* wlan_mlme_get_rts_threshold() - Get the RTS threshold config * wlan_mlme_get_rts_threshold() - Get the RTS threshold config
* @psoc: pointer to psoc object * @psoc: pointer to psoc object
@@ -1794,4 +1819,23 @@ QDF_STATUS mlme_update_vht_cap(struct wlan_objmgr_psoc *psoc,
*/ */
QDF_STATUS mlme_update_nss_vht_cap(struct wlan_objmgr_psoc *psoc); QDF_STATUS mlme_update_nss_vht_cap(struct wlan_objmgr_psoc *psoc);
/**
* wlan_mlme_is_sap_uapsd_enabled() - Get if SAP UAPSD is enabled/disabled
* @psoc: psoc context
* @value: value to be filled for caller
*
* Return: QDF_STATUS
*/
QDF_STATUS wlan_mlme_is_sap_uapsd_enabled(struct wlan_objmgr_psoc *psoc,
bool *value);
/**
* wlan_mlme_set_sap_uapsd_flag() - Enable/Disable SAP UAPSD
* @psoc: psoc context
* @value: Enable/Disable control value for sap_uapsd_enabled field
*
* Return: QDF_STATUS
*/
QDF_STATUS wlan_mlme_set_sap_uapsd_flag(struct wlan_objmgr_psoc *psoc,
bool value);
#endif /* _WLAN_MLME_API_H_ */ #endif /* _WLAN_MLME_API_H_ */

View File

@@ -697,6 +697,7 @@ struct wlan_mlme_vht_caps {
* @tx_non_aggr_sw_retry_threshold_vo: non aggr sw retry threshold for VO * @tx_non_aggr_sw_retry_threshold_vo: non aggr sw retry threshold for VO
* @sap_max_inactivity_override: Override updating ap_sta_inactivity from * @sap_max_inactivity_override: Override updating ap_sta_inactivity from
* hostapd.conf * hostapd.conf
* @sap_uapsd_enabled: Flag to enable/disable UAPSD for SAP
*/ */
struct wlan_mlme_qos { struct wlan_mlme_qos {
uint32_t tx_aggregation_size; uint32_t tx_aggregation_size;
@@ -714,6 +715,7 @@ struct wlan_mlme_qos {
uint32_t tx_non_aggr_sw_retry_threshold_vi; uint32_t tx_non_aggr_sw_retry_threshold_vi;
uint32_t tx_non_aggr_sw_retry_threshold_vo; uint32_t tx_non_aggr_sw_retry_threshold_vo;
bool sap_max_inactivity_override; bool sap_max_inactivity_override;
bool sap_uapsd_enabled;
}; };
#ifdef WLAN_FEATURE_11AX #ifdef WLAN_FEATURE_11AX
@@ -818,21 +820,22 @@ struct wlan_mlme_feature_flag {
/* /*
* struct wlan_mlme_sap_protection_cfg - SAP erp protection config items * struct wlan_mlme_sap_protection_cfg - SAP erp protection config items
*
* @protection_enabled: Force enable protection. static via cfg
* @protection_force_policy: Protection force policy. Static via cfg
* @ignore_peer_ht_opmode: Ignore the ht opmode of the peer. Dynamic via INI * @ignore_peer_ht_opmode: Ignore the ht opmode of the peer. Dynamic via INI
* * @enable_ap_obss_protection: enable/disable AP OBSS protection
* @protection_force_policy: Protection force policy. Static via cfg
* @ap_protection_mode: AP protection bitmap
* @protection_enabled: Force enable protection. static via cfg
*/ */
struct wlan_mlme_sap_protection { struct wlan_mlme_sap_protection {
uint32_t protection_enabled;
uint8_t protection_force_policy;
bool ignore_peer_ht_opmode; bool ignore_peer_ht_opmode;
bool enable_ap_obss_protection;
uint8_t protection_force_policy;
uint16_t ap_protection_mode;
uint32_t protection_enabled;
}; };
/* /*
* struct wlan_mlme_chainmask - All chainmask related cfg items * struct wlan_mlme_chainmask - All chainmask related cfg items
*
* @txchainmask1x1: To set transmit chainmask * @txchainmask1x1: To set transmit chainmask
* @rxchainmask1x1: To set rx chainmask * @rxchainmask1x1: To set rx chainmask
* @tx_chain_mask_cck: Used to enable/disable Cck ChainMask * @tx_chain_mask_cck: Used to enable/disable Cck ChainMask
@@ -843,6 +846,7 @@ struct wlan_mlme_sap_protection {
* @rx_chain_mask_2g: Tx chain mask for 2g * @rx_chain_mask_2g: Tx chain mask for 2g
* @tx_chain_mask_5g: Tx chain mask for 5g * @tx_chain_mask_5g: Tx chain mask for 5g
* @rx_chain_mask_5g: Rx chain mask for 5g * @rx_chain_mask_5g: Rx chain mask for 5g
* @enable_bt_chain_separation: Enable/Disable BT/WLAN Host chain seperation
*/ */
struct wlan_mlme_chainmask { struct wlan_mlme_chainmask {
uint8_t txchainmask1x1; uint8_t txchainmask1x1;
@@ -855,6 +859,7 @@ struct wlan_mlme_chainmask {
uint8_t rx_chain_mask_2g; uint8_t rx_chain_mask_2g;
uint8_t tx_chain_mask_5g; uint8_t tx_chain_mask_5g;
uint8_t rx_chain_mask_5g; uint8_t rx_chain_mask_5g;
bool enable_bt_chain_separation;
}; };
/* struct wlan_mlme_generic - Generic CFG config items /* struct wlan_mlme_generic - Generic CFG config items

View File

@@ -626,6 +626,20 @@ QDF_STATUS ucfg_mlme_get_num_11ag_tx_chains(struct wlan_objmgr_psoc *psoc,
return wlan_mlme_get_num_11ag_tx_chains(psoc, value); return wlan_mlme_get_num_11ag_tx_chains(psoc, value);
} }
/**
* ucfg_mlme_get_bt_chain_separation_flag() - bt chain separation enable/disable
* @psoc: pointer to psoc object
* @value: Value that needs to be got for the caller
*
* Return: QDF_STATUS_FAILURE or QDF_STATUS_SUCCESS
*/
static inline
QDF_STATUS ucfg_mlme_get_bt_chain_separation_flag(struct wlan_objmgr_psoc *psoc,
bool *value)
{
return wlan_mlme_get_bt_chain_separation_flag(psoc, value);
}
/** /**
* ucfg_mlme_configure_chain_mask() - configure chainmask parameters * ucfg_mlme_configure_chain_mask() - configure chainmask parameters
* *
@@ -1152,6 +1166,40 @@ QDF_STATUS ucfg_mlme_get_oce_sap_enabled_info(struct wlan_objmgr_psoc *psoc,
return wlan_mlme_get_oce_sap_enabled_info(psoc, value); return wlan_mlme_get_oce_sap_enabled_info(psoc, value);
} }
/**
* ucfg_mlme_get_ap_protection_mode() - Get ap protection mode 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
* ap protection mode value
*
* Return: QDF_STATUS_SUCCESS or QDF_STATUS_FAILURE
*/
static inline
QDF_STATUS ucfg_mlme_get_ap_protection_mode(struct wlan_objmgr_psoc *psoc,
uint16_t *value)
{
return wlan_mlme_get_ap_protection_mode(psoc, value);
}
/**
* ucfg_mlme_is_ap_obss_prot_enabled() - Get ap obss protection enable/disable
* @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
* obss protection enable value
*
* Return: QDF_STATUS_SUCCESS or QDF_STATUS_FAILURE
*/
static inline
QDF_STATUS ucfg_mlme_is_ap_obss_prot_enabled(struct wlan_objmgr_psoc *psoc,
bool *value)
{
return wlan_mlme_is_ap_obss_prot_enabled(psoc, value);
}
/** /**
* ucfg_mlme_get_rts_threshold() - Get the rts threshold config * ucfg_mlme_get_rts_threshold() - Get the rts threshold config
* @psoc: pointer to psoc object * @psoc: pointer to psoc object
@@ -2458,6 +2506,7 @@ ucfg_mlme_get_ts_info_ack_policy(struct wlan_objmgr_psoc *psoc,
* @psoc: pointer to psoc object * @psoc: pointer to psoc object
* @value: Value that needs to be get from the caller * @value: Value that needs to be get from the caller
* *
*
* Inline UCFG API to be used by HDD/OSIF callers * Inline UCFG API to be used by HDD/OSIF callers
* *
* Return: QDF Status * Return: QDF Status
@@ -2468,4 +2517,34 @@ ucfg_mlme_get_ts_acm_value_for_ac(struct wlan_objmgr_psoc *psoc, bool *value)
return wlan_mlme_get_ts_acm_value_for_ac(psoc, value); return wlan_mlme_get_ts_acm_value_for_ac(psoc, value);
} }
/*
* ucfg_mlme_is_sap_uapsd_enabled() - SAP UAPSD enabled status.
* @psoc: pointer to psoc object
* @value: sap uapsd enabled flag value requested from the caller
*
* Inline UCFG API to be used by HDD/OSIF callers
*
* Return: QDF Status
*/
static inline QDF_STATUS
ucfg_mlme_is_sap_uapsd_enabled(struct wlan_objmgr_psoc *psoc, bool *value)
{
return wlan_mlme_is_sap_uapsd_enabled(psoc, value);
}
/*
* ucfg_mlme_set_sap_uapsd_flag() - SAP UAPSD enabled status.
* @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
*
* Return: QDF Status
*/
static inline QDF_STATUS
ucfg_mlme_set_sap_uapsd_flag(struct wlan_objmgr_psoc *psoc, bool value)
{
return wlan_mlme_set_sap_uapsd_flag(psoc, value);
}
#endif /* _WLAN_MLME_UCFG_API_H_ */ #endif /* _WLAN_MLME_UCFG_API_H_ */

View File

@@ -816,6 +816,20 @@ QDF_STATUS wlan_mlme_get_num_11b_tx_chains(struct wlan_objmgr_psoc *psoc,
return QDF_STATUS_SUCCESS; return QDF_STATUS_SUCCESS;
} }
QDF_STATUS wlan_mlme_get_bt_chain_separation_flag(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.chainmask_cfg.enable_bt_chain_separation;
return QDF_STATUS_SUCCESS;
}
QDF_STATUS wlan_mlme_get_num_11ag_tx_chains(struct wlan_objmgr_psoc *psoc, QDF_STATUS wlan_mlme_get_num_11ag_tx_chains(struct wlan_objmgr_psoc *psoc,
uint16_t *value) uint16_t *value)
{ {
@@ -1935,6 +1949,36 @@ QDF_STATUS wlan_mlme_get_oce_sap_enabled_info(struct wlan_objmgr_psoc *psoc,
return QDF_STATUS_SUCCESS; return QDF_STATUS_SUCCESS;
} }
QDF_STATUS wlan_mlme_get_ap_protection_mode(struct wlan_objmgr_psoc *psoc,
uint16_t *value)
{
struct wlan_mlme_psoc_obj *mlme_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.sap_protection_cfg.ap_protection_mode;
return QDF_STATUS_SUCCESS;
}
QDF_STATUS wlan_mlme_is_ap_obss_prot_enabled(struct wlan_objmgr_psoc *psoc,
bool *value)
{
struct wlan_mlme_psoc_obj *mlme_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.sap_protection_cfg.enable_ap_obss_protection;
return QDF_STATUS_SUCCESS;
}
QDF_STATUS wlan_mlme_get_rts_threshold(struct wlan_objmgr_psoc *psoc, QDF_STATUS wlan_mlme_get_rts_threshold(struct wlan_objmgr_psoc *psoc,
uint32_t *value) uint32_t *value)
{ {
@@ -2921,3 +2965,33 @@ QDF_STATUS mlme_update_nss_vht_cap(struct wlan_objmgr_psoc *psoc)
return QDF_STATUS_SUCCESS; return QDF_STATUS_SUCCESS;
} }
QDF_STATUS wlan_mlme_is_sap_uapsd_enabled(struct wlan_objmgr_psoc *psoc,
bool *value)
{
struct wlan_mlme_psoc_obj *mlme_obj;
mlme_obj = mlme_get_psoc_obj(psoc);
if (!mlme_obj) {
mlme_err("Get MLME Obj failed");
return QDF_STATUS_E_FAILURE;
}
*value = mlme_obj->cfg.qos_mlme_params.sap_uapsd_enabled;
return QDF_STATUS_SUCCESS;
}
QDF_STATUS wlan_mlme_set_sap_uapsd_flag(struct wlan_objmgr_psoc *psoc,
bool value)
{
struct wlan_mlme_psoc_obj *mlme_obj;
mlme_obj = mlme_get_psoc_obj(psoc);
if (!mlme_obj) {
mlme_err("Get MLME Obj failed");
return QDF_STATUS_E_FAILURE;
}
mlme_obj->cfg.qos_mlme_params.sap_uapsd_enabled &= value;
return QDF_STATUS_SUCCESS;
}

View File

@@ -112,7 +112,6 @@ struct cds_config_info {
uint8_t sta_maxlimod_dtim; uint8_t sta_maxlimod_dtim;
enum qdf_driver_type driver_type; enum qdf_driver_type driver_type;
uint8_t dfs_phyerr_filter_offload; uint8_t dfs_phyerr_filter_offload;
uint8_t ap_disable_intrabss_fwd;
uint8_t ap_maxoffload_peers; uint8_t ap_maxoffload_peers;
uint8_t ap_maxoffload_reorderbuffs; uint8_t ap_maxoffload_reorderbuffs;
#ifdef FEATURE_WLAN_RA_FILTERING #ifdef FEATURE_WLAN_RA_FILTERING

View File

@@ -2168,28 +2168,6 @@ enum hdd_dot11_mode {
#define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11ax #define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11ax
#define CFG_DOT11_MODE_MAX eHDD_DOT11_MODE_11ax #define CFG_DOT11_MODE_MAX eHDD_DOT11_MODE_11ax
/*
* <ini>
* gEnableApUapsd - Enable/disable UAPSD for SoftAP
* @Min: 0
* @Max: 1
* @Default: 1
*
* This ini is used to setup setup U-APSD for Acs at association
*
* Related: None.
*
* Supported Feature: SAP
*
* Usage: Internal/External
*
* </ini>
*/
#define CFG_AP_QOS_UAPSD_MODE_NAME "gEnableApUapsd"
#define CFG_AP_QOS_UAPSD_MODE_MIN (0)
#define CFG_AP_QOS_UAPSD_MODE_MAX (1)
#define CFG_AP_QOS_UAPSD_MODE_DEFAULT (1)
/* /*
* <ini> * <ini>
* gEnableApRandomBssid - Create ramdom BSSID * gEnableApRandomBssid - Create ramdom BSSID
@@ -2235,58 +2213,6 @@ enum hdd_dot11_mode {
#define CFG_AP_ENABLE_PROTECTION_MODE_MAX (1) #define CFG_AP_ENABLE_PROTECTION_MODE_MAX (1)
#define CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT (1) #define CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT (1)
/*
* <ini>
* gApProtection - Set AP protection parameter
* @Min: 0x0
* @Max: 0xFFFF
* @Default: 0xBFFF
*
* This ini is used to set AP protection parameter
* Bit map for CFG_AP_PROTECTION_MODE_DEFAULT
* LOWER byte for associated stations
* UPPER byte for overlapping stations
* each byte will have the following info
* bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
* OBSS RIFS LSIG_TXOP NON_GF HT20 FROM_11G FROM_11B FROM_11A
* bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
* OBSS RIFS LSIG_TXOP NON_GF HT_20 FROM_11G FROM_11B FROM_11A
*
* Related: None.
*
* Supported Feature: SAP
*
* Usage: Internal/External
*
* </ini>
*/
#define CFG_AP_PROTECTION_MODE_NAME "gApProtection"
#define CFG_AP_PROTECTION_MODE_MIN (0x0)
#define CFG_AP_PROTECTION_MODE_MAX (0xFFFF)
#define CFG_AP_PROTECTION_MODE_DEFAULT (0xBFFF)
/*
* <ini>
* gEnableApOBSSProt - Enable/Disable AP OBSS protection
* @Min: 0
* @Max: 1
* @Default: 0
*
* This ini is used to enable/disable AP OBSS protection
*
* Related: None.
*
* Supported Feature: SAP
*
* Usage: Internal/External
*
* </ini>
*/
#define CFG_AP_OBSS_PROTECTION_MODE_NAME "gEnableApOBSSProt"
#define CFG_AP_OBSS_PROTECTION_MODE_MIN (0)
#define CFG_AP_OBSS_PROTECTION_MODE_MAX (1)
#define CFG_AP_OBSS_PROTECTION_MODE_DEFAULT (0)
#define CFG_DISABLE_PACKET_FILTER "gDisablePacketFilter" #define CFG_DISABLE_PACKET_FILTER "gDisablePacketFilter"
#define CFG_DISABLE_PACKET_FILTER_MIN (0) #define CFG_DISABLE_PACKET_FILTER_MIN (0)
#define CFG_DISABLE_PACKET_FILTER_MAX (1) #define CFG_DISABLE_PACKET_FILTER_MAX (1)
@@ -2999,33 +2925,6 @@ enum hdd_link_speed_rpt_type {
eHDD_LINK_SPEED_REPORT_MAX_SCALED = 2, eHDD_LINK_SPEED_REPORT_MAX_SCALED = 2,
}; };
/*
* <ini>
* enableBTChainSeparation - Enables/disables bt /wlan chainmask assignment
* @Min: 0
* @Max: 1
* @Default: 0
*
* This ini disables/enables chainmask setting on 2x2, mainly used for ROME
* BT/WLAN chainmask assignment.
*
* 0, Disable
* 1, Enable
*
* Related: NA
*
* Supported Feature: 11n/11ac
*
* Usage: External
*
* </ini>
*/
#define CFG_ENABLE_BT_CHAIN_SEPARATION "enableBTChainSeparation"
#define CFG_ENABLE_BT_CHAIN_SEPARATION_MIN (0)
#define CFG_ENABLE_BT_CHAIN_SEPARATION_MAX (1)
#define CFG_ENABLE_BT_CHAIN_SEPARATION_DEFAULT (0)
/* /*
* <ini> * <ini>
* gDisableDFSChSwitch - Disable channel switch if radar is found * gDisableDFSChSwitch - Disable channel switch if radar is found
@@ -6026,11 +5925,8 @@ struct hdd_config {
uint8_t intfAddrMask; uint8_t intfAddrMask;
struct qdf_mac_addr intfMacAddr[QDF_MAX_CONCURRENCY_PERSONA]; struct qdf_mac_addr intfMacAddr[QDF_MAX_CONCURRENCY_PERSONA];
bool apUapsdEnabled;
bool apRandomBssidEnabled; bool apRandomBssidEnabled;
bool apProtEnabled; bool apProtEnabled;
uint16_t apProtection;
bool apOBSSProtEnabled;
enum station_keepalive_method sta_keepalive_method; enum station_keepalive_method sta_keepalive_method;
uint8_t nTxPowerCap; /* In dBm */ uint8_t nTxPowerCap; /* In dBm */
bool allow_tpc_from_ap; bool allow_tpc_from_ap;
@@ -6372,7 +6268,6 @@ struct hdd_config {
bool action_oui_enable; bool action_oui_enable;
uint8_t action_oui_str[ACTION_OUI_MAXIMUM_ID][ACTION_OUI_MAX_STR_LEN]; uint8_t action_oui_str[ACTION_OUI_MAXIMUM_ID][ACTION_OUI_MAX_STR_LEN];
uint16_t wmi_wq_watchdog_timeout; uint16_t wmi_wq_watchdog_timeout;
bool enable_bt_chain_separation;
uint8_t enable_tx_sch_delay; uint8_t enable_tx_sch_delay;
uint32_t enable_secondary_rate; uint32_t enable_secondary_rate;
bool is_unit_test_framework_enabled; bool is_unit_test_framework_enabled;

View File

@@ -476,13 +476,6 @@ struct reg_table_entry g_registry_table[] = {
VAR_FLAGS_OPTIONAL, VAR_FLAGS_OPTIONAL,
(void *)CFG_INTF3_MAC_ADDR_DEFAULT), (void *)CFG_INTF3_MAC_ADDR_DEFAULT),
REG_VARIABLE(CFG_AP_QOS_UAPSD_MODE_NAME, WLAN_PARAM_Integer,
struct hdd_config, apUapsdEnabled,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
CFG_AP_QOS_UAPSD_MODE_DEFAULT,
CFG_AP_QOS_UAPSD_MODE_MIN,
CFG_AP_QOS_UAPSD_MODE_MAX),
REG_VARIABLE(CFG_AP_ENABLE_RANDOM_BSSID_NAME, WLAN_PARAM_Integer, REG_VARIABLE(CFG_AP_ENABLE_RANDOM_BSSID_NAME, WLAN_PARAM_Integer,
struct hdd_config, apRandomBssidEnabled, struct hdd_config, apRandomBssidEnabled,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT, VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
@@ -497,20 +490,6 @@ struct reg_table_entry g_registry_table[] = {
CFG_AP_ENABLE_PROTECTION_MODE_MIN, CFG_AP_ENABLE_PROTECTION_MODE_MIN,
CFG_AP_ENABLE_PROTECTION_MODE_MAX), CFG_AP_ENABLE_PROTECTION_MODE_MAX),
REG_VARIABLE(CFG_AP_PROTECTION_MODE_NAME, WLAN_PARAM_HexInteger,
struct hdd_config, apProtection,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
CFG_AP_PROTECTION_MODE_DEFAULT,
CFG_AP_PROTECTION_MODE_MIN,
CFG_AP_PROTECTION_MODE_MAX),
REG_VARIABLE(CFG_AP_OBSS_PROTECTION_MODE_NAME, WLAN_PARAM_Integer,
struct hdd_config, apOBSSProtEnabled,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
CFG_AP_OBSS_PROTECTION_MODE_DEFAULT,
CFG_AP_OBSS_PROTECTION_MODE_MIN,
CFG_AP_OBSS_PROTECTION_MODE_MAX),
#ifdef FEATURE_WLAN_DYNAMIC_CVM #ifdef FEATURE_WLAN_DYNAMIC_CVM
REG_VARIABLE(CFG_VC_MODE_BITMAP, WLAN_PARAM_HexInteger, REG_VARIABLE(CFG_VC_MODE_BITMAP, WLAN_PARAM_HexInteger,
struct hdd_config, vc_mode_cfg_bitmap, struct hdd_config, vc_mode_cfg_bitmap,
@@ -1277,13 +1256,6 @@ struct reg_table_entry g_registry_table[] = {
CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MIN, CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MIN,
CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX), CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX),
REG_VARIABLE(CFG_ENABLE_BT_CHAIN_SEPARATION, WLAN_PARAM_Integer,
struct hdd_config, enable_bt_chain_separation,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
CFG_ENABLE_BT_CHAIN_SEPARATION_DEFAULT,
CFG_ENABLE_BT_CHAIN_SEPARATION_MIN,
CFG_ENABLE_BT_CHAIN_SEPARATION_MAX),
REG_VARIABLE(CFG_DISABLE_DFS_CH_SWITCH, WLAN_PARAM_Integer, REG_VARIABLE(CFG_DISABLE_DFS_CH_SWITCH, WLAN_PARAM_Integer,
struct hdd_config, disableDFSChSwitch, struct hdd_config, disableDFSChSwitch,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT, VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,

View File

@@ -4609,7 +4609,7 @@ int wlan_hdd_cfg80211_start_bss(struct hdd_adapter *adapter,
struct ieee80211_mgmt *pMgmt_frame; struct ieee80211_mgmt *pMgmt_frame;
struct ieee80211_mgmt mgmt; struct ieee80211_mgmt mgmt;
const uint8_t *pIe = NULL; const uint8_t *pIe = NULL;
uint16_t capab_info; uint16_t capab_info, ap_prot = cfg_default(CFG_AP_PROTECTION_MODE);
eCsrAuthType RSNAuthType; eCsrAuthType RSNAuthType;
eCsrEncryptionType RSNEncryptType; eCsrEncryptionType RSNEncryptType;
eCsrEncryptionType mcRSNEncryptType; eCsrEncryptionType mcRSNEncryptType;
@@ -4634,10 +4634,10 @@ int wlan_hdd_cfg80211_start_bss(struct hdd_adapter *adapter,
bool val; bool val;
uint32_t auto_channel_select_weight = uint32_t auto_channel_select_weight =
cfg_default(CFG_AUTO_CHANNEL_SELECT_WEIGHT); cfg_default(CFG_AUTO_CHANNEL_SELECT_WEIGHT);
bool bval = false;
uint8_t pref_chan_location = 0; uint8_t pref_chan_location = 0;
bool sap_force_11n_for_11ac = 0; bool sap_force_11n_for_11ac = 0;
bool go_force_11n_for_11ac = 0; bool go_force_11n_for_11ac = 0;
bool bval = false, ap_obss_prot = false, sap_uapsd = true;
hdd_enter(); hdd_enter();
@@ -5194,7 +5194,10 @@ int wlan_hdd_cfg80211_start_bss(struct hdd_adapter *adapter,
/* ht_capab is not what the name conveys, /* ht_capab is not what the name conveys,
* this is used for protection bitmap * this is used for protection bitmap
*/ */
pConfig->ht_capab = iniConfig->apProtection; qdf_status = ucfg_mlme_get_ap_protection_mode(hdd_ctx->psoc, &ap_prot);
if (QDF_IS_STATUS_ERROR(qdf_status))
hdd_debug("Get ap protection mode failed using default value");
pConfig->ht_capab = ap_prot;
if (0 != wlan_hdd_cfg80211_update_apies(adapter)) { if (0 != wlan_hdd_cfg80211_update_apies(adapter)) {
hdd_err("SAP Not able to set AP IEs"); hdd_err("SAP Not able to set AP IEs");
@@ -5202,9 +5205,17 @@ int wlan_hdd_cfg80211_start_bss(struct hdd_adapter *adapter,
goto error; goto error;
} }
/* Uapsd Enabled Bit */ /* Uapsd Enabled Bit */
pConfig->UapsdEnable = iniConfig->apUapsdEnabled; qdf_status = ucfg_mlme_is_sap_uapsd_enabled(hdd_ctx->psoc, &sap_uapsd);
if (QDF_IS_STATUS_ERROR(qdf_status))
hdd_debug("Get ap UAPSD enabled/disabled failed");
pConfig->UapsdEnable = sap_uapsd;
/* Enable OBSS protection */ /* Enable OBSS protection */
pConfig->obssProtEnabled = iniConfig->apOBSSProtEnabled; qdf_status = ucfg_mlme_is_ap_obss_prot_enabled(hdd_ctx->psoc,
&ap_obss_prot);
if (QDF_IS_STATUS_ERROR(qdf_status))
hdd_debug("Get ap obss protection failed");
pConfig->obssProtEnabled = ap_obss_prot;
#ifdef WLAN_FEATURE_11W #ifdef WLAN_FEATURE_11W
pConfig->mfpCapable = MFPCapable; pConfig->mfpCapable = MFPCapable;

View File

@@ -1446,7 +1446,7 @@ static void hdd_update_tgt_services(struct hdd_context *hdd_ctx,
bool value; bool value;
#endif #endif
/* Set up UAPSD */ /* Set up UAPSD */
config->apUapsdEnabled &= cfg->uapsd; ucfg_mlme_set_sap_uapsd_flag(hdd_ctx->psoc, cfg->uapsd);
/* 11AX mode support */ /* 11AX mode support */
if ((config->dot11Mode == eHDD_DOT11_MODE_11ax || if ((config->dot11Mode == eHDD_DOT11_MODE_11ax ||
@@ -4558,17 +4558,21 @@ static int hdd_configure_chain_mask(struct hdd_adapter *adapter)
QDF_STATUS status; QDF_STATUS status;
struct wma_caps_per_phy non_dbs_phy_cap; struct wma_caps_per_phy non_dbs_phy_cap;
struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(adapter); struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(adapter);
bool bval = false; bool enable2x2 = false, enable_bt_chain_sep = false;
status = ucfg_mlme_get_vht_enable2x2(hdd_ctx->psoc, &bval); status = ucfg_mlme_get_vht_enable2x2(hdd_ctx->psoc, &enable2x2);
if (!QDF_IS_STATUS_SUCCESS(status)) if (QDF_IS_STATUS_ERROR(status))
hdd_err("unable to get vht_enable2x2"); hdd_err("unable to get vht_enable2x2");
status = ucfg_mlme_get_bt_chain_separation_flag(hdd_ctx->psoc,
&enable_bt_chain_sep);
if (QDF_IS_STATUS_ERROR(status))
hdd_debug("unable to get BT chain separation. using default");
hdd_debug("enable2x2: %d, lte_coex: %d, disable_DBS: %d", hdd_debug("enable2x2: %d, lte_coex: %d, disable_DBS: %d",
bval, hdd_ctx->lte_coex_ant_share, enable2x2, hdd_ctx->lte_coex_ant_share,
hdd_ctx->config->dual_mac_feature_disable); hdd_ctx->config->dual_mac_feature_disable);
hdd_debug("enable_bt_chain_separation %d", hdd_debug("enable_bt_chain_separation %d", enable_bt_chain_sep);
hdd_ctx->config->enable_bt_chain_separation);
status = wma_get_caps_for_phyidx_hwmode(&non_dbs_phy_cap, status = wma_get_caps_for_phyidx_hwmode(&non_dbs_phy_cap,
HW_MODE_DBS_NONE, HW_MODE_DBS_NONE,
@@ -4586,7 +4590,7 @@ static int hdd_configure_chain_mask(struct hdd_adapter *adapter)
return 0; return 0;
} }
if (bval && !hdd_ctx->config->enable_bt_chain_separation) { if (enable2x2 && !enable_bt_chain_sep) {
hdd_debug("2x2 enabled. skip chain mask programming"); hdd_debug("2x2 enabled. skip chain mask programming");
return 0; return 0;
} }
@@ -9757,9 +9761,6 @@ static int hdd_update_cds_config(struct hdd_context *hdd_ctx)
&value); &value);
cds_cfg->ap_maxoffload_reorderbuffs = value; cds_cfg->ap_maxoffload_reorderbuffs = value;
cds_cfg->ap_disable_intrabss_fwd =
cfg_get(hdd_ctx->psoc, CFG_DP_AP_STA_SECURITY_SEPERATION);
cds_cfg->dfs_pri_multiplier = cds_cfg->dfs_pri_multiplier =
hdd_ctx->config->dfsRadarPriMultiplier; hdd_ctx->config->dfsRadarPriMultiplier;
cds_cfg->reorder_offload = cds_cfg->reorder_offload =

View File

@@ -43,8 +43,6 @@ enum {
WNI_CFG_SCAN_IN_POWERSAVE, WNI_CFG_SCAN_IN_POWERSAVE,
WNI_CFG_IBSS_AUTO_BSSID, WNI_CFG_IBSS_AUTO_BSSID,
WNI_CFG_WPS_UUID, WNI_CFG_WPS_UUID,
WNI_CFG_TELE_BCN_WAKEUP_EN,
WNI_CFG_TELE_BCN_MAX_LI,
WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED, WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED,
WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP, WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP,
WNI_CFG_IBSS_ATIM_WIN_SIZE, WNI_CFG_IBSS_ATIM_WIN_SIZE,
@@ -403,14 +401,6 @@ enum {
#define WNI_CFG_WPS_ENABLE_AP 1 #define WNI_CFG_WPS_ENABLE_AP 1
#define WNI_CFG_TELE_BCN_WAKEUP_EN_STAMIN 0
#define WNI_CFG_TELE_BCN_WAKEUP_EN_STAMAX 1
#define WNI_CFG_TELE_BCN_WAKEUP_EN_STADEF 0
#define WNI_CFG_TELE_BCN_MAX_LI_STAMIN 0
#define WNI_CFG_TELE_BCN_MAX_LI_STAMAX 7
#define WNI_CFG_TELE_BCN_MAX_LI_STADEF 5
#define WNI_CFG_ASSOC_STA_LIMIT_STAMIN 1 #define WNI_CFG_ASSOC_STA_LIMIT_STAMIN 1
#define WNI_CFG_ASSOC_STA_LIMIT_STAMAX 32 #define WNI_CFG_ASSOC_STA_LIMIT_STAMAX 32
#define WNI_CFG_ASSOC_STA_LIMIT_STADEF 10 #define WNI_CFG_ASSOC_STA_LIMIT_STADEF 10

View File

@@ -57,8 +57,6 @@ const char *cfg_get_string(uint16_t cfg_id)
CASE_RETURN_STRING(WNI_CFG_AS_CAP); CASE_RETURN_STRING(WNI_CFG_AS_CAP);
CASE_RETURN_STRING(WNI_CFG_IBSS_AUTO_BSSID); CASE_RETURN_STRING(WNI_CFG_IBSS_AUTO_BSSID);
CASE_RETURN_STRING(WNI_CFG_WPS_UUID); CASE_RETURN_STRING(WNI_CFG_WPS_UUID);
CASE_RETURN_STRING(WNI_CFG_TELE_BCN_WAKEUP_EN);
CASE_RETURN_STRING(WNI_CFG_TELE_BCN_MAX_LI);
CASE_RETURN_STRING(WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED); CASE_RETURN_STRING(WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED);
CASE_RETURN_STRING(WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP); CASE_RETURN_STRING(WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP);
CASE_RETURN_STRING(WNI_CFG_IBSS_ATIM_WIN_SIZE); CASE_RETURN_STRING(WNI_CFG_IBSS_ATIM_WIN_SIZE);

View File

@@ -116,16 +116,6 @@ cgstatic cfg_static[CFG_PARAM_MAX_NUM] = {
{WNI_CFG_WPS_UUID, {WNI_CFG_WPS_UUID,
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_NTF_LIM, CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_NTF_LIM,
0, 0, 0}, 0, 0, 0},
{WNI_CFG_TELE_BCN_WAKEUP_EN,
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
WNI_CFG_TELE_BCN_WAKEUP_EN_STAMIN,
WNI_CFG_TELE_BCN_WAKEUP_EN_STAMAX,
WNI_CFG_TELE_BCN_WAKEUP_EN_STADEF},
{WNI_CFG_TELE_BCN_MAX_LI,
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
WNI_CFG_TELE_BCN_MAX_LI_STAMIN,
WNI_CFG_TELE_BCN_MAX_LI_STAMAX,
WNI_CFG_TELE_BCN_MAX_LI_STADEF},
{WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED, {WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED,
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT, CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STAMIN, WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STAMIN,

View File

@@ -44,7 +44,7 @@
*/ */
struct wma_tgt_services { struct wma_tgt_services {
uint32_t sta_power_save; uint32_t sta_power_save;
uint32_t uapsd; bool uapsd;
uint32_t ap_dfs; uint32_t ap_dfs;
uint32_t en_11ac; uint32_t en_11ac;
uint32_t arp_offload; uint32_t arp_offload;