qcacld-3.0: Set user configured listen interval before going to sleep

Before the host triggers sleep mode, it configures listen
interval while setting power save parameters to firmware.
If user configured listen interval is present in host,
that configured listen interval is set while setting
power save params.

Change-Id: I158a547f95bca4750b5180840113c03a89ced17c
CRs-Fixed: 3528793
This commit is contained in:
Shailendra Singh
2023-07-13 11:16:54 +05:30
committed by Rahul Choudhary
부모 39dcbc8810
커밋 16eaca8093
6개의 변경된 파일66개의 추가작업 그리고 19개의 파일을 삭제

파일 보기

@@ -322,6 +322,9 @@ uint32_t
wlan_pmo_get_interval_for_pagefault_wakeup_counts(
struct wlan_objmgr_psoc *psoc);
QDF_STATUS wlan_pmo_get_listen_interval(struct wlan_objmgr_vdev *vdev,
uint32_t *listen_interval);
#else /* WLAN_POWER_MANAGEMENT_OFFLOAD */
static inline QDF_STATUS pmo_init(void)
@@ -503,6 +506,12 @@ wlan_pmo_get_interval_for_pagefault_wakeup_counts(struct wlan_objmgr_psoc *psoc)
return 0;
}
static QDF_STATUS wlan_pmo_get_listen_interval(struct wlan_objmgr_vdev *vdev,
uint32_t *listen_interval)
{
return QDF_STATUS_SUCCESS;
}
#endif /* WLAN_POWER_MANAGEMENT_OFFLOAD */
#endif /* end of _WLAN_PMO_OBJ_MGMT_API_H_ */

파일 보기

@@ -900,3 +900,9 @@ wlan_pmo_get_interval_for_pagefault_wakeup_counts(struct wlan_objmgr_psoc *psoc)
{
return pmo_get_interval_for_pagefault_wakeup_counts(psoc);
}
QDF_STATUS wlan_pmo_get_listen_interval(struct wlan_objmgr_vdev *vdev,
uint32_t *listen_interval)
{
return pmo_core_get_listen_interval(vdev, listen_interval);
}

파일 보기

@@ -568,19 +568,7 @@ QDF_STATUS ucfg_pmo_config_listen_interval(struct wlan_objmgr_vdev *vdev,
QDF_STATUS ucfg_pmo_get_listen_interval(struct wlan_objmgr_vdev *vdev,
uint32_t *listen_interval)
{
struct pmo_vdev_priv_obj *vdev_ctx;
if (!vdev)
return QDF_STATUS_E_INVAL;
vdev_ctx = pmo_vdev_get_priv(vdev);
if (!vdev_ctx)
return QDF_STATUS_E_INVAL;
qdf_spin_lock_bh(&vdev_ctx->pmo_vdev_lock);
*listen_interval = vdev_ctx->dyn_listen_interval;
qdf_spin_unlock_bh(&vdev_ctx->pmo_vdev_lock);
return QDF_STATUS_SUCCESS;
return pmo_core_get_listen_interval(vdev, listen_interval);
}
QDF_STATUS ucfg_pmo_config_modulated_dtim(struct wlan_objmgr_vdev *vdev,