summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/marvell/mwifiex/sta_event.c
diff options
context:
space:
mode:
authorchunfan chen <jeffc@marvell.com>2016-01-06 23:40:48 -0800
committerKalle Valo <kvalo@codeaurora.org>2016-01-29 11:11:34 +0200
commitdc386ce76dedaeeaaf006fceb6ed8cf2e20ff026 (patch)
tree69955776bc8eea17c5c88865476e1aeaa81ddeb9 /drivers/net/wireless/marvell/mwifiex/sta_event.c
parent2fd5c6ed0b4fbf3c2d9314a24c82862ce5254d42 (diff)
mwifiex: fix IBSS data path issue.
The port_open flag is not applicable for IBSS mode. IBSS data path was broken when port_open flag was introduced. This patch fixes the problem by correcting the checks. Fixes: 5c8946330abfa4c ("mwifiex: enable traffic only when port is open") Signed-off-by: chunfan chen <jeffc@marvell.com> Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/marvell/mwifiex/sta_event.c')
-rw-r--r--drivers/net/wireless/marvell/mwifiex/sta_event.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/net/wireless/marvell/mwifiex/sta_event.c b/drivers/net/wireless/marvell/mwifiex/sta_event.c
index ff3ee9dfbbd5..23bae87d4d3d 100644
--- a/drivers/net/wireless/marvell/mwifiex/sta_event.c
+++ b/drivers/net/wireless/marvell/mwifiex/sta_event.c
@@ -607,11 +607,13 @@ int mwifiex_process_sta_event(struct mwifiex_private *priv)
case EVENT_PS_AWAKE:
mwifiex_dbg(adapter, EVENT, "info: EVENT: AWAKE\n");
- if (!adapter->pps_uapsd_mode && priv->port_open &&
+ if (!adapter->pps_uapsd_mode &&
+ (priv->port_open ||
+ (priv->bss_mode == NL80211_IFTYPE_ADHOC)) &&
priv->media_connected && adapter->sleep_period.period) {
- adapter->pps_uapsd_mode = true;
- mwifiex_dbg(adapter, EVENT,
- "event: PPS/UAPSD mode activated\n");
+ adapter->pps_uapsd_mode = true;
+ mwifiex_dbg(adapter, EVENT,
+ "event: PPS/UAPSD mode activated\n");
}
adapter->tx_lock_flag = false;
if (adapter->pps_uapsd_mode && adapter->gen_null_pkt) {