qcacld-3.0: Add param for OCL mode configuration

Currently there is no provision to configure OCL mode in FW during
driver bootup.

To enable this configuration add a new INI configuration parameter
gOclCfg.

Change-Id: I87c9131f5395c394f745e0170f0d9b3d1571d030
CRs-Fixed: 2644312
This commit is contained in:
Bapiraju Alla
2020-03-18 10:44:32 +05:30
committed by nshrivas
parent c589449c9a
commit 5e23b7cfd7
10 changed files with 170 additions and 1 deletions

View File

@@ -728,6 +728,36 @@
0, \
"SAP xLNA bypass control")
/*
* <ini>
* gOclCfg - Enable/Disable OCL mode
* @Min: 0
* @Max: 2
* @Default: 2
*
* This ini is used to set one chain listen (OCL) mode to static or dynamic
* enable/disable during bootup. value 0 disables both static/dynamic OCL.
* value 1 enables static OCL. Once its enabled it stays enabled. value 2
* enables dynamic OCL. In dynamic OCL mode one chain listen will be
* enabled/disabled by firmware during runtime based on RSSI.
*
* Related: None
*
* Supported Feature: OCL
*
* Usage: Internal
*
* </ini>
*/
#define CFG_SET_OCL_CFG CFG_INI_UINT( \
"gOclCfg", \
0, \
2, \
2, \
CFG_VALUE_OR_DEFAULT, \
"OCL configuration")
#define CFG_FWOL_GENERIC_ALL \
CFG_FWOL_DHCP \
CFG(CFG_ENABLE_ANI) \
@@ -754,6 +784,7 @@
CFG(CFG_ENABLE_GCMP) \
CFG(CFG_TX_SCH_DELAY) \
CFG(CFG_ENABLE_SECONDARY_RATE) \
CFG(CFG_SET_SAP_XLNA_BYPASS)
CFG(CFG_SET_SAP_XLNA_BYPASS) \
CFG(CFG_SET_OCL_CFG)
#endif

View File

@@ -286,6 +286,16 @@ QDF_STATUS ucfg_fwol_get_enable_fw_module_log_level(
QDF_STATUS ucfg_fwol_get_sap_xlna_bypass(struct wlan_objmgr_psoc *psoc,
bool *sap_xlna_bypass);
/**
* ucfg_fwol_get_ocl_cfg() - Assigns ocl_cfg value
* @psoc: pointer to the psoc object
* @ocl_cfg: pointer to return ocl_cfg
*
* Return: QDF Status
*/
QDF_STATUS ucfg_fwol_get_ocl_cfg(struct wlan_objmgr_psoc *psoc,
uint32_t *ocl_cfg);
#ifdef FEATURE_WLAN_RA_FILTERING
/**
* ucfg_fwol_set_is_rate_limit_enabled() - Sets the is_rate_limit_enabled value
@@ -741,6 +751,12 @@ ucfg_fwol_get_sap_xlna_bypass(struct wlan_objmgr_psoc *psoc,
return QDF_STATUS_E_FAILURE;
}
static inline QDF_STATUS
ucfg_fwol_get_ocl_cfg(struct wlan_objmgr_psoc *psoc, uint32_t *ocl_cfg)
{
return QDF_STATUS_E_FAILURE;
}
static inline QDF_STATUS
ucfg_fwol_get_tsf_gpio_pin(struct wlan_objmgr_psoc *psoc,
uint32_t *tsf_gpio_pin)