diff options
author | Sara Sharon <sara.sharon@intel.com> | 2019-02-06 13:17:15 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2019-02-22 13:45:51 +0100 |
commit | fafd2bce5a5821b8902b11ab24dffa47dfdbd2d0 (patch) | |
tree | 7355d98f723f9edfd6099d62ef566acdc47adfc0 /net/mac80211/driver-ops.h | |
parent | c15353be91902fa6cde08d4bf325d089895d65e8 (diff) | |
download | linux-stable-fafd2bce5a5821b8902b11ab24dffa47dfdbd2d0.tar.gz linux-stable-fafd2bce5a5821b8902b11ab24dffa47dfdbd2d0.tar.bz2 linux-stable-fafd2bce5a5821b8902b11ab24dffa47dfdbd2d0.zip |
mac80211: notify driver on subsequent CSA beacons
Some drivers may want to track further the CSA beacons, for example
to compensate for buggy APs that change the beacon count or quiet
mode during CSA flow.
Signed-off-by: Sara Sharon <sara.sharon@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/driver-ops.h')
-rw-r--r-- | net/mac80211/driver-ops.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/net/mac80211/driver-ops.h b/net/mac80211/driver-ops.h index e069122595d0..28d022a3eee3 100644 --- a/net/mac80211/driver-ops.h +++ b/net/mac80211/driver-ops.h @@ -2,7 +2,7 @@ /* * Portions of this file * Copyright(c) 2016 Intel Deutschland GmbH -* Copyright (C) 2018 Intel Corporation +* Copyright (C) 2018 - 2019 Intel Corporation */ #ifndef __MAC80211_DRIVER_OPS @@ -1066,6 +1066,21 @@ drv_abort_channel_switch(struct ieee80211_sub_if_data *sdata) local->ops->abort_channel_switch(&local->hw, &sdata->vif); } +static inline void +drv_channel_switch_rx_beacon(struct ieee80211_sub_if_data *sdata, + struct ieee80211_channel_switch *ch_switch) +{ + struct ieee80211_local *local = sdata->local; + + if (!check_sdata_in_driver(sdata)) + return; + + trace_drv_channel_switch_rx_beacon(local, sdata, ch_switch); + if (local->ops->channel_switch_rx_beacon) + local->ops->channel_switch_rx_beacon(&local->hw, &sdata->vif, + ch_switch); +} + static inline int drv_join_ibss(struct ieee80211_local *local, struct ieee80211_sub_if_data *sdata) { |