summaryrefslogtreecommitdiff
path: root/net/wireless/sysfs.c
diff options
context:
space:
mode:
authorGanesh Kondabattini <ganeshk@codeaurora.org>2013-11-23 11:05:56 +0530
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-22 11:16:49 -0700
commitd91e2f37dcf7ce5dc1dc2bc212c8339a2c88d5fd (patch)
tree1befb168f1c7723c6aa6e364287f0d6139129865 /net/wireless/sysfs.c
parentbf6ab094caf74dfd85edcb8c2405739a74c543e0 (diff)
Revert "cfg80211/mac80211: disconnect on suspend"
This reverts commit 8125696991194aacb1173b6e8196d19098b44e17. The commit"cfg80211/mac80211: disconnect on suspend" forces disconnection on wlan interfaces if wake on wireless is not enabled from the user space. Wake on Wireless is enabled by default in wlan driver (CLD) and cfg80211 layer never aware of wake on wirless enabled status done in wlan driver. To avoid the disconnection while going to suspend and keep wlan driver in WOW mode by default, the commit "cfg80211/mac80211: disconnect on suspend" should be reverted. CRs-Fixed: 540571 Change-Id: I483fe0530f9f00c338680416449215af326e3df1 Signed-off-by: Ganesh Kondabattini <ganeshk@codeaurora.org>
Diffstat (limited to 'net/wireless/sysfs.c')
-rw-r--r--net/wireless/sysfs.c25
1 files changed, 5 insertions, 20 deletions
diff --git a/net/wireless/sysfs.c b/net/wireless/sysfs.c
index 9cee0220665d..0178de1fc9aa 100644
--- a/net/wireless/sysfs.c
+++ b/net/wireless/sysfs.c
@@ -87,14 +87,6 @@ static int wiphy_uevent(struct device *dev, struct kobj_uevent_env *env)
}
#ifdef CONFIG_PM_SLEEP
-static void cfg80211_leave_all(struct cfg80211_registered_device *rdev)
-{
- struct wireless_dev *wdev;
-
- list_for_each_entry(wdev, &rdev->wdev_list, list)
- cfg80211_leave(rdev, wdev);
-}
-
static int wiphy_suspend(struct device *dev)
{
struct cfg80211_registered_device *rdev = dev_to_rdev(dev);
@@ -102,19 +94,12 @@ static int wiphy_suspend(struct device *dev)
rdev->suspend_at = get_seconds();
- rtnl_lock();
- if (rdev->wiphy.registered) {
- if (!rdev->wiphy.wowlan_config)
- cfg80211_leave_all(rdev);
- if (rdev->ops->suspend)
- ret = rdev_suspend(rdev, rdev->wiphy.wowlan_config);
- if (ret == 1) {
- /* Driver refuse to configure wowlan */
- cfg80211_leave_all(rdev);
- ret = rdev_suspend(rdev, NULL);
- }
+ if (rdev->ops->suspend) {
+ rtnl_lock();
+ if (rdev->wiphy.registered)
+ ret = rdev_suspend(rdev);
+ rtnl_unlock();
}
- rtnl_unlock();
return ret;
}