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
@@ -1344,6 +1344,9 @@ struct cfg80211_gtk_rekey_data {
|
||||
* be %NULL or contain the enabled Wake-on-Wireless triggers that are
|
||||
* configured for the device.
|
||||
* @resume: wiphy device needs to be resumed
|
||||
* @set_wakeup: Called when WoWLAN is enabled/disabled, use this callback
|
||||
* to call device_set_wakeup_enable() to enable/disable wakeup from
|
||||
* the device.
|
||||
*
|
||||
* @add_virtual_intf: create a new virtual interface with the given name,
|
||||
* must set the struct wireless_dev's iftype. Beware: You must create
|
||||
@@ -1515,6 +1518,7 @@ struct cfg80211_gtk_rekey_data {
|
||||
struct cfg80211_ops {
|
||||
int (*suspend)(struct wiphy *wiphy, struct cfg80211_wowlan *wow);
|
||||
int (*resume)(struct wiphy *wiphy);
|
||||
void (*set_wakeup)(struct wiphy *wiphy, bool enabled);
|
||||
|
||||
struct net_device * (*add_virtual_intf)(struct wiphy *wiphy,
|
||||
char *name,
|
||||
|
Reference in New Issue
Block a user