浏览代码

iwlwifi: mvm: only release the trans ref if d0i3 is supported in fw

If d0i3 is not supported by the firmware (or if it's disabled via
module parameters) we shouldn't release the initial transport
reference, so that we won't enter runtime suspend.

Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Luca Coelho 9 年之前
父节点
当前提交
33c85ead71
共有 1 个文件被更改,包括 4 次插入2 次删除
  1. 4 2
      drivers/net/wireless/intel/iwlwifi/mvm/ops.c

+ 4 - 2
drivers/net/wireless/intel/iwlwifi/mvm/ops.c

@@ -672,8 +672,10 @@ iwl_op_mode_mvm_start(struct iwl_trans *trans, const struct iwl_cfg *cfg,
 
 
 	memset(&mvm->rx_stats, 0, sizeof(struct mvm_statistics_rx));
 	memset(&mvm->rx_stats, 0, sizeof(struct mvm_statistics_rx));
 
 
-	/* rpm starts with a taken reference, we can release it now */
-	iwl_trans_unref(mvm->trans);
+	/* The transport always starts with a taken reference, we can
+	 * release it now if d0i3 is supported */
+	if (iwl_mvm_is_d0i3_supported(mvm))
+		iwl_trans_unref(mvm->trans);
 
 
 	iwl_mvm_tof_init(mvm);
 	iwl_mvm_tof_init(mvm);