diff options
| author | Chien-Ming Chen <mingc@qca.qualcomm.com> | 2014-11-20 16:36:22 +0800 |
|---|---|---|
| committer | AnjaneeDevi Kapparapu <c_akappa@qti.qualcomm.com> | 2014-12-02 13:16:33 +0530 |
| commit | cd947dff119e9ecd8145399f3fd086255da3bd16 (patch) | |
| tree | 2c519ef5a6a1bb25ce9bd4378c22732b65715b08 | |
| parent | 8e62013912b70265361a6b782307c6ce7d7fcee7 (diff) | |
qcacld: Add wakelock acquirement/release for non-QC platform
Some non-QC platform (ex:x86) don't use Android system,
they can't apply wakelock API to prevent suspending.
Regarding to suspending issue, trying to call PM API from
HIF to protect this.
CONFIG_NON_QC_PLATFORM is used for non-QC platform.
Change-Id: I577a7598da6c2a1a6d8649e9284a2156180840cc
CRs-Fixed: 760079
| -rw-r--r-- | CORE/VOSS/src/vos_lock.c | 10 | ||||
| -rw-r--r-- | Kbuild | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/CORE/VOSS/src/vos_lock.c b/CORE/VOSS/src/vos_lock.c index be1137d8824e..3be063c22cad 100644 --- a/CORE/VOSS/src/vos_lock.c +++ b/CORE/VOSS/src/vos_lock.c @@ -48,6 +48,8 @@ #include "vos_lock.h" #include "vos_memory.h" #include "vos_trace.h" +#include "vos_api.h" +#include "hif.h" #ifdef CONFIG_CNSS #include <net/cnss.h> #endif @@ -521,6 +523,10 @@ VOS_STATUS vos_wake_lock_acquire(vos_wake_lock_t *pLock) cnss_pm_wake_lock(pLock); #elif defined(WLAN_OPEN_SOURCE) && defined(CONFIG_HAS_WAKELOCK) wake_lock(pLock); +#elif defined(CONFIG_NON_QC_PLATFORM) +#if defined(QCA_WIFI_2_0) && !defined(QCA_WIFI_ISOC) + hif_pm_runtime_get(); +#endif #endif return VOS_STATUS_SUCCESS; } @@ -559,6 +565,10 @@ VOS_STATUS vos_wake_lock_release(vos_wake_lock_t *pLock) cnss_pm_wake_lock_release(pLock); #elif defined(WLAN_OPEN_SOURCE) && defined(CONFIG_HAS_WAKELOCK) wake_unlock(pLock); +#elif defined(CONFIG_NON_QC_PLATFORM) +#if defined(QCA_WIFI_2_0) && !defined(QCA_WIFI_ISOC) + hif_pm_runtime_put(); +#endif #endif return VOS_STATUS_SUCCESS; } @@ -1310,6 +1310,7 @@ endif # Enable target dump for non-qualcomm platform ifeq ($(CONFIG_NON_QC_PLATFORM), y) +CDEFINES += -DCONFIG_NON_QC_PLATFORM ifeq ($(CONFIG_CLD_HL_SDIO_CORE), y) CDEFINES += -DTARGET_DUMP_FOR_NON_QC_PLATFORM endif |
