aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/mvm/mac80211.c
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2014-11-23 12:56:35 -0500
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2014-11-23 12:56:35 -0500
commitaeb8f932080d62cdc305a7ccca9d60de34908b30 (patch)
treef563df19e10e0d1fb5f8ab73902cc1d39f2ec177 /drivers/net/wireless/iwlwifi/mvm/mac80211.c
parentcaf1578aefe7ebbc22376737e91ffa29ac14a33f (diff)
parent9e6f3f472c8f95021ad048acc7cd3e40a827f8ce (diff)
Merge remote-tracking branch 'wireless-next/master' into iwlwifi-next
Diffstat (limited to 'drivers/net/wireless/iwlwifi/mvm/mac80211.c')
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/mac80211.c21
1 files changed, 18 insertions, 3 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
index ed2c219cf543..92e1810864b1 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
@@ -850,6 +850,7 @@ static void iwl_mvm_restart_cleanup(struct iwl_mvm *mvm)
850 850
851 mvm->scan_status = IWL_MVM_SCAN_NONE; 851 mvm->scan_status = IWL_MVM_SCAN_NONE;
852 mvm->ps_disabled = false; 852 mvm->ps_disabled = false;
853 mvm->calibrating = false;
853 854
854 /* just in case one was running */ 855 /* just in case one was running */
855 ieee80211_remain_on_channel_expired(mvm->hw); 856 ieee80211_remain_on_channel_expired(mvm->hw);
@@ -920,9 +921,8 @@ static int iwl_mvm_mac_start(struct ieee80211_hw *hw)
920 return ret; 921 return ret;
921} 922}
922 923
923static void iwl_mvm_mac_restart_complete(struct ieee80211_hw *hw) 924static void iwl_mvm_restart_complete(struct iwl_mvm *mvm)
924{ 925{
925 struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw);
926 int ret; 926 int ret;
927 927
928 mutex_lock(&mvm->mutex); 928 mutex_lock(&mvm->mutex);
@@ -940,6 +940,21 @@ static void iwl_mvm_mac_restart_complete(struct ieee80211_hw *hw)
940 mutex_unlock(&mvm->mutex); 940 mutex_unlock(&mvm->mutex);
941} 941}
942 942
943static void
944iwl_mvm_mac_reconfig_complete(struct ieee80211_hw *hw,
945 enum ieee80211_reconfig_type reconfig_type)
946{
947 struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw);
948
949 switch (reconfig_type) {
950 case IEEE80211_RECONFIG_TYPE_RESTART:
951 iwl_mvm_restart_complete(mvm);
952 break;
953 case IEEE80211_RECONFIG_TYPE_SUSPEND:
954 break;
955 }
956}
957
943void __iwl_mvm_mac_stop(struct iwl_mvm *mvm) 958void __iwl_mvm_mac_stop(struct iwl_mvm *mvm)
944{ 959{
945 lockdep_assert_held(&mvm->mutex); 960 lockdep_assert_held(&mvm->mutex);
@@ -3083,7 +3098,7 @@ const struct ieee80211_ops iwl_mvm_hw_ops = {
3083 .tx = iwl_mvm_mac_tx, 3098 .tx = iwl_mvm_mac_tx,
3084 .ampdu_action = iwl_mvm_mac_ampdu_action, 3099 .ampdu_action = iwl_mvm_mac_ampdu_action,
3085 .start = iwl_mvm_mac_start, 3100 .start = iwl_mvm_mac_start,
3086 .restart_complete = iwl_mvm_mac_restart_complete, 3101 .reconfig_complete = iwl_mvm_mac_reconfig_complete,
3087 .stop = iwl_mvm_mac_stop, 3102 .stop = iwl_mvm_mac_stop,
3088 .add_interface = iwl_mvm_mac_add_interface, 3103 .add_interface = iwl_mvm_mac_add_interface,
3089 .remove_interface = iwl_mvm_mac_remove_interface, 3104 .remove_interface = iwl_mvm_mac_remove_interface,