From 847817a7ac38983d030d87d4c1b38e379a26fe8e Mon Sep 17 00:00:00 2001 From: Dmitry Tarnyagin Date: Thu, 6 Oct 2011 19:05:02 +0200 Subject: cw1200: Accurate reporting of TX status. * Accurate reporting of TX status is implemented (needed for UAPSD and PSPOLL). * Leaking of TX rate policies is fixed. * skb destructor is implemented. * Time to live for queued frames is implemented. * cw1200_tx is split by separate TX handlers (like in mac80211). * cw1200_skb_to_wsm is not existing anymore. * BT coex: null frames are prioritized as management frames. * Debug: added printing of rate policies in use. ST-Ericsson ID: 354950 ST-Ericsson ID: 360749 Change-Id: I920d398418df99c21b37a16ef16591e58a82151d Signed-off-by: Dmitry Tarnyagin Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/33542 Reviewed-by: Bartosz MARKOWSKI Reviewed-by: Philippe LANGLAIS --- drivers/staging/cw1200/pm.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'drivers/staging/cw1200/pm.c') diff --git a/drivers/staging/cw1200/pm.c b/drivers/staging/cw1200/pm.c index 3cb6b62b530..3d7570767ed 100644 --- a/drivers/staging/cw1200/pm.c +++ b/drivers/staging/cw1200/pm.c @@ -95,6 +95,7 @@ void cw1200_pm_deinit(struct cw1200_pm_state *pm) wake_lock_destroy(&pm->wakelock); cw1200_pm_deinit_common(pm); } + void cw1200_pm_stay_awake(struct cw1200_pm_state *pm, unsigned long tmo) { @@ -205,6 +206,10 @@ int cw1200_wow_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan) return -EAGAIN; #endif + /* Do not suspend when datapath is not idle */ + if (priv->tx_queue_stats.num_queued) + return -EBUSY; + /* Make sure there is no configuration requests in progress. */ if (!mutex_trylock(&priv->conf_mutex)) return -EBUSY; -- cgit v1.2.3