diff options
author | Dmitry Tarnyagin <dmitry.tarnyagin@stericsson.com> | 2011-08-18 23:32:14 +0200 |
---|---|---|
committer | Philippe LANGLAIS <philippe.langlais@stericsson.com> | 2011-10-13 10:04:43 +0200 |
commit | 31a59450487a189e6b148364c5965ad7f1982b41 (patch) | |
tree | 0f5003aa1a04652600a8869af81603ebbc32f4bd /drivers/staging/cw1200/scan.c | |
parent | 5b48061fc3276dadaceeff6c152e8f5b0f250c2e (diff) |
cw1200: do not allow suspend when it is useless.
Do not allow entering suspend state if firmware is polling
for multicasts and when scanning.
+ bugfix: remove blocking calls from wow_suspend() callback
to reduce suspend time and make sure watchdog is not triggered.
Change-Id: I69196fda25b56d01b90311582705ba586759ae35
Signed-off-by: Dmitry Tarnyagin <dmitry.tarnyagin@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/29079
Reviewed-by: Bartosz MARKOWSKI <bartosz.markowski@tieto.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/33511
Reviewed-by: Philippe LANGLAIS <philippe.langlais@stericsson.com>
Diffstat (limited to 'drivers/staging/cw1200/scan.c')
-rw-r--r-- | drivers/staging/cw1200/scan.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/staging/cw1200/scan.c b/drivers/staging/cw1200/scan.c index c663f6dc173..4daf4e2daa2 100644 --- a/drivers/staging/cw1200/scan.c +++ b/drivers/staging/cw1200/scan.c @@ -13,6 +13,7 @@ #include "cw1200.h" #include "scan.h" #include "sta.h" +#include "pm.h" static void cw1200_scan_restart_delayed(struct cw1200_common *priv); @@ -25,6 +26,7 @@ static int cw1200_scan_start(struct cw1200_common *priv, struct wsm_scan *scan) tmo += scan->ch[i].maxChannelTime + 10; atomic_set(&priv->scan.in_progress, 1); + cw1200_pm_stay_awake(&priv->pm_state, tmo * HZ / 1000); queue_delayed_work(priv->workqueue, &priv->scan.timeout, tmo * HZ / 1000); ret = wsm_scan(priv, scan); |