summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/marvell
diff options
context:
space:
mode:
authorKarthik D A2016-09-28 14:48:28 +0200
committerKalle Valo2016-11-09 02:33:27 +0100
commit3d8bd85c2c9e47ed2c82348aa5b6029ed48376ae (patch)
tree7c3a41b937b54f531d4434361711908eebce2419 /drivers/net/wireless/marvell
parentmwifiex: fix command timeout problem seen in stress tests (diff)
downloadkernel-qcow2-linux-3d8bd85c2c9e47ed2c82348aa5b6029ed48376ae.tar.gz
kernel-qcow2-linux-3d8bd85c2c9e47ed2c82348aa5b6029ed48376ae.tar.xz
kernel-qcow2-linux-3d8bd85c2c9e47ed2c82348aa5b6029ed48376ae.zip
mwifiex: fix p2p device doesn't find in scan problem
Marvell p2p device disappears from the list of p2p peers on the other p2p device after disconnection. It happens due to a bug in driver. When interface is changed from p2p to station, certain variables(bss_type, bss_role etc.) aren't correctly updated. This patch corrects them to fix the issue. Signed-off-by: Karthik D A <karthida@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')
-rw-r--r--drivers/net/wireless/marvell/mwifiex/cfg80211.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index e83861f794ad..d9f54451d0c3 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -1203,6 +1203,12 @@ mwifiex_cfg80211_change_virtual_intf(struct wiphy *wiphy,
priv->adapter->curr_iface_comb.p2p_intf--;
priv->adapter->curr_iface_comb.sta_intf++;
dev->ieee80211_ptr->iftype = type;
+ if (mwifiex_deinit_priv_params(priv))
+ return -1;
+ if (mwifiex_init_new_priv_params(priv, dev, type))
+ return -1;
+ if (mwifiex_sta_init_cmd(priv, false, false))
+ return -1;
break;
case NL80211_IFTYPE_ADHOC:
if (mwifiex_cfg80211_deinit_p2p(priv))