diff options
| author | Komal Seelam <kseelam@qti.qualcomm.com> | 2015-09-02 20:12:29 +0530 |
|---|---|---|
| committer | Anjaneedevi Kapparapu <akappa@codeaurora.org> | 2015-09-03 12:53:48 +0530 |
| commit | 29ce6313b5a98709671d601b3e19295d334cd09b (patch) | |
| tree | 84e1832b00e2e0ed90f0e048e0e13abb0d931631 | |
| parent | 36d81e78b3784a5239ea38af0541b0948ec5ff10 (diff) | |
qcacld-2.0: Post Runtime Resume Indication when Runtime Suspend Timeout
MC thread is busy/sleep due to CPU usage so WDA_RUNTIME_PM_SUSPEND_IND is
timed out. Later this WDA_RUNTIME_PM_SUSPEND_IND is proceed but kernel
runtime PM suspend comes again and we post another
WDA_RUNTIME_PM_SUSPEND_IND which causes host/FW out of sync.
Fix by posting WDA_RUNTIME_PM_RESUME_IND to keep sync with FW.
Change-Id: I392423880409634be36626ccb9ab4449658a0c7c
CRs-Fixed: 900384
| -rw-r--r-- | CORE/SERVICES/WMA/wma.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c index f1cbffe7e6ea..9ace833b8298 100644 --- a/CORE/SERVICES/WMA/wma.c +++ b/CORE/SERVICES/WMA/wma.c @@ -31717,6 +31717,7 @@ int wma_runtime_suspend_req(WMA_HANDLE handle) VOS_STATUS_SUCCESS) { WMA_LOGE("Failed to get runtime suspend event"); ret = -EAGAIN; + wma_runtime_resume_req(wma); goto out; } @@ -31742,8 +31743,10 @@ int wma_runtime_resume_req(WMA_HANDLE handle) vosMessage.type = WDA_RUNTIME_PM_RESUME_IND; vosStatus = vos_mq_post_message(VOS_MQ_ID_WDA, &vosMessage ); - if (!VOS_IS_STATUS_SUCCESS(vosStatus)) + if (!VOS_IS_STATUS_SUCCESS(vosStatus)) { + WMA_LOGE("Failed to post Runtime PM Resume IND to VOS"); ret = -EAGAIN; + } return ret; } |
