diff options
author | Arik Nemtsov <arik@wizery.com> | 2014-11-09 11:50:19 -0500 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2014-11-19 12:45:21 -0500 |
commit | a7a6bdd0670feb8bfc26d41cda32b6064dbca50e (patch) | |
tree | d343591f508af2d1a15f5b265e7ddaf182e34129 /net/mac80211/ieee80211_i.h | |
parent | 53837584438f8899e061ada4663ae1d09b49b96a (diff) |
mac80211: introduce TDLS channel switch ops
Implement the cfg80211 TDLS channel switch ops and introduce new mac80211
ones for low-level drivers.
Verify low-level driver support for the new ops when using the relevant
wiphy feature bit. Also verify the peer supports channel switching before
passing the command down.
Add a new STA flag to track the off-channel state with the TDLS peer and
make sure to cancel the channel-switch if the peer STA is unexpectedly
removed.
Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com>
Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r-- | net/mac80211/ieee80211_i.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index e786ab6bc72c..2c7abc077b6b 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h | |||
@@ -2007,6 +2007,12 @@ int ieee80211_tdls_mgmt(struct wiphy *wiphy, struct net_device *dev, | |||
2007 | int ieee80211_tdls_oper(struct wiphy *wiphy, struct net_device *dev, | 2007 | int ieee80211_tdls_oper(struct wiphy *wiphy, struct net_device *dev, |
2008 | const u8 *peer, enum nl80211_tdls_operation oper); | 2008 | const u8 *peer, enum nl80211_tdls_operation oper); |
2009 | void ieee80211_tdls_peer_del_work(struct work_struct *wk); | 2009 | void ieee80211_tdls_peer_del_work(struct work_struct *wk); |
2010 | int ieee80211_tdls_channel_switch(struct wiphy *wiphy, struct net_device *dev, | ||
2011 | const u8 *addr, u8 oper_class, | ||
2012 | struct cfg80211_chan_def *chandef); | ||
2013 | void ieee80211_tdls_cancel_channel_switch(struct wiphy *wiphy, | ||
2014 | struct net_device *dev, | ||
2015 | const u8 *addr); | ||
2010 | 2016 | ||
2011 | extern const struct ethtool_ops ieee80211_ethtool_ops; | 2017 | extern const struct ethtool_ops ieee80211_ethtool_ops; |
2012 | 2018 | ||