summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuca Coelho <luciano.coelho@intel.com>2016-03-01 09:30:48 +0100
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2016-03-02 08:00:46 +0100
commite27deb4583642d6c5b3cf18060e8239db1be9e59 (patch)
treed3841014286eb5bce475c03d27826712d0e68784
parentiwlwifi: add disable_11ac module param (diff)
downloadlinux-e27deb4583642d6c5b3cf18060e8239db1be9e59.tar.xz
linux-e27deb4583642d6c5b3cf18060e8239db1be9e59.zip
iwlwifi: mvm: take the transport ref back when leaving
If d0i3 is supported, we have released the initial transport reference in iwl_op_mode_mvm_start(), so we should take it back in iwl_op_mode_mvm_stop() to keep it balanced. Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/ops.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/ops.c b/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
index f3283f4ea3df..3760a094b932 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
@@ -703,6 +703,13 @@ static void iwl_op_mode_mvm_stop(struct iwl_op_mode *op_mode)
struct iwl_mvm *mvm = IWL_OP_MODE_GET_MVM(op_mode);
int i;
+ /* If d0i3 is supported, we have released the reference that
+ * the transport started with, so we should take it back now
+ * that we are leaving.
+ */
+ if (iwl_mvm_is_d0i3_supported(mvm))
+ iwl_trans_ref(mvm->trans);
+
iwl_mvm_leds_exit(mvm);
iwl_mvm_thermal_exit(mvm);