cfg80211/mac80211: enable proper device_set_wakeup_enable handling
In WoWLAN, we only get the triggers when we actually get to suspend. As a consequence, drivers currently don't know that the device should enable wakeup. However, the device_set_wakeup_enable() API is intended to be called when the wakeup is enabled, not later when needed. Add a new set_wakeup() call to cfg80211 and mac80211 to allow drivers to properly call device_set_wakeup_enable. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
committed by
John W. Linville
parent
da951c2417
commit
6d52563f2b
@@ -2695,6 +2695,13 @@ ieee80211_wiphy_get_channel(struct wiphy *wiphy)
|
||||
return local->oper_channel;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PM
|
||||
static void ieee80211_set_wakeup(struct wiphy *wiphy, bool enabled)
|
||||
{
|
||||
drv_set_wakeup(wiphy_priv(wiphy), enabled);
|
||||
}
|
||||
#endif
|
||||
|
||||
struct cfg80211_ops mac80211_config_ops = {
|
||||
.add_virtual_intf = ieee80211_add_iface,
|
||||
.del_virtual_intf = ieee80211_del_iface,
|
||||
@@ -2763,4 +2770,7 @@ struct cfg80211_ops mac80211_config_ops = {
|
||||
.probe_client = ieee80211_probe_client,
|
||||
.get_channel = ieee80211_wiphy_get_channel,
|
||||
.set_noack_map = ieee80211_set_noack_map,
|
||||
#ifdef CONFIG_PM
|
||||
.set_wakeup = ieee80211_set_wakeup,
|
||||
#endif
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user