qcacld-3.0: Set moddtim dynamically in the li offload mode

Extend hdd_config_modulated_dtim() to configure moddtim
dynamically in the both non li offload and li offload mode.

Change-Id: I8669ec618d4aa9cd87c4c234972ca500c98119b6
CRs-Fixed: 2970090
This commit is contained in:
Li Feng
2021-06-18 17:01:32 +08:00
committed by Madan Koyyalamudi
parent e7df98e50e
commit 4548644d92
8 changed files with 324 additions and 11 deletions

View File

@@ -59,12 +59,14 @@
* @pmo_vdev_param_listen_interval: vdev listen interval param id
* @pmo_vdev_param_dtim_policy: vdev param dtim policy
* @pmo_vdev_param_forced_dtim_count: vdev param forced dtim count
* @pmo_vdev_param_moddtim: vdev param moddtim
* @pmo_vdev_max_param: Max vdev param id
*/
enum pmo_vdev_param_id {
pmo_vdev_param_listen_interval = 0,
pmo_vdev_param_dtim_policy,
pmo_vdev_param_forced_dtim_count,
pmo_vdev_param_moddtim,
pmo_vdev_max_param
};

View File

@@ -1241,6 +1241,39 @@ QDF_STATUS ucfg_pmo_core_txrx_suspend(struct wlan_objmgr_psoc *psoc);
* Return: QDF_STATUS_SUCCESS for success or error code
*/
QDF_STATUS ucfg_pmo_core_txrx_resume(struct wlan_objmgr_psoc *psoc);
/**
* ucfg_pmo_get_moddtim_user_enable() - Get moddtim user enable
* @vdev: objmgr vdev handle
*
* Return: moddtim user enabled or not
*/
bool ucfg_pmo_get_moddtim_user_enable(struct wlan_objmgr_vdev *vdev);
/**
* ucfg_pmo_set_moddtim_user_enable() - Set moddtim user enable
* @vdev: objmgr vdev handle
* @value: moddtim user enable or not
*
* Return: none
*/
void ucfg_pmo_set_moddtim_user_enable(struct wlan_objmgr_vdev *vdev,
bool value);
/**
* ucfg_pmo_get_moddtim_user_active() - Get moddtim user active
* @vdev: objmgr vdev handle
*
* Return: moddtim user active
*/
bool ucfg_pmo_get_moddtim_user_active(struct wlan_objmgr_vdev *vdev);
/**
* ucfg_pmo_get_moddtim_user() - Get moddtim user value
* @vdev: objmgr vdev handle
*
* Return: moddtim user value
*/
uint32_t ucfg_pmo_get_moddtim_user(struct wlan_objmgr_vdev *vdev);
#else /* WLAN_POWER_MANAGEMENT_OFFLOAD */
static inline QDF_STATUS
ucfg_pmo_psoc_open(struct wlan_objmgr_psoc *psoc)
@@ -1919,6 +1952,30 @@ QDF_STATUS ucfg_pmo_core_txrx_resume(struct wlan_objmgr_psoc *psoc)
{
return QDF_STATUS_SUCCESS;
}
static inline bool
ucfg_pmo_get_moddtim_user_enable(struct wlan_objmgr_vdev *vdev)
{
return false;
}
static inline void
ucfg_pmo_set_moddtim_user_enable(struct wlan_objmgr_vdev *vdev,
bool value)
{
}
static inline bool
ucfg_pmo_get_moddtim_user_active(struct wlan_objmgr_vdev *vdev)
{
return false;
}
static inline uint32_t
ucfg_pmo_get_moddtim_user(struct wlan_objmgr_vdev *vdev)
{
return 0;
}
#endif /* WLAN_POWER_MANAGEMENT_OFFLOAD */
#ifdef WLAN_FEATURE_EXTWOW_SUPPORT