aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/dvm/main.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2014-02-25 14:50:53 -0500
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2014-03-09 13:16:46 -0400
commit14cfca7152ae5d10b15baf01c7fd60f0f0871062 (patch)
tree64cd286b5370b0a50242fc1e20dc16b42a962090 /drivers/net/wireless/iwlwifi/dvm/main.c
parenta812cba9bb141225ce28a48b60038e115620bccd (diff)
iwlwifi: return whether to stop from rfkill method
When indicating RF-kill toggle to the higher layer, that may in turn call back to the transport (for MVM at least) to turn off the device quickly. Instead of that, allow it to return whether or not the device should be turned off, this gets rid of the call indirection and will help make the API more consistent when we go back to non-threaded interrupts again for PCIe. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/dvm/main.c')
-rw-r--r--drivers/net/wireless/iwlwifi/dvm/main.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwlwifi/dvm/main.c b/drivers/net/wireless/iwlwifi/dvm/main.c
index ba1b1ea54252..4a5cacce143e 100644
--- a/drivers/net/wireless/iwlwifi/dvm/main.c
+++ b/drivers/net/wireless/iwlwifi/dvm/main.c
@@ -2035,7 +2035,7 @@ static void iwl_free_skb(struct iwl_op_mode *op_mode, struct sk_buff *skb)
2035 ieee80211_free_txskb(priv->hw, skb); 2035 ieee80211_free_txskb(priv->hw, skb);
2036} 2036}
2037 2037
2038static void iwl_set_hw_rfkill_state(struct iwl_op_mode *op_mode, bool state) 2038static bool iwl_set_hw_rfkill_state(struct iwl_op_mode *op_mode, bool state)
2039{ 2039{
2040 struct iwl_priv *priv = IWL_OP_MODE_GET_DVM(op_mode); 2040 struct iwl_priv *priv = IWL_OP_MODE_GET_DVM(op_mode);
2041 2041
@@ -2045,6 +2045,8 @@ static void iwl_set_hw_rfkill_state(struct iwl_op_mode *op_mode, bool state)
2045 clear_bit(STATUS_RF_KILL_HW, &priv->status); 2045 clear_bit(STATUS_RF_KILL_HW, &priv->status);
2046 2046
2047 wiphy_rfkill_set_hw_state(priv->hw->wiphy, state); 2047 wiphy_rfkill_set_hw_state(priv->hw->wiphy, state);
2048
2049 return false;
2048} 2050}
2049 2051
2050static const struct iwl_op_mode_ops iwl_dvm_ops = { 2052static const struct iwl_op_mode_ops iwl_dvm_ops = {