aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
diff options
context:
space:
mode:
authorChaya Rachel Ivgi <chaya.rachel.ivgi@intel.com>2015-12-29 02:54:49 -0500
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2016-02-27 14:59:49 -0500
commitc221daf219b1cf38e7c4307f0f420ea826678af5 (patch)
treeb0ca50346d363ffbbc894326918c06812d28f656 /drivers/net/wireless/intel/iwlwifi/mvm/ops.c
parent0a3b7119000d706dfbc7e0c5b66e192a646d365f (diff)
iwlwifi: mvm: add registration to thermal zone
Register to thermal_zone interface and implement the thermal ops. The thermal handles the device throttling, and sets the the temperature thresholds the Thermal Manager would be notified of crossing. The thermal interface adds a new thermal zone device sensor under /sys/class/thermal/ folder. Signed-off-by: Chaya Rachel Ivgi <chaya.rachel.ivgi@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/ops.c')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/ops.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/ops.c b/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
index ecc371e1f3f0..a7acadd446c4 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
@@ -389,6 +389,7 @@ static const struct iwl_hcmd_names iwl_mvm_legacy_names[] = {
389 */ 389 */
390static const struct iwl_hcmd_names iwl_mvm_phy_names[] = { 390static const struct iwl_hcmd_names iwl_mvm_phy_names[] = {
391 HCMD_NAME(CMD_DTS_MEASUREMENT_TRIGGER_WIDE), 391 HCMD_NAME(CMD_DTS_MEASUREMENT_TRIGGER_WIDE),
392 HCMD_NAME(TEMP_REPORTING_THRESHOLDS_CMD),
392 HCMD_NAME(CT_KILL_NOTIFICATION), 393 HCMD_NAME(CT_KILL_NOTIFICATION),
393 HCMD_NAME(DTS_MEASUREMENT_NOTIF_WIDE), 394 HCMD_NAME(DTS_MEASUREMENT_NOTIF_WIDE),
394}; 395};
@@ -591,7 +592,7 @@ iwl_op_mode_mvm_start(struct iwl_trans *trans, const struct iwl_cfg *cfg,
591 mvm->cfg->name, mvm->trans->hw_rev); 592 mvm->cfg->name, mvm->trans->hw_rev);
592 593
593 min_backoff = calc_min_backoff(trans, cfg); 594 min_backoff = calc_min_backoff(trans, cfg);
594 iwl_mvm_tt_initialize(mvm, min_backoff); 595 iwl_mvm_thermal_initialize(mvm, min_backoff);
595 596
596 if (iwlwifi_mod_params.nvm_file) 597 if (iwlwifi_mod_params.nvm_file)
597 mvm->nvm_file_name = iwlwifi_mod_params.nvm_file; 598 mvm->nvm_file_name = iwlwifi_mod_params.nvm_file;
@@ -664,6 +665,7 @@ iwl_op_mode_mvm_start(struct iwl_trans *trans, const struct iwl_cfg *cfg,
664 out_unregister: 665 out_unregister:
665 ieee80211_unregister_hw(mvm->hw); 666 ieee80211_unregister_hw(mvm->hw);
666 iwl_mvm_leds_exit(mvm); 667 iwl_mvm_leds_exit(mvm);
668 iwl_mvm_thermal_exit(mvm);
667 out_free: 669 out_free:
668 flush_delayed_work(&mvm->fw_dump_wk); 670 flush_delayed_work(&mvm->fw_dump_wk);
669 iwl_phy_db_free(mvm->phy_db); 671 iwl_phy_db_free(mvm->phy_db);
@@ -681,7 +683,7 @@ static void iwl_op_mode_mvm_stop(struct iwl_op_mode *op_mode)
681 683
682 iwl_mvm_leds_exit(mvm); 684 iwl_mvm_leds_exit(mvm);
683 685
684 iwl_mvm_tt_exit(mvm); 686 iwl_mvm_thermal_exit(mvm);
685 687
686 ieee80211_unregister_hw(mvm->hw); 688 ieee80211_unregister_hw(mvm->hw);
687 689