qcacld-3.0: Update multiple generic INI items using MLME CFG [Part 2]
Replace usage of the below INI Items using MLME CFG instead of HDD config. gEnableSelfRecovery gSapDot11mc gEnableFatalEvent gSub20ChannelWidth goptimize_chan_avoid_event fw_timeout_crash DroppedPktDisconnectTh gItoRepeatCount Change-Id: Ib46b9fc6c4bbc5ede0be7a5cb88064808962839d CRs-Fixed: 2327611
This commit is contained in:

committed by
nshrivas

parent
c58e33c5f9
commit
a1f3a1a31b
@@ -400,7 +400,7 @@
|
|||||||
* <ini>
|
* <ini>
|
||||||
* gDroppedPktDisconnectTh - Sets dropped packet threshold in firmware
|
* gDroppedPktDisconnectTh - Sets dropped packet threshold in firmware
|
||||||
* @Min: 0
|
* @Min: 0
|
||||||
* @Max: 512
|
* @Max: 65535
|
||||||
* @Default: 512
|
* @Default: 512
|
||||||
*
|
*
|
||||||
* This INI is the packet drop threshold will trigger disconnect from remote
|
* This INI is the packet drop threshold will trigger disconnect from remote
|
||||||
|
@@ -198,33 +198,33 @@ QDF_STATUS wlan_mlme_set_band_capability(struct wlan_objmgr_psoc *psoc,
|
|||||||
uint8_t band_capability);
|
uint8_t band_capability);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* wlan_mlme_get_prevent_link_down_cfg() - Get the prevent link down config
|
* wlan_mlme_get_prevent_link_down() - Get the prevent link down config
|
||||||
* @psoc: pointer to psoc object
|
* @psoc: pointer to psoc object
|
||||||
* @prevent_link_down: Pointer to the variable from caller
|
* @prevent_link_down: Pointer to the variable from caller
|
||||||
*
|
*
|
||||||
* Return: QDF Status
|
* Return: QDF Status
|
||||||
*/
|
*/
|
||||||
QDF_STATUS wlan_mlme_get_prevent_link_down_cfg(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS wlan_mlme_get_prevent_link_down(struct wlan_objmgr_psoc *psoc,
|
||||||
bool *prevent_link_down);
|
bool *prevent_link_down);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* wlan_mlme_get_select_5ghz_margin_cfg() - Get the select 5Ghz margin config
|
* wlan_mlme_get_select_5ghz_margin() - Get the select 5Ghz margin config
|
||||||
* @psoc: pointer to psoc object
|
* @psoc: pointer to psoc object
|
||||||
* @select_5ghz_margin: Pointer to the variable from caller
|
* @select_5ghz_margin: Pointer to the variable from caller
|
||||||
*
|
*
|
||||||
* Return: QDF Status
|
* Return: QDF Status
|
||||||
*/
|
*/
|
||||||
QDF_STATUS wlan_mlme_get_select_5ghz_margin_cfg(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS wlan_mlme_get_select_5ghz_margin(struct wlan_objmgr_psoc *psoc,
|
||||||
uint8_t *select_5ghz_margin);
|
uint8_t *select_5ghz_margin);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* wlan_mlme_get_crash_inject_cfg() - Get the crash inject config
|
* wlan_mlme_get_crash_inject() - Get the crash inject config
|
||||||
* @psoc: pointer to psoc object
|
* @psoc: pointer to psoc object
|
||||||
* @crash_inject: Pointer to the variable from caller
|
* @crash_inject: Pointer to the variable from caller
|
||||||
*
|
*
|
||||||
* Return: QDF Status
|
* Return: QDF Status
|
||||||
*/
|
*/
|
||||||
QDF_STATUS wlan_mlme_get_crash_inject_cfg(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS wlan_mlme_get_crash_inject(struct wlan_objmgr_psoc *psoc,
|
||||||
bool *crash_inject);
|
bool *crash_inject);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -237,6 +237,46 @@ QDF_STATUS wlan_mlme_get_crash_inject_cfg(struct wlan_objmgr_psoc *psoc,
|
|||||||
QDF_STATUS wlan_mlme_get_lpass_support(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS wlan_mlme_get_lpass_support(struct wlan_objmgr_psoc *psoc,
|
||||||
bool *lpass_support);
|
bool *lpass_support);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wlan_mlme_get_self_recovery() - Get the self recovery config
|
||||||
|
* @psoc: pointer to psoc object
|
||||||
|
* @self_recovery: Pointer to the variable from caller
|
||||||
|
*
|
||||||
|
* Return: QDF Status
|
||||||
|
*/
|
||||||
|
QDF_STATUS wlan_mlme_get_self_recovery(struct wlan_objmgr_psoc *psoc,
|
||||||
|
bool *self_recovery);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wlan_mlme_get_sub_20_chan_width() - Get the sub 20 chan width config
|
||||||
|
* @psoc: pointer to psoc object
|
||||||
|
* @sub_20_chan_width: Pointer to the variable from caller
|
||||||
|
*
|
||||||
|
* Return: QDF Status
|
||||||
|
*/
|
||||||
|
QDF_STATUS wlan_mlme_get_sub_20_chan_width(struct wlan_objmgr_psoc *psoc,
|
||||||
|
uint8_t *sub_20_chan_width);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wlan_mlme_get_fw_timeout_crash() - Get the fw timeout crash config
|
||||||
|
* @psoc: pointer to psoc object
|
||||||
|
* @fw_timeout_crash: Pointer to the variable from caller
|
||||||
|
*
|
||||||
|
* Return: QDF Status
|
||||||
|
*/
|
||||||
|
QDF_STATUS wlan_mlme_get_fw_timeout_crash(struct wlan_objmgr_psoc *psoc,
|
||||||
|
bool *fw_timeout_crash);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wlan_mlme_get_ito_repeat_count() - Get the fw timeout crash config
|
||||||
|
* @psoc: pointer to psoc object
|
||||||
|
* @ito_repeat_count: Pointer to the variable from caller
|
||||||
|
*
|
||||||
|
* Return: QDF Status
|
||||||
|
*/
|
||||||
|
QDF_STATUS wlan_mlme_get_ito_repeat_count(struct wlan_objmgr_psoc *psoc,
|
||||||
|
uint8_t *ito_repeat_count);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* wlan_mlme_get_acs_with_more_param() - Get the acs_with_more_param flag
|
* wlan_mlme_get_acs_with_more_param() - Get the acs_with_more_param flag
|
||||||
* @psoc: pointer to psoc object
|
* @psoc: pointer to psoc object
|
||||||
|
@@ -178,45 +178,45 @@ QDF_STATUS ucfg_mlme_set_band_capability(struct wlan_objmgr_psoc *psoc,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ucfg_mlme_get_prevent_link_down_cfg() - Get the prevent link down config
|
* ucfg_mlme_get_prevent_link_down() - Get the prevent link down config
|
||||||
* @psoc: pointer to psoc object
|
* @psoc: pointer to psoc object
|
||||||
* @prevent_link_down: Pointer to the variable from caller
|
* @prevent_link_down: Pointer to the variable from caller
|
||||||
*
|
*
|
||||||
* Return: QDF Status
|
* Return: QDF Status
|
||||||
*/
|
*/
|
||||||
static inline
|
static inline
|
||||||
QDF_STATUS ucfg_mlme_get_prevent_link_down_cfg(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS ucfg_mlme_get_prevent_link_down(struct wlan_objmgr_psoc *psoc,
|
||||||
bool *prevent_link_down)
|
bool *prevent_link_down)
|
||||||
{
|
{
|
||||||
return wlan_mlme_get_prevent_link_down_cfg(psoc, prevent_link_down);
|
return wlan_mlme_get_prevent_link_down(psoc, prevent_link_down);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ucfg_mlme_get_select_5ghz_margin_cfg() - Get the select 5Ghz margin config
|
* ucfg_mlme_get_select_5ghz_margin() - Get the select 5Ghz margin config
|
||||||
* @psoc: pointer to psoc object
|
* @psoc: pointer to psoc object
|
||||||
* @select_5ghz_margin: Pointer to the variable from caller
|
* @select_5ghz_margin: Pointer to the variable from caller
|
||||||
*
|
*
|
||||||
* Return: QDF Status
|
* Return: QDF Status
|
||||||
*/
|
*/
|
||||||
static inline
|
static inline
|
||||||
QDF_STATUS ucfg_mlme_get_select_5ghz_margin_cfg(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS ucfg_mlme_get_select_5ghz_margin(struct wlan_objmgr_psoc *psoc,
|
||||||
uint8_t *select_5ghz_margin)
|
uint8_t *select_5ghz_margin)
|
||||||
{
|
{
|
||||||
return wlan_mlme_get_select_5ghz_margin_cfg(psoc, select_5ghz_margin);
|
return wlan_mlme_get_select_5ghz_margin(psoc, select_5ghz_margin);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ucfg_mlme_get_crash_inject_cfg() - Get the crash inject config
|
* ucfg_mlme_get_crash_inject() - Get the crash inject config
|
||||||
* @psoc: pointer to psoc object
|
* @psoc: pointer to psoc object
|
||||||
* @crash_inject: Pointer to the variable from caller
|
* @crash_inject: Pointer to the variable from caller
|
||||||
*
|
*
|
||||||
* Return: QDF Status
|
* Return: QDF Status
|
||||||
*/
|
*/
|
||||||
static inline
|
static inline
|
||||||
QDF_STATUS ucfg_mlme_get_crash_inject_cfg(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS ucfg_mlme_get_crash_inject(struct wlan_objmgr_psoc *psoc,
|
||||||
bool *crash_inject)
|
bool *crash_inject)
|
||||||
{
|
{
|
||||||
return wlan_mlme_get_crash_inject_cfg(psoc, crash_inject);
|
return wlan_mlme_get_crash_inject(psoc, crash_inject);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -233,6 +233,62 @@ QDF_STATUS ucfg_mlme_get_lpass_support(struct wlan_objmgr_psoc *psoc,
|
|||||||
return wlan_mlme_get_lpass_support(psoc, lpass_support);
|
return wlan_mlme_get_lpass_support(psoc, lpass_support);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ucfg_mlme_get_self_recovery() - Get the self recovery config
|
||||||
|
* @psoc: pointer to psoc object
|
||||||
|
* @self_recovery: Pointer to the variable from caller
|
||||||
|
*
|
||||||
|
* Return: QDF Status
|
||||||
|
*/
|
||||||
|
static inline
|
||||||
|
QDF_STATUS ucfg_mlme_get_self_recovery(struct wlan_objmgr_psoc *psoc,
|
||||||
|
bool *self_recovery)
|
||||||
|
{
|
||||||
|
return wlan_mlme_get_self_recovery(psoc, self_recovery);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ucfg_mlme_get_sub_20_chan_width() - Get the sub 20 chan width config
|
||||||
|
* @psoc: pointer to psoc object
|
||||||
|
* @sub_20_chan_width: Pointer to the variable from caller
|
||||||
|
*
|
||||||
|
* Return: QDF Status
|
||||||
|
*/
|
||||||
|
static inline
|
||||||
|
QDF_STATUS ucfg_mlme_get_sub_20_chan_width(struct wlan_objmgr_psoc *psoc,
|
||||||
|
uint8_t *sub_20_chan_width)
|
||||||
|
{
|
||||||
|
return wlan_mlme_get_sub_20_chan_width(psoc, sub_20_chan_width);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ucfg_mlme_get_fw_timeout_crash() - Get the fw timeout crash config
|
||||||
|
* @psoc: pointer to psoc object
|
||||||
|
* @fw_timeout_crash: Pointer to the variable from caller
|
||||||
|
*
|
||||||
|
* Return: QDF Status
|
||||||
|
*/
|
||||||
|
static inline
|
||||||
|
QDF_STATUS ucfg_mlme_get_fw_timeout_crash(struct wlan_objmgr_psoc *psoc,
|
||||||
|
bool *fw_timeout_crash)
|
||||||
|
{
|
||||||
|
return wlan_mlme_get_fw_timeout_crash(psoc, fw_timeout_crash);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ucfg_mlme_get_ito_repeat_count() - Get the fw timeout crash config
|
||||||
|
* @psoc: pointer to psoc object
|
||||||
|
* @ito_repeat_count: Pointer to the variable from caller
|
||||||
|
*
|
||||||
|
* Return: QDF Status
|
||||||
|
*/
|
||||||
|
static inline
|
||||||
|
QDF_STATUS ucfg_mlme_get_ito_repeat_count(struct wlan_objmgr_psoc *psoc,
|
||||||
|
uint8_t *ito_repeat_count)
|
||||||
|
{
|
||||||
|
return wlan_mlme_get_ito_repeat_count(psoc, ito_repeat_count);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ucfg_mlme_get_acs_with_more_param() - Get the flag for acs with
|
* ucfg_mlme_get_acs_with_more_param() - Get the flag for acs with
|
||||||
* more param
|
* more param
|
||||||
|
@@ -123,7 +123,7 @@ QDF_STATUS wlan_mlme_set_band_capability(struct wlan_objmgr_psoc *psoc,
|
|||||||
return QDF_STATUS_SUCCESS;
|
return QDF_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
QDF_STATUS wlan_mlme_get_prevent_link_down_cfg(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS wlan_mlme_get_prevent_link_down(struct wlan_objmgr_psoc *psoc,
|
||||||
bool *prevent_link_down)
|
bool *prevent_link_down)
|
||||||
{
|
{
|
||||||
struct wlan_mlme_psoc_obj *mlme_obj;
|
struct wlan_mlme_psoc_obj *mlme_obj;
|
||||||
@@ -139,7 +139,7 @@ QDF_STATUS wlan_mlme_get_prevent_link_down_cfg(struct wlan_objmgr_psoc *psoc,
|
|||||||
return QDF_STATUS_SUCCESS;
|
return QDF_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
QDF_STATUS wlan_mlme_get_select_5ghz_margin_cfg(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS wlan_mlme_get_select_5ghz_margin(struct wlan_objmgr_psoc *psoc,
|
||||||
uint8_t *select_5ghz_margin)
|
uint8_t *select_5ghz_margin)
|
||||||
{
|
{
|
||||||
struct wlan_mlme_psoc_obj *mlme_obj;
|
struct wlan_mlme_psoc_obj *mlme_obj;
|
||||||
@@ -155,7 +155,7 @@ QDF_STATUS wlan_mlme_get_select_5ghz_margin_cfg(struct wlan_objmgr_psoc *psoc,
|
|||||||
return QDF_STATUS_SUCCESS;
|
return QDF_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
QDF_STATUS wlan_mlme_get_crash_inject_cfg(struct wlan_objmgr_psoc *psoc,
|
QDF_STATUS wlan_mlme_get_crash_inject(struct wlan_objmgr_psoc *psoc,
|
||||||
bool *crash_inject)
|
bool *crash_inject)
|
||||||
{
|
{
|
||||||
struct wlan_mlme_psoc_obj *mlme_obj;
|
struct wlan_mlme_psoc_obj *mlme_obj;
|
||||||
@@ -187,6 +187,70 @@ QDF_STATUS wlan_mlme_get_lpass_support(struct wlan_objmgr_psoc *psoc,
|
|||||||
return QDF_STATUS_SUCCESS;
|
return QDF_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QDF_STATUS wlan_mlme_get_self_recovery(struct wlan_objmgr_psoc *psoc,
|
||||||
|
bool *self_recovery)
|
||||||
|
{
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
|
||||||
|
*self_recovery = mlme_obj->cfg.gen.self_recovery;
|
||||||
|
|
||||||
|
return QDF_STATUS_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
QDF_STATUS wlan_mlme_get_sub_20_chan_width(struct wlan_objmgr_psoc *psoc,
|
||||||
|
uint8_t *sub_20_chan_width)
|
||||||
|
{
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
|
||||||
|
*sub_20_chan_width = mlme_obj->cfg.gen.sub_20_chan_width;
|
||||||
|
|
||||||
|
return QDF_STATUS_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
QDF_STATUS wlan_mlme_get_fw_timeout_crash(struct wlan_objmgr_psoc *psoc,
|
||||||
|
bool *fw_timeout_crash)
|
||||||
|
{
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
|
||||||
|
*fw_timeout_crash = mlme_obj->cfg.gen.fw_timeout_crash;
|
||||||
|
|
||||||
|
return QDF_STATUS_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
QDF_STATUS wlan_mlme_get_ito_repeat_count(struct wlan_objmgr_psoc *psoc,
|
||||||
|
uint8_t *ito_repeat_count)
|
||||||
|
{
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
|
||||||
|
*ito_repeat_count = mlme_obj->cfg.gen.ito_repeat_count;
|
||||||
|
|
||||||
|
return QDF_STATUS_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
void wlan_mlme_get_sap_inactivity_override(struct wlan_objmgr_psoc *psoc,
|
void wlan_mlme_get_sap_inactivity_override(struct wlan_objmgr_psoc *psoc,
|
||||||
bool *val)
|
bool *val)
|
||||||
{
|
{
|
||||||
|
@@ -1282,29 +1282,6 @@ enum hdd_dot11_mode {
|
|||||||
#define CFG_ROAM_RESCAN_RSSI_DIFF_MAX (100)
|
#define CFG_ROAM_RESCAN_RSSI_DIFF_MAX (100)
|
||||||
#define CFG_ROAM_RESCAN_RSSI_DIFF_DEFAULT (5)
|
#define CFG_ROAM_RESCAN_RSSI_DIFF_DEFAULT (5)
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gDroppedPktDisconnectTh - Sets dropped packet threshold in firmware
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 512
|
|
||||||
* @Default: 512
|
|
||||||
*
|
|
||||||
* This INI is the packet drop threshold will trigger disconnect from remote
|
|
||||||
* peer.
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: connection
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_DROPPED_PKT_DISCONNECT_TH_NAME "gDroppedPktDisconnectTh"
|
|
||||||
#define CFG_DROPPED_PKT_DISCONNECT_TH_MIN (0)
|
|
||||||
#define CFG_DROPPED_PKT_DISCONNECT_TH_MAX (65535)
|
|
||||||
#define CFG_DROPPED_PKT_DISCONNECT_TH_DEFAULT (512)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* gForce1x1Exception - force 1x1 when connecting to certain peer
|
* gForce1x1Exception - force 1x1 when connecting to certain peer
|
||||||
@@ -4846,11 +4823,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_IPA_UC_TX_PARTITION_BASE_MAX (9000)
|
#define CFG_IPA_UC_TX_PARTITION_BASE_MAX (9000)
|
||||||
#define CFG_IPA_UC_TX_PARTITION_BASE_DEFAULT (3000)
|
#define CFG_IPA_UC_TX_PARTITION_BASE_DEFAULT (3000)
|
||||||
|
|
||||||
#define CFG_ENABLE_SELF_RECOVERY_NAME "gEnableSelfRecovery"
|
|
||||||
#define CFG_ENABLE_SELF_RECOVERY_MIN (0)
|
|
||||||
#define CFG_ENABLE_SELF_RECOVERY_MAX (1)
|
|
||||||
#define CFG_ENABLE_SELF_RECOVERY_DEFAULT (0)
|
|
||||||
|
|
||||||
#define CFG_ENABLE_SAP_SUSPEND "gEnableSapSuspend"
|
#define CFG_ENABLE_SAP_SUSPEND "gEnableSapSuspend"
|
||||||
#define CFG_ENABLE_SAP_SUSPEND_MIN (0)
|
#define CFG_ENABLE_SAP_SUSPEND_MIN (0)
|
||||||
#define CFG_ENABLE_SAP_SUSPEND_MAX (1)
|
#define CFG_ENABLE_SAP_SUSPEND_MAX (1)
|
||||||
@@ -5043,11 +5015,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_GO_11AC_OVERRIDE_MAX (1)
|
#define CFG_GO_11AC_OVERRIDE_MAX (1)
|
||||||
#define CFG_GO_11AC_OVERRIDE_DEFAULT (1)
|
#define CFG_GO_11AC_OVERRIDE_DEFAULT (1)
|
||||||
|
|
||||||
#define CFG_SAP_DOT11MC_NAME "gSapDot11mc"
|
|
||||||
#define CFG_SAP_DOT11MC_MIN (0)
|
|
||||||
#define CFG_SAP_DOT11MC_MAX (1)
|
|
||||||
#define CFG_SAP_DOT11MC_DEFAULT (0)
|
|
||||||
|
|
||||||
#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR "gPreferNonDfsChanOnRadar"
|
#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR "gPreferNonDfsChanOnRadar"
|
||||||
#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MIN (0)
|
#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MIN (0)
|
||||||
#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MAX (1)
|
#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MAX (1)
|
||||||
@@ -5464,15 +5431,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_SET_TSF_PTP_OPT_DEFAULT (0xf)
|
#define CFG_SET_TSF_PTP_OPT_DEFAULT (0xf)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* Enable/Disable to initiate BUG report in case of fatal event
|
|
||||||
* Default: Enable
|
|
||||||
*/
|
|
||||||
#define CFG_ENABLE_FATAL_EVENT_TRIGGER_NAME "gEnableFatalEvent"
|
|
||||||
#define CFG_ENABLE_FATAL_EVENT_TRIGGER_MIN (0)
|
|
||||||
#define CFG_ENABLE_FATAL_EVENT_TRIGGER_MAX (1)
|
|
||||||
#define CFG_ENABLE_FATAL_EVENT_TRIGGER_DEFAULT (1)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* gEnableEdcaParams - Enable edca parameter
|
* gEnableEdcaParams - Enable edca parameter
|
||||||
@@ -5948,31 +5906,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_ADAPT_DWELL_WIFI_THRESH_MAX (100)
|
#define CFG_ADAPT_DWELL_WIFI_THRESH_MAX (100)
|
||||||
#define CFG_ADAPT_DWELL_WIFI_THRESH_DEFAULT (10)
|
#define CFG_ADAPT_DWELL_WIFI_THRESH_DEFAULT (10)
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gSub20ChannelWidth - Control sub 20 channel width (5/10 Mhz)
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 2
|
|
||||||
* @Default: 0
|
|
||||||
*
|
|
||||||
* This ini is used to set the sub 20 channel width.
|
|
||||||
* gSub20ChannelWidth=0: indicates do not use Sub 20 MHz bandwidth
|
|
||||||
* gSub20ChannelWidth=1: Bring up SAP/STA in 5 MHz bandwidth
|
|
||||||
* gSub20ChannelWidth=2: Bring up SAP/STA in 10 MHz bandwidth
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: 5/10 Mhz channel width support
|
|
||||||
*
|
|
||||||
* Usage: Internal/External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_SUB_20_CHANNEL_WIDTH_NAME "gSub20ChannelWidth"
|
|
||||||
#define CFG_SUB_20_CHANNEL_WIDTH_MIN (WLAN_SUB_20_CH_WIDTH_NONE)
|
|
||||||
#define CFG_SUB_20_CHANNEL_WIDTH_MAX (WLAN_SUB_20_CH_WIDTH_10)
|
|
||||||
#define CFG_SUB_20_CHANNEL_WIDTH_DEFAULT (WLAN_SUB_20_CH_WIDTH_NONE)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* restart_beaconing_on_chan_avoid_event - control the beaconing entity to move
|
* restart_beaconing_on_chan_avoid_event - control the beaconing entity to move
|
||||||
@@ -6136,37 +6069,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_FILTER_MULTICAST_REPLAY_MAX (1)
|
#define CFG_FILTER_MULTICAST_REPLAY_MAX (1)
|
||||||
#define CFG_FILTER_MULTICAST_REPLAY_DEFAULT (1)
|
#define CFG_FILTER_MULTICAST_REPLAY_DEFAULT (1)
|
||||||
|
|
||||||
/* Optimize channel avoidance indication coming from firmware */
|
|
||||||
#define CFG_OPTIMIZE_CA_EVENT_NAME "goptimize_chan_avoid_event"
|
|
||||||
#define CFG_OPTIMIZE_CA_EVENT_DISABLE (0)
|
|
||||||
#define CFG_OPTIMIZE_CA_EVENT_ENABLE (1)
|
|
||||||
#define CFG_OPTIMIZE_CA_EVENT_DEFAULT (0)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* fw_timeout_crash - Enable/Disable BUG ON
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 1
|
|
||||||
* @Default: 1
|
|
||||||
*
|
|
||||||
* This ini is used to Trigger host crash when firmware fails to send the
|
|
||||||
* response to host
|
|
||||||
* fw_timeout_crash = 0 Disabled
|
|
||||||
* fw_timeout_crash = 1 Trigger host crash
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: SSR
|
|
||||||
*
|
|
||||||
* Usage: Internal/External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_CRASH_FW_TIMEOUT_NAME "fw_timeout_crash"
|
|
||||||
#define CFG_CRASH_FW_TIMEOUT_DISABLE (0)
|
|
||||||
#define CFG_CRASH_FW_TIMEOUT_ENABLE (1)
|
|
||||||
#define CFG_CRASH_FW_TIMEOUT_DEFAULT (1)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* rx_wakelock_timeout - Amount of time to hold wakelock for RX unicast packets
|
* rx_wakelock_timeout - Amount of time to hold wakelock for RX unicast packets
|
||||||
@@ -6844,24 +6746,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MAX (0xFFFFFFFF)
|
#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MAX (0xFFFFFFFF)
|
||||||
#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_DEFAULT (60000)
|
#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_DEFAULT (60000)
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gItoRepeatCount - sets ito repeated count
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 5
|
|
||||||
* @Default: 0
|
|
||||||
*
|
|
||||||
* This ini sets the ito count in FW
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_ITO_REPEAT_COUNT_NAME "gItoRepeatCount"
|
|
||||||
#define CFG_ITO_REPEAT_COUNT_MIN (0)
|
|
||||||
#define CFG_ITO_REPEAT_COUNT_MAX (5)
|
|
||||||
#define CFG_ITO_REPEAT_COUNT_DEFAULT (0)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* gEnableLPRx - Enable/Disable LPRx
|
* gEnableLPRx - Enable/Disable LPRx
|
||||||
@@ -8202,7 +8086,6 @@ struct hdd_config {
|
|||||||
uint32_t IpaUcRxIndRingCount;
|
uint32_t IpaUcRxIndRingCount;
|
||||||
uint32_t IpaUcTxPartitionBase;
|
uint32_t IpaUcTxPartitionBase;
|
||||||
|
|
||||||
bool enableSelfRecovery;
|
|
||||||
#ifdef FEATURE_WLAN_FORCE_SAP_SCC
|
#ifdef FEATURE_WLAN_FORCE_SAP_SCC
|
||||||
uint8_t SapSccChanAvoidance;
|
uint8_t SapSccChanAvoidance;
|
||||||
#endif /* FEATURE_WLAN_FORCE_SAP_SCC */
|
#endif /* FEATURE_WLAN_FORCE_SAP_SCC */
|
||||||
@@ -8223,7 +8106,6 @@ struct hdd_config {
|
|||||||
#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
|
#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
|
||||||
uint8_t sap_11ac_override;
|
uint8_t sap_11ac_override;
|
||||||
uint8_t go_11ac_override;
|
uint8_t go_11ac_override;
|
||||||
uint8_t sap_dot11mc;
|
|
||||||
uint8_t prefer_non_dfs_on_radar;
|
uint8_t prefer_non_dfs_on_radar;
|
||||||
uint8_t conc_system_pref;
|
uint8_t conc_system_pref;
|
||||||
uint32_t dbs_selection_policy;
|
uint32_t dbs_selection_policy;
|
||||||
@@ -8296,7 +8178,6 @@ struct hdd_config {
|
|||||||
/* Tuning TX sched parameters for BK (skip credit limit credit disc) */
|
/* Tuning TX sched parameters for BK (skip credit limit credit disc) */
|
||||||
uint8_t tx_sched_wrr_bk[TX_SCHED_WRR_PARAM_STRING_LENGTH];
|
uint8_t tx_sched_wrr_bk[TX_SCHED_WRR_PARAM_STRING_LENGTH];
|
||||||
|
|
||||||
bool enable_fatal_event;
|
|
||||||
bool apf_enabled;
|
bool apf_enabled;
|
||||||
#ifdef CONFIG_DP_TRACE
|
#ifdef CONFIG_DP_TRACE
|
||||||
bool enable_dp_trace;
|
bool enable_dp_trace;
|
||||||
@@ -8312,8 +8193,6 @@ struct hdd_config {
|
|||||||
uint8_t adapt_dwell_passive_mon_intval;
|
uint8_t adapt_dwell_passive_mon_intval;
|
||||||
uint8_t adapt_dwell_wifi_act_threshold;
|
uint8_t adapt_dwell_wifi_act_threshold;
|
||||||
bool bug_report_for_no_scan_results;
|
bool bug_report_for_no_scan_results;
|
||||||
/* parameter to control GTX */
|
|
||||||
enum cfg_sub_20_channel_width enable_sub_20_channel_width;
|
|
||||||
bool indoor_channel_support;
|
bool indoor_channel_support;
|
||||||
/* control marking indoor channel passive to disable */
|
/* control marking indoor channel passive to disable */
|
||||||
bool force_ssc_disable_indoor_channel;
|
bool force_ssc_disable_indoor_channel;
|
||||||
@@ -8322,8 +8201,6 @@ struct hdd_config {
|
|||||||
bool go_force_11n_for_11ac;
|
bool go_force_11n_for_11ac;
|
||||||
uint16_t sap_tx_leakage_threshold;
|
uint16_t sap_tx_leakage_threshold;
|
||||||
bool multicast_replay_filter;
|
bool multicast_replay_filter;
|
||||||
bool goptimize_chan_avoid_event;
|
|
||||||
bool fw_timeout_crash;
|
|
||||||
uint32_t rx_wakelock_timeout;
|
uint32_t rx_wakelock_timeout;
|
||||||
bool sap_internal_restart;
|
bool sap_internal_restart;
|
||||||
enum restart_beaconing_on_ch_avoid_rule
|
enum restart_beaconing_on_ch_avoid_rule
|
||||||
@@ -8347,11 +8224,8 @@ struct hdd_config {
|
|||||||
uint32_t mawc_nlo_exp_backoff_ratio;
|
uint32_t mawc_nlo_exp_backoff_ratio;
|
||||||
uint32_t mawc_nlo_init_scan_interval;
|
uint32_t mawc_nlo_init_scan_interval;
|
||||||
uint32_t mawc_nlo_max_scan_interval;
|
uint32_t mawc_nlo_max_scan_interval;
|
||||||
/* threshold of packet drops at which FW initiates disconnect */
|
|
||||||
uint16_t pkt_err_disconn_th;
|
|
||||||
bool is_force_1x1;
|
bool is_force_1x1;
|
||||||
enum pmo_auto_pwr_detect_failure_mode auto_pwr_save_fail_mode;
|
enum pmo_auto_pwr_detect_failure_mode auto_pwr_save_fail_mode;
|
||||||
uint8_t ito_repeat_count;
|
|
||||||
bool enable_11d_in_world_mode;
|
bool enable_11d_in_world_mode;
|
||||||
/* 5G preference parameters for boosting RSSI */
|
/* 5G preference parameters for boosting RSSI */
|
||||||
bool enable_5g_band_pref;
|
bool enable_5g_band_pref;
|
||||||
|
@@ -2014,13 +2014,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_IPA_UC_TX_PARTITION_BASE_MIN,
|
CFG_IPA_UC_TX_PARTITION_BASE_MIN,
|
||||||
CFG_IPA_UC_TX_PARTITION_BASE_MAX),
|
CFG_IPA_UC_TX_PARTITION_BASE_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_SELF_RECOVERY_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, enableSelfRecovery,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_SELF_RECOVERY_DEFAULT,
|
|
||||||
CFG_ENABLE_SELF_RECOVERY_MIN,
|
|
||||||
CFG_ENABLE_SELF_RECOVERY_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_SAP_SUSPEND, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ENABLE_SAP_SUSPEND, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, enable_sap_suspend,
|
struct hdd_config, enable_sap_suspend,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2103,13 +2096,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_GO_11AC_OVERRIDE_MIN,
|
CFG_GO_11AC_OVERRIDE_MIN,
|
||||||
CFG_GO_11AC_OVERRIDE_MAX),
|
CFG_GO_11AC_OVERRIDE_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_SAP_DOT11MC_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, sap_dot11mc,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_SAP_DOT11MC_DEFAULT,
|
|
||||||
CFG_SAP_DOT11MC_MIN,
|
|
||||||
CFG_SAP_DOT11MC_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_NON_DFS_CHAN_ON_RADAR, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ENABLE_NON_DFS_CHAN_ON_RADAR, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, prefer_non_dfs_on_radar,
|
struct hdd_config, prefer_non_dfs_on_radar,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2330,14 +2316,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_MIN,
|
CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_MIN,
|
||||||
CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_MAX),
|
CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_FATAL_EVENT_TRIGGER_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, enable_fatal_event,
|
|
||||||
VAR_FLAGS_OPTIONAL |
|
|
||||||
VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_FATAL_EVENT_TRIGGER_DEFAULT,
|
|
||||||
CFG_ENABLE_FATAL_EVENT_TRIGGER_MIN,
|
|
||||||
CFG_ENABLE_FATAL_EVENT_TRIGGER_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_EDCA_INI_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ENABLE_EDCA_INI_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, enable_edca_params,
|
struct hdd_config, enable_edca_params,
|
||||||
VAR_FLAGS_OPTIONAL |
|
VAR_FLAGS_OPTIONAL |
|
||||||
@@ -2529,13 +2507,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_ADAPT_DWELL_LPF_WEIGHT_MIN,
|
CFG_ADAPT_DWELL_LPF_WEIGHT_MIN,
|
||||||
CFG_ADAPT_DWELL_LPF_WEIGHT_MAX),
|
CFG_ADAPT_DWELL_LPF_WEIGHT_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_SUB_20_CHANNEL_WIDTH_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, enable_sub_20_channel_width,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_SUB_20_CHANNEL_WIDTH_DEFAULT,
|
|
||||||
CFG_SUB_20_CHANNEL_WIDTH_MIN,
|
|
||||||
CFG_SUB_20_CHANNEL_WIDTH_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ADAPT_DWELL_PASMON_INTVAL_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ADAPT_DWELL_PASMON_INTVAL_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, adapt_dwell_passive_mon_intval,
|
struct hdd_config, adapt_dwell_passive_mon_intval,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2617,20 +2588,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_FILTER_MULTICAST_REPLAY_MIN,
|
CFG_FILTER_MULTICAST_REPLAY_MIN,
|
||||||
CFG_FILTER_MULTICAST_REPLAY_MAX),
|
CFG_FILTER_MULTICAST_REPLAY_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_OPTIMIZE_CA_EVENT_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, goptimize_chan_avoid_event,
|
|
||||||
VAR_FLAGS_OPTIONAL |
|
|
||||||
VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_OPTIMIZE_CA_EVENT_DEFAULT,
|
|
||||||
CFG_OPTIMIZE_CA_EVENT_DISABLE,
|
|
||||||
CFG_OPTIMIZE_CA_EVENT_ENABLE),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_CRASH_FW_TIMEOUT_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, fw_timeout_crash,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_CRASH_FW_TIMEOUT_DEFAULT,
|
|
||||||
CFG_CRASH_FW_TIMEOUT_DISABLE,
|
|
||||||
CFG_CRASH_FW_TIMEOUT_ENABLE),
|
|
||||||
REG_VARIABLE(CFG_RX_WAKELOCK_TIMEOUT_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_RX_WAKELOCK_TIMEOUT_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, rx_wakelock_timeout,
|
struct hdd_config, rx_wakelock_timeout,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2739,13 +2696,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MIN,
|
CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MIN,
|
||||||
CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MAX),
|
CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_DROPPED_PKT_DISCONNECT_TH_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, pkt_err_disconn_th,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_DROPPED_PKT_DISCONNECT_TH_DEFAULT,
|
|
||||||
CFG_DROPPED_PKT_DISCONNECT_TH_MIN,
|
|
||||||
CFG_DROPPED_PKT_DISCONNECT_TH_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_FORCE_1X1_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_FORCE_1X1_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, is_force_1x1,
|
struct hdd_config, is_force_1x1,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2753,13 +2703,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_FORCE_1X1_MIN,
|
CFG_FORCE_1X1_MIN,
|
||||||
CFG_FORCE_1X1_MAX),
|
CFG_FORCE_1X1_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ITO_REPEAT_COUNT_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, ito_repeat_count,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ITO_REPEAT_COUNT_DEFAULT,
|
|
||||||
CFG_ITO_REPEAT_COUNT_MIN,
|
|
||||||
CFG_ITO_REPEAT_COUNT_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_11D_IN_WORLD_MODE_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ENABLE_11D_IN_WORLD_MODE_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, enable_11d_in_world_mode,
|
struct hdd_config, enable_11d_in_world_mode,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -4723,8 +4666,6 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
|
|||||||
/* Update maximum interfaces information */
|
/* Update maximum interfaces information */
|
||||||
smeConfig->csrConfig.max_intf_count = hdd_ctx->max_intf_count;
|
smeConfig->csrConfig.max_intf_count = hdd_ctx->max_intf_count;
|
||||||
|
|
||||||
smeConfig->csrConfig.enableSelfRecovery =
|
|
||||||
hdd_ctx->config->enableSelfRecovery;
|
|
||||||
smeConfig->csrConfig.conc_custom_rule1 =
|
smeConfig->csrConfig.conc_custom_rule1 =
|
||||||
hdd_ctx->config->conc_custom_rule1;
|
hdd_ctx->config->conc_custom_rule1;
|
||||||
smeConfig->csrConfig.conc_custom_rule2 =
|
smeConfig->csrConfig.conc_custom_rule2 =
|
||||||
@@ -4759,8 +4700,6 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
|
|||||||
hdd_ctx->config->min_delay_btw_roam_scans;
|
hdd_ctx->config->min_delay_btw_roam_scans;
|
||||||
smeConfig->csrConfig.roam_trigger_reason_bitmask =
|
smeConfig->csrConfig.roam_trigger_reason_bitmask =
|
||||||
hdd_ctx->config->roam_trigger_reason_bitmask;
|
hdd_ctx->config->roam_trigger_reason_bitmask;
|
||||||
smeConfig->csrConfig.enable_fatal_event =
|
|
||||||
pConfig->enable_fatal_event;
|
|
||||||
smeConfig->csrConfig.scan_adaptive_dwell_mode =
|
smeConfig->csrConfig.scan_adaptive_dwell_mode =
|
||||||
hdd_ctx->config->scan_adaptive_dwell_mode;
|
hdd_ctx->config->scan_adaptive_dwell_mode;
|
||||||
smeConfig->csrConfig.scan_adaptive_dwell_mode_nc =
|
smeConfig->csrConfig.scan_adaptive_dwell_mode_nc =
|
||||||
@@ -4820,9 +4759,6 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
|
|||||||
smeConfig->csrConfig.wlm_latency_flags[3] =
|
smeConfig->csrConfig.wlm_latency_flags[3] =
|
||||||
hdd_ctx->config->wlm_latency_flags_ultralow;
|
hdd_ctx->config->wlm_latency_flags_ultralow;
|
||||||
|
|
||||||
smeConfig->csrConfig.pkt_err_disconn_th =
|
|
||||||
hdd_ctx->config->pkt_err_disconn_th;
|
|
||||||
|
|
||||||
smeConfig->csrConfig.is_force_1x1 =
|
smeConfig->csrConfig.is_force_1x1 =
|
||||||
hdd_ctx->config->is_force_1x1;
|
hdd_ctx->config->is_force_1x1;
|
||||||
|
|
||||||
|
@@ -1887,9 +1887,17 @@ static int hdd_update_reg_chan_info(struct hdd_adapter *adapter,
|
|||||||
struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
||||||
tsap_config_t *sap_config = &adapter->session.ap.sap_config;
|
tsap_config_t *sap_config = &adapter->session.ap.sap_config;
|
||||||
mac_handle_t mac_handle;
|
mac_handle_t mac_handle;
|
||||||
|
uint8_t sub_20_chan_width = 0;
|
||||||
|
QDF_STATUS status;
|
||||||
|
|
||||||
mac_handle = hdd_ctx->mac_handle;
|
mac_handle = hdd_ctx->mac_handle;
|
||||||
sap_config->channel_info_count = channel_count;
|
sap_config->channel_info_count = channel_count;
|
||||||
|
|
||||||
|
status = ucfg_mlme_get_sub_20_chan_width(hdd_ctx->psoc,
|
||||||
|
&sub_20_chan_width);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status))
|
||||||
|
hdd_err("Failed to get sub_20_chan_width config");
|
||||||
|
|
||||||
for (i = 0; i < channel_count; i++) {
|
for (i = 0; i < channel_count; i++) {
|
||||||
icv = &sap_config->channel_info[i];
|
icv = &sap_config->channel_info[i];
|
||||||
chan = channel_list[i];
|
chan = channel_list[i];
|
||||||
@@ -1928,7 +1936,7 @@ static int hdd_update_reg_chan_info(struct hdd_adapter *adapter,
|
|||||||
sap_config->acs_cfg.ch_width,
|
sap_config->acs_cfg.ch_width,
|
||||||
sap_config->acs_cfg.is_ht_enabled,
|
sap_config->acs_cfg.is_ht_enabled,
|
||||||
sap_config->acs_cfg.is_vht_enabled,
|
sap_config->acs_cfg.is_vht_enabled,
|
||||||
hdd_ctx->config->enable_sub_20_channel_width);
|
sub_20_chan_width);
|
||||||
if (icv->flags & IEEE80211_CHAN_PASSIVE)
|
if (icv->flags & IEEE80211_CHAN_PASSIVE)
|
||||||
icv->flagext |= IEEE80211_CHAN_DFS;
|
icv->flagext |= IEEE80211_CHAN_DFS;
|
||||||
|
|
||||||
|
@@ -65,6 +65,8 @@ struct qcmbr_data {
|
|||||||
int hdd_update_cds_config_ftm(struct hdd_context *hdd_ctx)
|
int hdd_update_cds_config_ftm(struct hdd_context *hdd_ctx)
|
||||||
{
|
{
|
||||||
struct cds_config_info *cds_cfg;
|
struct cds_config_info *cds_cfg;
|
||||||
|
QDF_STATUS status;
|
||||||
|
bool self_recovery;
|
||||||
|
|
||||||
cds_cfg = qdf_mem_malloc(sizeof(*cds_cfg));
|
cds_cfg = qdf_mem_malloc(sizeof(*cds_cfg));
|
||||||
if (!cds_cfg) {
|
if (!cds_cfg) {
|
||||||
@@ -72,10 +74,16 @@ int hdd_update_cds_config_ftm(struct hdd_context *hdd_ctx)
|
|||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
status = ucfg_mlme_get_self_recovery(hdd_ctx->psoc, &self_recovery);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
|
hdd_err("Failed to get self recovery ini config");
|
||||||
|
return -EIO;
|
||||||
|
}
|
||||||
|
|
||||||
cds_cfg->driver_type = QDF_DRIVER_TYPE_MFG;
|
cds_cfg->driver_type = QDF_DRIVER_TYPE_MFG;
|
||||||
hdd_lpass_populate_cds_config(cds_cfg, hdd_ctx);
|
hdd_lpass_populate_cds_config(cds_cfg, hdd_ctx);
|
||||||
cds_cfg->sub_20_channel_width = WLAN_SUB_20_CH_WIDTH_NONE;
|
cds_cfg->sub_20_channel_width = WLAN_SUB_20_CH_WIDTH_NONE;
|
||||||
cds_cfg->self_recovery_enabled = hdd_ctx->config->enableSelfRecovery;
|
cds_cfg->self_recovery_enabled = self_recovery;
|
||||||
cds_cfg->num_vdevs = hdd_ctx->config->num_vdevs;
|
cds_cfg->num_vdevs = hdd_ctx->config->num_vdevs;
|
||||||
cds_init_ini_config(cds_cfg);
|
cds_init_ini_config(cds_cfg);
|
||||||
|
|
||||||
|
@@ -4186,6 +4186,7 @@ static int wlan_hdd_sap_p2p_11ac_overrides(struct hdd_adapter *ap_adapter)
|
|||||||
tsap_config_t *sap_cfg = &ap_adapter->session.ap.sap_config;
|
tsap_config_t *sap_cfg = &ap_adapter->session.ap.sap_config;
|
||||||
struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(ap_adapter);
|
struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(ap_adapter);
|
||||||
uint8_t ch_width;
|
uint8_t ch_width;
|
||||||
|
uint8_t sub_20_chan_width;
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
|
|
||||||
/* Fixed channel 11AC override:
|
/* Fixed channel 11AC override:
|
||||||
@@ -4201,7 +4202,14 @@ static int wlan_hdd_sap_p2p_11ac_overrides(struct hdd_adapter *ap_adapter)
|
|||||||
* not allow 11AC rates or more than 20 MHz channel width when
|
* not allow 11AC rates or more than 20 MHz channel width when
|
||||||
* enable_sub_20_channel_width is non zero
|
* enable_sub_20_channel_width is non zero
|
||||||
*/
|
*/
|
||||||
if (!hdd_ctx->config->enable_sub_20_channel_width &&
|
status = ucfg_mlme_get_sub_20_chan_width(hdd_ctx->psoc,
|
||||||
|
&sub_20_chan_width);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
|
hdd_err("Failed to get sub_20_chan_width config");
|
||||||
|
return -EIO;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!sub_20_chan_width &&
|
||||||
(sap_cfg->SapHw_mode == eCSR_DOT11_MODE_11n ||
|
(sap_cfg->SapHw_mode == eCSR_DOT11_MODE_11n ||
|
||||||
sap_cfg->SapHw_mode == eCSR_DOT11_MODE_11ac ||
|
sap_cfg->SapHw_mode == eCSR_DOT11_MODE_11ac ||
|
||||||
sap_cfg->SapHw_mode == eCSR_DOT11_MODE_11ac_ONLY ||
|
sap_cfg->SapHw_mode == eCSR_DOT11_MODE_11ac_ONLY ||
|
||||||
@@ -5086,15 +5094,6 @@ int wlan_hdd_cfg80211_start_bss(struct hdd_adapter *adapter,
|
|||||||
/* Enable OBSS protection */
|
/* Enable OBSS protection */
|
||||||
pConfig->obssProtEnabled = iniConfig->apOBSSProtEnabled;
|
pConfig->obssProtEnabled = iniConfig->apOBSSProtEnabled;
|
||||||
|
|
||||||
if (adapter->device_mode == QDF_SAP_MODE)
|
|
||||||
pConfig->sap_dot11mc =
|
|
||||||
(WLAN_HDD_GET_CTX(adapter))->config->sap_dot11mc;
|
|
||||||
else /* for P2P-Go case */
|
|
||||||
pConfig->sap_dot11mc = 1;
|
|
||||||
|
|
||||||
hdd_debug("11MC Support Enabled : %d\n",
|
|
||||||
pConfig->sap_dot11mc);
|
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_11W
|
#ifdef WLAN_FEATURE_11W
|
||||||
pConfig->mfpCapable = MFPCapable;
|
pConfig->mfpCapable = MFPCapable;
|
||||||
pConfig->mfpRequired = MFPRequired;
|
pConfig->mfpRequired = MFPRequired;
|
||||||
|
@@ -1696,6 +1696,7 @@ void hdd_update_tgt_cfg(hdd_handle_t hdd_handle, struct wma_tgt_cfg *cfg)
|
|||||||
uint8_t temp_band_cap, band_capability;
|
uint8_t temp_band_cap, band_capability;
|
||||||
struct cds_config_info *cds_cfg = cds_get_ini_config();
|
struct cds_config_info *cds_cfg = cds_get_ini_config();
|
||||||
uint8_t antenna_mode;
|
uint8_t antenna_mode;
|
||||||
|
uint8_t sub_20_chan_width;
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
mac_handle_t mac_handle;
|
mac_handle_t mac_handle;
|
||||||
bool bval = false;
|
bool bval = false;
|
||||||
@@ -1747,15 +1748,21 @@ void hdd_update_tgt_cfg(hdd_handle_t hdd_handle, struct wma_tgt_cfg *cfg)
|
|||||||
ucfg_ipa_reg_send_to_nw_cb(hdd_ctx->pdev,
|
ucfg_ipa_reg_send_to_nw_cb(hdd_ctx->pdev,
|
||||||
hdd_ipa_send_skb_to_network);
|
hdd_ipa_send_skb_to_network);
|
||||||
|
|
||||||
|
status = ucfg_mlme_get_sub_20_chan_width(hdd_ctx->psoc,
|
||||||
|
&sub_20_chan_width);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
|
hdd_err("Failed to get sub_20_chan_width config");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (cds_cfg) {
|
if (cds_cfg) {
|
||||||
if (hdd_ctx->config->enable_sub_20_channel_width !=
|
if (sub_20_chan_width !=
|
||||||
WLAN_SUB_20_CH_WIDTH_NONE && !cfg->sub_20_support) {
|
WLAN_SUB_20_CH_WIDTH_NONE && !cfg->sub_20_support) {
|
||||||
hdd_err("User requested sub 20 MHz channel width but unsupported by FW.");
|
hdd_err("User requested sub 20 MHz channel width but unsupported by FW.");
|
||||||
cds_cfg->sub_20_channel_width =
|
cds_cfg->sub_20_channel_width =
|
||||||
WLAN_SUB_20_CH_WIDTH_NONE;
|
WLAN_SUB_20_CH_WIDTH_NONE;
|
||||||
} else {
|
} else {
|
||||||
cds_cfg->sub_20_channel_width =
|
cds_cfg->sub_20_channel_width = sub_20_chan_width;
|
||||||
hdd_ctx->config->enable_sub_20_channel_width;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -9034,7 +9041,8 @@ static struct hdd_context *hdd_context_create(struct device *dev)
|
|||||||
hdd_ctx->config->timer_multiplier);
|
hdd_ctx->config->timer_multiplier);
|
||||||
qdf_timer_set_multiplier(hdd_ctx->config->timer_multiplier);
|
qdf_timer_set_multiplier(hdd_ctx->config->timer_multiplier);
|
||||||
|
|
||||||
cds_set_fatal_event(hdd_ctx->config->enable_fatal_event);
|
cds_set_fatal_event(cfg_get(hdd_ctx->psoc,
|
||||||
|
CFG_ENABLE_FATAL_EVENT_TRIGGER));
|
||||||
|
|
||||||
hdd_override_ini_config(hdd_ctx);
|
hdd_override_ini_config(hdd_ctx);
|
||||||
|
|
||||||
@@ -9427,7 +9435,10 @@ static int hdd_update_cds_config(struct hdd_context *hdd_ctx)
|
|||||||
struct cds_config_info *cds_cfg;
|
struct cds_config_info *cds_cfg;
|
||||||
int value;
|
int value;
|
||||||
uint8_t band_capability;
|
uint8_t band_capability;
|
||||||
|
uint8_t ito_repeat_count;
|
||||||
bool crash_inject;
|
bool crash_inject;
|
||||||
|
bool self_recovery;
|
||||||
|
bool fw_timeout_crash;
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
|
|
||||||
cds_cfg = (struct cds_config_info *)qdf_mem_malloc(sizeof(*cds_cfg));
|
cds_cfg = (struct cds_config_info *)qdf_mem_malloc(sizeof(*cds_cfg));
|
||||||
@@ -9447,12 +9458,32 @@ static int hdd_update_cds_config(struct hdd_context *hdd_ctx)
|
|||||||
cds_cfg->dfs_phyerr_filter_offload =
|
cds_cfg->dfs_phyerr_filter_offload =
|
||||||
hdd_ctx->config->fDfsPhyerrFilterOffload;
|
hdd_ctx->config->fDfsPhyerrFilterOffload;
|
||||||
|
|
||||||
status = ucfg_mlme_get_crash_inject_cfg(hdd_ctx->psoc, &crash_inject);
|
status = ucfg_mlme_get_crash_inject(hdd_ctx->psoc, &crash_inject);
|
||||||
if (QDF_IS_STATUS_ERROR(status)) {
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
hdd_err("Failed to get crash inject ini config");
|
hdd_err("Failed to get crash inject ini config");
|
||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
status = ucfg_mlme_get_self_recovery(hdd_ctx->psoc, &self_recovery);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
|
hdd_err("Failed to get self recovery ini config");
|
||||||
|
goto exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
status = ucfg_mlme_get_fw_timeout_crash(hdd_ctx->psoc,
|
||||||
|
&fw_timeout_crash);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
|
hdd_err("Failed to get fw timeout crash ini config");
|
||||||
|
goto exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
status = ucfg_mlme_get_ito_repeat_count(hdd_ctx->psoc,
|
||||||
|
&ito_repeat_count);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
|
hdd_err("Failed to get ITO repeat count ini config");
|
||||||
|
goto exit;
|
||||||
|
}
|
||||||
|
|
||||||
cds_cfg->force_target_assert_enabled = crash_inject;
|
cds_cfg->force_target_assert_enabled = crash_inject;
|
||||||
|
|
||||||
ucfg_mlme_get_sap_max_offload_peers(hdd_ctx->psoc, &value);
|
ucfg_mlme_get_sap_max_offload_peers(hdd_ctx->psoc, &value);
|
||||||
@@ -9504,12 +9535,12 @@ static int hdd_update_cds_config(struct hdd_context *hdd_ctx)
|
|||||||
cds_cfg->flow_steering_enabled = hdd_ctx->config->flow_steering_enable;
|
cds_cfg->flow_steering_enabled = hdd_ctx->config->flow_steering_enable;
|
||||||
cds_cfg->max_msdus_per_rxinorderind =
|
cds_cfg->max_msdus_per_rxinorderind =
|
||||||
hdd_ctx->config->max_msdus_per_rxinorderind;
|
hdd_ctx->config->max_msdus_per_rxinorderind;
|
||||||
cds_cfg->self_recovery_enabled = hdd_ctx->config->enableSelfRecovery;
|
cds_cfg->self_recovery_enabled = self_recovery;
|
||||||
cds_cfg->fw_timeout_crash = hdd_ctx->config->fw_timeout_crash;
|
cds_cfg->fw_timeout_crash = fw_timeout_crash;
|
||||||
cds_cfg->active_uc_apf_mode = hdd_ctx->config->active_uc_apf_mode;
|
cds_cfg->active_uc_apf_mode = hdd_ctx->config->active_uc_apf_mode;
|
||||||
cds_cfg->active_mc_bc_apf_mode = hdd_ctx->config->active_mc_bc_apf_mode;
|
cds_cfg->active_mc_bc_apf_mode = hdd_ctx->config->active_mc_bc_apf_mode;
|
||||||
|
|
||||||
cds_cfg->ito_repeat_count = hdd_ctx->config->ito_repeat_count;
|
cds_cfg->ito_repeat_count = ito_repeat_count;
|
||||||
|
|
||||||
status = ucfg_mlme_get_band_capability(hdd_ctx->psoc, &band_capability);
|
status = ucfg_mlme_get_band_capability(hdd_ctx->psoc, &band_capability);
|
||||||
if (QDF_IS_STATUS_ERROR(status))
|
if (QDF_IS_STATUS_ERROR(status))
|
||||||
@@ -9564,8 +9595,6 @@ static int hdd_update_user_config(struct hdd_context *hdd_ctx)
|
|||||||
hdd_ctx->config->Is11dSupportEnabled;
|
hdd_ctx->config->Is11dSupportEnabled;
|
||||||
user_config->is_11h_support_enabled =
|
user_config->is_11h_support_enabled =
|
||||||
hdd_ctx->config->Is11hSupportEnabled;
|
hdd_ctx->config->Is11hSupportEnabled;
|
||||||
user_config->optimize_chan_avoid_event =
|
|
||||||
hdd_ctx->config->goptimize_chan_avoid_event;
|
|
||||||
cfg_p2p_get_skip_dfs_channel_p2p_search(hdd_ctx->psoc,
|
cfg_p2p_get_skip_dfs_channel_p2p_search(hdd_ctx->psoc,
|
||||||
&skip_dfs_in_p2p_search);
|
&skip_dfs_in_p2p_search);
|
||||||
user_config->skip_dfs_chnl_in_p2p_search = skip_dfs_in_p2p_search;
|
user_config->skip_dfs_chnl_in_p2p_search = skip_dfs_in_p2p_search;
|
||||||
@@ -10507,14 +10536,11 @@ static int hdd_features_init(struct hdd_context *hdd_ctx)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hdd_ctx->config->goptimize_chan_avoid_event) {
|
status = sme_enable_disable_chanavoidind_event(mac_handle, 0);
|
||||||
status = sme_enable_disable_chanavoidind_event(
|
if (QDF_IS_STATUS_ERROR(status) && (status != QDF_STATUS_E_NOSUPPORT)) {
|
||||||
mac_handle, 0);
|
|
||||||
if (!QDF_IS_STATUS_SUCCESS(status)) {
|
|
||||||
hdd_err("Failed to disable Chan Avoidance Indication");
|
hdd_err("Failed to disable Chan Avoidance Indication");
|
||||||
goto deregister_cb;
|
goto deregister_cb;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/* register P2P Listen Offload event callback */
|
/* register P2P Listen Offload event callback */
|
||||||
if (wma_is_p2p_lo_capable())
|
if (wma_is_p2p_lo_capable())
|
||||||
@@ -13491,11 +13517,17 @@ static void hdd_update_ol_config(struct hdd_context *hdd_ctx)
|
|||||||
{
|
{
|
||||||
struct ol_config_info cfg;
|
struct ol_config_info cfg;
|
||||||
struct ol_context *ol_ctx = cds_get_context(QDF_MODULE_ID_BMI);
|
struct ol_context *ol_ctx = cds_get_context(QDF_MODULE_ID_BMI);
|
||||||
|
bool self_recovery = false;
|
||||||
|
QDF_STATUS status;
|
||||||
|
|
||||||
if (!ol_ctx)
|
if (!ol_ctx)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
cfg.enable_self_recovery = hdd_ctx->config->enableSelfRecovery;
|
status = ucfg_mlme_get_self_recovery(hdd_ctx->psoc, &self_recovery);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status))
|
||||||
|
hdd_err("Failed to get self recovery ini config");
|
||||||
|
|
||||||
|
cfg.enable_self_recovery = self_recovery;
|
||||||
cfg.enable_uart_print = hdd_ctx->config->enablefwprint;
|
cfg.enable_uart_print = hdd_ctx->config->enablefwprint;
|
||||||
cfg.enable_fw_log = hdd_ctx->config->enable_fw_log;
|
cfg.enable_fw_log = hdd_ctx->config->enable_fw_log;
|
||||||
cfg.enable_ramdump_collection = hdd_ctx->config->is_ramdump_enabled;
|
cfg.enable_ramdump_collection = hdd_ctx->config->is_ramdump_enabled;
|
||||||
@@ -13537,17 +13569,22 @@ static void hdd_update_hif_config(struct hdd_context *hdd_ctx)
|
|||||||
struct hif_opaque_softc *scn = cds_get_context(QDF_MODULE_ID_HIF);
|
struct hif_opaque_softc *scn = cds_get_context(QDF_MODULE_ID_HIF);
|
||||||
struct hif_config_info cfg;
|
struct hif_config_info cfg;
|
||||||
bool prevent_link_down = false;
|
bool prevent_link_down = false;
|
||||||
|
bool self_recovery = false;
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
|
|
||||||
if (!scn)
|
if (!scn)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
status = ucfg_mlme_get_prevent_link_down_cfg(hdd_ctx->psoc,
|
status = ucfg_mlme_get_prevent_link_down(hdd_ctx->psoc,
|
||||||
&prevent_link_down);
|
&prevent_link_down);
|
||||||
if (QDF_IS_STATUS_ERROR(status))
|
if (QDF_IS_STATUS_ERROR(status))
|
||||||
hdd_err("Failed to get prevent_link_down config");
|
hdd_err("Failed to get prevent_link_down config");
|
||||||
|
|
||||||
cfg.enable_self_recovery = hdd_ctx->config->enableSelfRecovery;
|
status = ucfg_mlme_get_self_recovery(hdd_ctx->psoc, &self_recovery);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status))
|
||||||
|
hdd_err("Failed to get self recovery ini config");
|
||||||
|
|
||||||
|
cfg.enable_self_recovery = self_recovery;
|
||||||
hdd_populate_runtime_cfg(hdd_ctx, &cfg);
|
hdd_populate_runtime_cfg(hdd_ctx, &cfg);
|
||||||
hif_init_ini_config(scn, &cfg);
|
hif_init_ini_config(scn, &cfg);
|
||||||
|
|
||||||
@@ -13857,7 +13894,7 @@ static int hdd_update_scan_config(struct hdd_context *hdd_ctx)
|
|||||||
uint8_t scan_bucket_thre;
|
uint8_t scan_bucket_thre;
|
||||||
uint8_t select_5ghz_margin;
|
uint8_t select_5ghz_margin;
|
||||||
|
|
||||||
status = ucfg_mlme_get_select_5ghz_margin_cfg(hdd_ctx->psoc,
|
status = ucfg_mlme_get_select_5ghz_margin(hdd_ctx->psoc,
|
||||||
&select_5ghz_margin);
|
&select_5ghz_margin);
|
||||||
if (QDF_IS_STATUS_ERROR(status)) {
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
hdd_err("Failed to get select_5ghz_margin");
|
hdd_err("Failed to get select_5ghz_margin");
|
||||||
@@ -13974,11 +14011,6 @@ int hdd_enable_disable_ca_event(struct hdd_context *hdd_ctx, uint8_t set_value)
|
|||||||
if (0 != wlan_hdd_validate_context(hdd_ctx))
|
if (0 != wlan_hdd_validate_context(hdd_ctx))
|
||||||
return -EAGAIN;
|
return -EAGAIN;
|
||||||
|
|
||||||
if (!hdd_ctx->config->goptimize_chan_avoid_event) {
|
|
||||||
hdd_warn("goptimize_chan_avoid_event ini param disabled");
|
|
||||||
return -EINVAL;
|
|
||||||
}
|
|
||||||
|
|
||||||
status = sme_enable_disable_chanavoidind_event(hdd_ctx->mac_handle,
|
status = sme_enable_disable_chanavoidind_event(hdd_ctx->mac_handle,
|
||||||
set_value);
|
set_value);
|
||||||
if (!QDF_IS_STATUS_SUCCESS(status)) {
|
if (!QDF_IS_STATUS_SUCCESS(status)) {
|
||||||
|
@@ -455,6 +455,8 @@ static int __wlan_hdd_cfg80211_scan(struct wiphy *wiphy,
|
|||||||
enum scan_reject_states curr_reason;
|
enum scan_reject_states curr_reason;
|
||||||
static uint32_t scan_ebusy_cnt;
|
static uint32_t scan_ebusy_cnt;
|
||||||
struct scan_params params = {0};
|
struct scan_params params = {0};
|
||||||
|
bool self_recovery;
|
||||||
|
QDF_STATUS qdf_status;
|
||||||
|
|
||||||
hdd_enter();
|
hdd_enter();
|
||||||
|
|
||||||
@@ -482,6 +484,12 @@ static int __wlan_hdd_cfg80211_scan(struct wiphy *wiphy,
|
|||||||
if (!sme_is_session_id_valid(hdd_ctx->mac_handle, adapter->session_id))
|
if (!sme_is_session_id_valid(hdd_ctx->mac_handle, adapter->session_id))
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
|
qdf_status = ucfg_mlme_get_self_recovery(hdd_ctx->psoc, &self_recovery);
|
||||||
|
if (QDF_IS_STATUS_ERROR(qdf_status)) {
|
||||||
|
hdd_err("Failed to get self recovery ini config");
|
||||||
|
return -EIO;
|
||||||
|
}
|
||||||
|
|
||||||
if ((eConnectionState_Associated ==
|
if ((eConnectionState_Associated ==
|
||||||
WLAN_HDD_GET_STATION_CTX_PTR(adapter)->
|
WLAN_HDD_GET_STATION_CTX_PTR(adapter)->
|
||||||
conn_info.connState) &&
|
conn_info.connState) &&
|
||||||
@@ -574,12 +582,12 @@ static int __wlan_hdd_cfg80211_scan(struct wiphy *wiphy,
|
|||||||
jiffies);
|
jiffies);
|
||||||
hdd_ctx->last_scan_reject_timestamp = 0;
|
hdd_ctx->last_scan_reject_timestamp = 0;
|
||||||
hdd_ctx->scan_reject_cnt = 0;
|
hdd_ctx->scan_reject_cnt = 0;
|
||||||
if (hdd_ctx->config->enable_fatal_event) {
|
if (cds_is_fatal_event_enabled()) {
|
||||||
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
||||||
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
||||||
WLAN_LOG_REASON_SCAN_NOT_ALLOWED,
|
WLAN_LOG_REASON_SCAN_NOT_ALLOWED,
|
||||||
false,
|
false,
|
||||||
hdd_ctx->config->enableSelfRecovery);
|
self_recovery);
|
||||||
} else {
|
} else {
|
||||||
hdd_err("Triggering SSR due to scan stuck");
|
hdd_err("Triggering SSR due to scan stuck");
|
||||||
cds_trigger_recovery(SCAN_FAILURE);
|
cds_trigger_recovery(SCAN_FAILURE);
|
||||||
|
@@ -8953,7 +8953,7 @@ int hdd_crash_inject(struct hdd_adapter *adapter, uint32_t v1, uint32_t v2)
|
|||||||
v1, v2);
|
v1, v2);
|
||||||
hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
||||||
|
|
||||||
status = ucfg_mlme_get_crash_inject_cfg(hdd_ctx->psoc, &crash_inject);
|
status = ucfg_mlme_get_crash_inject(hdd_ctx->psoc, &crash_inject);
|
||||||
if (QDF_IS_STATUS_ERROR(status)) {
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
hdd_err("Failed to get crash inject ini config");
|
hdd_err("Failed to get crash inject ini config");
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -327,7 +327,7 @@ lim_trigger_sta_deletion(tpAniSirGlobal mac_ctx, tpDphHashNode sta_ds,
|
|||||||
mlm_disassoc_ind.sessionId = session_entry->peSessionId;
|
mlm_disassoc_ind.sessionId = session_entry->peSessionId;
|
||||||
lim_post_sme_message(mac_ctx, LIM_MLM_DISASSOC_IND,
|
lim_post_sme_message(mac_ctx, LIM_MLM_DISASSOC_IND,
|
||||||
(uint32_t *) &mlm_disassoc_ind);
|
(uint32_t *) &mlm_disassoc_ind);
|
||||||
if (mac_ctx->roam.configParam.enable_fatal_event)
|
if (mac_ctx->mlme_cfg->gen.fatal_event_trigger)
|
||||||
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
||||||
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
||||||
WLAN_LOG_REASON_HB_FAILURE,
|
WLAN_LOG_REASON_HB_FAILURE,
|
||||||
@@ -429,7 +429,7 @@ lim_tear_down_link_with_ap(tpAniSirGlobal pMac, uint8_t sessionId,
|
|||||||
if (LIM_IS_STA_ROLE(psessionEntry))
|
if (LIM_IS_STA_ROLE(psessionEntry))
|
||||||
lim_post_sme_message(pMac, LIM_MLM_DEAUTH_IND,
|
lim_post_sme_message(pMac, LIM_MLM_DEAUTH_IND,
|
||||||
(uint32_t *) &mlmDeauthInd);
|
(uint32_t *) &mlmDeauthInd);
|
||||||
if (pMac->roam.configParam.enable_fatal_event)
|
if (pMac->mlme_cfg->gen.fatal_event_trigger)
|
||||||
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
||||||
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
||||||
WLAN_LOG_REASON_HB_FAILURE,
|
WLAN_LOG_REASON_HB_FAILURE,
|
||||||
|
@@ -156,7 +156,7 @@ lim_process_deauth_frame(tpAniSirGlobal pMac, uint8_t *pRxPacketInfo,
|
|||||||
reasonCode, lim_dot11_reason_str(reasonCode),
|
reasonCode, lim_dot11_reason_str(reasonCode),
|
||||||
MAC_ADDR_ARRAY(pHdr->sa));
|
MAC_ADDR_ARRAY(pHdr->sa));
|
||||||
|
|
||||||
if (pMac->roam.configParam.enable_fatal_event &&
|
if (pMac->mlme_cfg->gen.fatal_event_trigger &&
|
||||||
(reasonCode != eSIR_MAC_UNSPEC_FAILURE_REASON &&
|
(reasonCode != eSIR_MAC_UNSPEC_FAILURE_REASON &&
|
||||||
reasonCode != eSIR_MAC_DEAUTH_LEAVING_BSS_REASON &&
|
reasonCode != eSIR_MAC_DEAUTH_LEAVING_BSS_REASON &&
|
||||||
reasonCode != eSIR_MAC_DISASSOC_LEAVING_BSS_REASON)) {
|
reasonCode != eSIR_MAC_DISASSOC_LEAVING_BSS_REASON)) {
|
||||||
|
@@ -155,7 +155,7 @@ lim_process_disassoc_frame(tpAniSirGlobal pMac, uint8_t *pRxPacketInfo,
|
|||||||
lim_diag_event_report(pMac, WLAN_PE_DIAG_DISASSOC_FRAME_EVENT,
|
lim_diag_event_report(pMac, WLAN_PE_DIAG_DISASSOC_FRAME_EVENT,
|
||||||
psessionEntry, 0, reasonCode);
|
psessionEntry, 0, reasonCode);
|
||||||
|
|
||||||
if (pMac->roam.configParam.enable_fatal_event &&
|
if (pMac->mlme_cfg->gen.fatal_event_trigger &&
|
||||||
(reasonCode != eSIR_MAC_UNSPEC_FAILURE_REASON &&
|
(reasonCode != eSIR_MAC_UNSPEC_FAILURE_REASON &&
|
||||||
reasonCode != eSIR_MAC_DEAUTH_LEAVING_BSS_REASON &&
|
reasonCode != eSIR_MAC_DEAUTH_LEAVING_BSS_REASON &&
|
||||||
reasonCode != eSIR_MAC_DISASSOC_LEAVING_BSS_REASON)) {
|
reasonCode != eSIR_MAC_DISASSOC_LEAVING_BSS_REASON)) {
|
||||||
|
@@ -607,7 +607,6 @@ typedef struct sap_config {
|
|||||||
uint16_t probeRespBcnIEsLen;
|
uint16_t probeRespBcnIEsLen;
|
||||||
/* buffer for addn ies comes from hostapd */
|
/* buffer for addn ies comes from hostapd */
|
||||||
void *pProbeRespBcnIEsBuffer;
|
void *pProbeRespBcnIEsBuffer;
|
||||||
uint8_t sap_dot11mc; /* Specify if 11MC is enabled or disabled*/
|
|
||||||
uint16_t beacon_tx_rate;
|
uint16_t beacon_tx_rate;
|
||||||
uint8_t *vendor_ie;
|
uint8_t *vendor_ie;
|
||||||
enum vendor_ie_access_policy vendor_ie_access_policy;
|
enum vendor_ie_access_policy vendor_ie_access_policy;
|
||||||
|
@@ -3036,7 +3036,6 @@ sapconvert_to_csr_profile(tsap_config_t *pconfig_params, eCsrRoamBssType bssType
|
|||||||
profile->addIeParams.probeRespBCNDataLen = 0;
|
profile->addIeParams.probeRespBCNDataLen = 0;
|
||||||
profile->addIeParams.probeRespBCNData_buff = NULL;
|
profile->addIeParams.probeRespBCNData_buff = NULL;
|
||||||
}
|
}
|
||||||
profile->sap_dot11mc = pconfig_params->sap_dot11mc;
|
|
||||||
|
|
||||||
if (pconfig_params->supported_rates.numRates) {
|
if (pconfig_params->supported_rates.numRates) {
|
||||||
qdf_mem_copy(profile->supported_rates.rate,
|
qdf_mem_copy(profile->supported_rates.rate,
|
||||||
|
@@ -883,7 +883,6 @@ struct csr_roam_profile {
|
|||||||
uint8_t disableDFSChSwitch;
|
uint8_t disableDFSChSwitch;
|
||||||
/* addIe params */
|
/* addIe params */
|
||||||
tSirAddIeParams addIeParams;
|
tSirAddIeParams addIeParams;
|
||||||
uint8_t sap_dot11mc;
|
|
||||||
uint16_t beacon_tx_rate;
|
uint16_t beacon_tx_rate;
|
||||||
tSirMacRateSet supported_rates;
|
tSirMacRateSet supported_rates;
|
||||||
tSirMacRateSet extended_rates;
|
tSirMacRateSet extended_rates;
|
||||||
@@ -1174,7 +1173,6 @@ typedef struct tagCsrConfigParam {
|
|||||||
uint8_t max_scan_count;
|
uint8_t max_scan_count;
|
||||||
int8_t first_scan_bucket_threshold;
|
int8_t first_scan_bucket_threshold;
|
||||||
uint8_t max_intf_count;
|
uint8_t max_intf_count;
|
||||||
bool enableSelfRecovery;
|
|
||||||
uint32_t f_sta_miracast_mcc_rest_time_val;
|
uint32_t f_sta_miracast_mcc_rest_time_val;
|
||||||
#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
|
#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
|
||||||
bool sap_channel_avoidance;
|
bool sap_channel_avoidance;
|
||||||
@@ -1202,7 +1200,6 @@ typedef struct tagCsrConfigParam {
|
|||||||
uint32_t edca_vi_aifs;
|
uint32_t edca_vi_aifs;
|
||||||
uint32_t edca_bk_aifs;
|
uint32_t edca_bk_aifs;
|
||||||
uint32_t edca_be_aifs;
|
uint32_t edca_be_aifs;
|
||||||
bool enable_fatal_event;
|
|
||||||
enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode;
|
enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode;
|
||||||
enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode_nc;
|
enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode_nc;
|
||||||
struct csr_sta_roam_policy_params sta_roam_policy_params;
|
struct csr_sta_roam_policy_params sta_roam_policy_params;
|
||||||
@@ -1215,7 +1212,6 @@ typedef struct tagCsrConfigParam {
|
|||||||
uint16_t wlm_latency_enable;
|
uint16_t wlm_latency_enable;
|
||||||
uint16_t wlm_latency_level;
|
uint16_t wlm_latency_level;
|
||||||
uint32_t wlm_latency_flags[CSR_NUM_WLM_LATENCY_LEVEL];
|
uint32_t wlm_latency_flags[CSR_NUM_WLM_LATENCY_LEVEL];
|
||||||
uint16_t pkt_err_disconn_th;
|
|
||||||
bool is_force_1x1;
|
bool is_force_1x1;
|
||||||
uint8_t oce_feature_bitmap;
|
uint8_t oce_feature_bitmap;
|
||||||
uint32_t btm_offload_config;
|
uint32_t btm_offload_config;
|
||||||
|
@@ -528,7 +528,6 @@ struct csr_config {
|
|||||||
uint32_t edca_vi_aifs;
|
uint32_t edca_vi_aifs;
|
||||||
uint32_t edca_bk_aifs;
|
uint32_t edca_bk_aifs;
|
||||||
uint32_t edca_be_aifs;
|
uint32_t edca_be_aifs;
|
||||||
bool enable_fatal_event;
|
|
||||||
bool vendor_vht_sap;
|
bool vendor_vht_sap;
|
||||||
enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode;
|
enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode;
|
||||||
enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode_nc;
|
enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode_nc;
|
||||||
@@ -539,7 +538,6 @@ struct csr_config {
|
|||||||
bool enable_ul_ofdma;
|
bool enable_ul_ofdma;
|
||||||
bool enable_ul_mimo;
|
bool enable_ul_mimo;
|
||||||
#endif
|
#endif
|
||||||
uint16_t pkt_err_disconn_th;
|
|
||||||
bool is_force_1x1;
|
bool is_force_1x1;
|
||||||
uint16_t wlm_latency_enable;
|
uint16_t wlm_latency_enable;
|
||||||
uint16_t wlm_latency_level;
|
uint16_t wlm_latency_level;
|
||||||
|
@@ -306,7 +306,6 @@ typedef struct tagSmeStruct {
|
|||||||
#ifdef WLAN_FEATURE_NAN
|
#ifdef WLAN_FEATURE_NAN
|
||||||
nan_callback nan_callback;
|
nan_callback nan_callback;
|
||||||
#endif
|
#endif
|
||||||
bool enableSelfRecovery;
|
|
||||||
csr_link_status_callback link_status_callback;
|
csr_link_status_callback link_status_callback;
|
||||||
void *link_status_context;
|
void *link_status_context;
|
||||||
int (*get_tsf_cb)(void *pcb_cxt, struct stsf *ptsf);
|
int (*get_tsf_cb)(void *pcb_cxt, struct stsf *ptsf);
|
||||||
|
@@ -439,12 +439,12 @@ tSmeCmd *sme_get_command_buffer(tpAniSirGlobal pMac)
|
|||||||
}
|
}
|
||||||
csr_nonscan_pending_ll_unlock(pMac);
|
csr_nonscan_pending_ll_unlock(pMac);
|
||||||
|
|
||||||
if (pMac->roam.configParam.enable_fatal_event)
|
if (pMac->mlme_cfg->gen.fatal_event_trigger)
|
||||||
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
||||||
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
||||||
WLAN_LOG_REASON_SME_OUT_OF_CMD_BUF,
|
WLAN_LOG_REASON_SME_OUT_OF_CMD_BUF,
|
||||||
false,
|
false,
|
||||||
pMac->sme.enableSelfRecovery ? true : false);
|
pMac->mlme_cfg->gen.self_recovery);
|
||||||
else
|
else
|
||||||
cds_trigger_recovery(QDF_GET_MSG_BUFF_FAILURE);
|
cds_trigger_recovery(QDF_GET_MSG_BUFF_FAILURE);
|
||||||
}
|
}
|
||||||
@@ -14709,6 +14709,11 @@ QDF_STATUS sme_enable_disable_chanavoidind_event(tHalHandle hal,
|
|||||||
tpAniSirGlobal mac_ctx = PMAC_STRUCT(hal);
|
tpAniSirGlobal mac_ctx = PMAC_STRUCT(hal);
|
||||||
struct scheduler_msg msg = {0};
|
struct scheduler_msg msg = {0};
|
||||||
|
|
||||||
|
if (!mac_ctx->mlme_cfg->gen.optimize_ca_event) {
|
||||||
|
sme_err("optimize_ca_event not enabled in ini");
|
||||||
|
return QDF_STATUS_E_NOSUPPORT;
|
||||||
|
}
|
||||||
|
|
||||||
sme_debug("set_value: %d", set_value);
|
sme_debug("set_value: %d", set_value);
|
||||||
status = sme_acquire_global_lock(&mac_ctx->sme);
|
status = sme_acquire_global_lock(&mac_ctx->sme);
|
||||||
if (QDF_STATUS_SUCCESS == status) {
|
if (QDF_STATUS_SUCCESS == status) {
|
||||||
|
@@ -2766,8 +2766,6 @@ QDF_STATUS csr_change_default_config_param(tpAniSirGlobal pMac,
|
|||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (pParam) {
|
if (pParam) {
|
||||||
pMac->roam.configParam.pkt_err_disconn_th =
|
|
||||||
pParam->pkt_err_disconn_th;
|
|
||||||
pMac->roam.configParam.is_force_1x1 =
|
pMac->roam.configParam.is_force_1x1 =
|
||||||
pParam->is_force_1x1;
|
pParam->is_force_1x1;
|
||||||
pMac->roam.configParam.WMMSupportMode = pParam->WMMSupportMode;
|
pMac->roam.configParam.WMMSupportMode = pParam->WMMSupportMode;
|
||||||
@@ -3057,8 +3055,6 @@ QDF_STATUS csr_change_default_config_param(tpAniSirGlobal pMac,
|
|||||||
/* update interface configuration */
|
/* update interface configuration */
|
||||||
pMac->sme.max_intf_count = pParam->max_intf_count;
|
pMac->sme.max_intf_count = pParam->max_intf_count;
|
||||||
|
|
||||||
pMac->sme.enableSelfRecovery = pParam->enableSelfRecovery;
|
|
||||||
|
|
||||||
pMac->f_sta_miracast_mcc_rest_time_val =
|
pMac->f_sta_miracast_mcc_rest_time_val =
|
||||||
pParam->f_sta_miracast_mcc_rest_time_val;
|
pParam->f_sta_miracast_mcc_rest_time_val;
|
||||||
#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
|
#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
|
||||||
@@ -3094,8 +3090,6 @@ QDF_STATUS csr_change_default_config_param(tpAniSirGlobal pMac,
|
|||||||
pMac->roam.configParam.edca_bk_aifs = pParam->edca_bk_aifs;
|
pMac->roam.configParam.edca_bk_aifs = pParam->edca_bk_aifs;
|
||||||
pMac->roam.configParam.edca_be_aifs = pParam->edca_be_aifs;
|
pMac->roam.configParam.edca_be_aifs = pParam->edca_be_aifs;
|
||||||
|
|
||||||
pMac->roam.configParam.enable_fatal_event =
|
|
||||||
pParam->enable_fatal_event;
|
|
||||||
pMac->roam.configParam.sta_roam_policy.dfs_mode =
|
pMac->roam.configParam.sta_roam_policy.dfs_mode =
|
||||||
pParam->sta_roam_policy_params.dfs_mode;
|
pParam->sta_roam_policy_params.dfs_mode;
|
||||||
pMac->roam.configParam.sta_roam_policy.skip_unsafe_channels =
|
pMac->roam.configParam.sta_roam_policy.skip_unsafe_channels =
|
||||||
@@ -3176,7 +3170,6 @@ QDF_STATUS csr_get_config_param(tpAniSirGlobal pMac, tCsrConfigParam *pParam)
|
|||||||
if (!pParam)
|
if (!pParam)
|
||||||
return QDF_STATUS_E_INVAL;
|
return QDF_STATUS_E_INVAL;
|
||||||
|
|
||||||
pParam->pkt_err_disconn_th = cfg_params->pkt_err_disconn_th;
|
|
||||||
pParam->is_force_1x1 = cfg_params->is_force_1x1;
|
pParam->is_force_1x1 = cfg_params->is_force_1x1;
|
||||||
pParam->WMMSupportMode = cfg_params->WMMSupportMode;
|
pParam->WMMSupportMode = cfg_params->WMMSupportMode;
|
||||||
pParam->Is11eSupportEnabled = cfg_params->Is11eSupportEnabled;
|
pParam->Is11eSupportEnabled = cfg_params->Is11eSupportEnabled;
|
||||||
@@ -3295,7 +3288,6 @@ QDF_STATUS csr_get_config_param(tpAniSirGlobal pMac, tCsrConfigParam *pParam)
|
|||||||
pParam->sap_channel_avoidance = pMac->sap.sap_channel_avoidance;
|
pParam->sap_channel_avoidance = pMac->sap.sap_channel_avoidance;
|
||||||
#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
|
#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
|
||||||
pParam->max_intf_count = pMac->sme.max_intf_count;
|
pParam->max_intf_count = pMac->sme.max_intf_count;
|
||||||
pParam->enableSelfRecovery = pMac->sme.enableSelfRecovery;
|
|
||||||
pParam->f_prefer_non_dfs_on_radar =
|
pParam->f_prefer_non_dfs_on_radar =
|
||||||
pMac->f_prefer_non_dfs_on_radar;
|
pMac->f_prefer_non_dfs_on_radar;
|
||||||
pParam->dual_mac_feature_disable =
|
pParam->dual_mac_feature_disable =
|
||||||
@@ -3327,8 +3319,6 @@ QDF_STATUS csr_get_config_param(tpAniSirGlobal pMac, tCsrConfigParam *pParam)
|
|||||||
pParam->edca_vi_aifs = pMac->roam.configParam.edca_vi_aifs;
|
pParam->edca_vi_aifs = pMac->roam.configParam.edca_vi_aifs;
|
||||||
pParam->edca_bk_aifs = pMac->roam.configParam.edca_bk_aifs;
|
pParam->edca_bk_aifs = pMac->roam.configParam.edca_bk_aifs;
|
||||||
pParam->edca_be_aifs = pMac->roam.configParam.edca_be_aifs;
|
pParam->edca_be_aifs = pMac->roam.configParam.edca_be_aifs;
|
||||||
pParam->enable_fatal_event =
|
|
||||||
pMac->roam.configParam.enable_fatal_event;
|
|
||||||
pParam->sta_roam_policy_params.dfs_mode =
|
pParam->sta_roam_policy_params.dfs_mode =
|
||||||
pMac->roam.configParam.sta_roam_policy.dfs_mode;
|
pMac->roam.configParam.sta_roam_policy.dfs_mode;
|
||||||
pParam->sta_roam_policy_params.skip_unsafe_channels =
|
pParam->sta_roam_policy_params.skip_unsafe_channels =
|
||||||
@@ -8193,7 +8183,6 @@ QDF_STATUS csr_roam_copy_profile(tpAniSirGlobal pMac,
|
|||||||
pDstProfile->cfg_protection = pSrcProfile->cfg_protection;
|
pDstProfile->cfg_protection = pSrcProfile->cfg_protection;
|
||||||
pDstProfile->wps_state = pSrcProfile->wps_state;
|
pDstProfile->wps_state = pSrcProfile->wps_state;
|
||||||
pDstProfile->ieee80211d = pSrcProfile->ieee80211d;
|
pDstProfile->ieee80211d = pSrcProfile->ieee80211d;
|
||||||
pDstProfile->sap_dot11mc = pSrcProfile->sap_dot11mc;
|
|
||||||
pDstProfile->supplicant_disabled_roaming =
|
pDstProfile->supplicant_disabled_roaming =
|
||||||
pSrcProfile->supplicant_disabled_roaming;
|
pSrcProfile->supplicant_disabled_roaming;
|
||||||
qdf_mem_copy(&pDstProfile->Keys, &pSrcProfile->Keys,
|
qdf_mem_copy(&pDstProfile->Keys, &pSrcProfile->Keys,
|
||||||
@@ -14202,7 +14191,14 @@ QDF_STATUS csr_roam_issue_start_bss(tpAniSirGlobal pMac, uint32_t sessionId,
|
|||||||
pParam->addIeParams.probeRespBCNData_buff =
|
pParam->addIeParams.probeRespBCNData_buff =
|
||||||
pProfile->addIeParams.probeRespBCNData_buff;
|
pProfile->addIeParams.probeRespBCNData_buff;
|
||||||
}
|
}
|
||||||
pParam->sap_dot11mc = pProfile->sap_dot11mc;
|
|
||||||
|
if (pProfile->csrPersona == QDF_SAP_MODE)
|
||||||
|
pParam->sap_dot11mc = pMac->mlme_cfg->gen.sap_dot11mc;
|
||||||
|
else
|
||||||
|
pParam->sap_dot11mc = 1;
|
||||||
|
|
||||||
|
sme_debug("11MC Support Enabled : %d", pParam->sap_dot11mc);
|
||||||
|
|
||||||
pParam->cac_duration_ms = pProfile->cac_duration_ms;
|
pParam->cac_duration_ms = pProfile->cac_duration_ms;
|
||||||
pParam->dfs_regdomain = pProfile->dfs_regdomain;
|
pParam->dfs_regdomain = pProfile->dfs_regdomain;
|
||||||
pParam->beacon_tx_rate = pProfile->beacon_tx_rate;
|
pParam->beacon_tx_rate = pProfile->beacon_tx_rate;
|
||||||
@@ -17066,7 +17062,7 @@ QDF_STATUS csr_issue_add_sta_for_session_req(tpAniSirGlobal pMac,
|
|||||||
add_sta_self_req->fils_max_chan_guard_time =
|
add_sta_self_req->fils_max_chan_guard_time =
|
||||||
pMac->mlme_cfg->sta.fils_max_chan_guard_time;
|
pMac->mlme_cfg->sta.fils_max_chan_guard_time;
|
||||||
add_sta_self_req->pkt_err_disconn_th =
|
add_sta_self_req->pkt_err_disconn_th =
|
||||||
pMac->roam.configParam.pkt_err_disconn_th;
|
pMac->mlme_cfg->gen.dropped_pkt_disconnect_thresh;
|
||||||
add_sta_self_req->oce_feature_bitmap =
|
add_sta_self_req->oce_feature_bitmap =
|
||||||
pMac->mlme_cfg->oce.feature_bitmap;
|
pMac->mlme_cfg->oce.feature_bitmap;
|
||||||
|
|
||||||
@@ -20965,7 +20961,7 @@ void csr_process_ho_fail_ind(tpAniSirGlobal mac_ctx, void *pMsgBuf)
|
|||||||
"LFR3:Issue Disconnect on session %d", sessionId);
|
"LFR3:Issue Disconnect on session %d", sessionId);
|
||||||
csr_roam_disconnect(mac_ctx, sessionId,
|
csr_roam_disconnect(mac_ctx, sessionId,
|
||||||
eCSR_DISCONNECT_REASON_ROAM_HO_FAIL);
|
eCSR_DISCONNECT_REASON_ROAM_HO_FAIL);
|
||||||
if (mac_ctx->roam.configParam.enable_fatal_event)
|
if (mac_ctx->mlme_cfg->gen.fatal_event_trigger)
|
||||||
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
cds_flush_logs(WLAN_LOG_TYPE_FATAL,
|
||||||
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
WLAN_LOG_INDICATOR_HOST_DRIVER,
|
||||||
WLAN_LOG_REASON_ROAM_HO_FAILURE,
|
WLAN_LOG_REASON_ROAM_HO_FAILURE,
|
||||||
|
Reference in New Issue
Block a user