[PATCH 18/99] cw1200: Set PM mode only if we are associated

Dmitry Tarnyagin dmitry.tarnyagin at stericsson.com
Wed Feb 29 14:14:25 UTC 2012


From: Bartosz Markowski <bartosz.markowski at tieto.com>

Set_PM_Mode request should be called only if we are
associated. AID is necessary for PS mode.

ST-Ericsson ID: 361264

Change-Id: I880a1009b20c304709dbe9601c90f4bc308f10ab
Signed-off-by: Bartosz Markowski <bartosz.markowski at tieto.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/36719
Reviewed-by: QABUILD
---
 drivers/staging/cw1200/sta.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/cw1200/sta.c b/drivers/staging/cw1200/sta.c
index 7f94d27..1654ea9 100644
--- a/drivers/staging/cw1200/sta.c
+++ b/drivers/staging/cw1200/sta.c
@@ -334,7 +334,7 @@ int cw1200_config(struct ieee80211_hw *dev, u32 changed)
 			priv->powersave_mode.fastPsmIdlePeriod =
 					conf->dynamic_ps_timeout << 1;
 
-		if (priv->join_status == CW1200_JOIN_STATUS_STA)
+		if (priv->join_status == CW1200_JOIN_STATUS_STA && priv->bss_params.aid)
 			cw1200_set_pm(priv, &priv->powersave_mode);
 	}
 
@@ -1345,7 +1345,9 @@ void cw1200_unjoin_work(struct work_struct *work)
 			priv->ba_tid_mask, priv->ba_tid_mask));
 		cw1200_update_filtering(priv);
 		priv->setbssparams_done = false;
-
+		memset(&priv->association_mode, 0,
+			sizeof(priv->association_mode));
+		memset(&priv->bss_params, 0, sizeof(priv->bss_params));
 		sta_printk(KERN_DEBUG "[STA] Unjoin.\n");
 	}
 	mutex_unlock(&priv->conf_mutex);
-- 
1.7.8.3



More information about the kernel mailing list