|
@@ -512,12 +512,39 @@ static const struct iwl_tt_params iwl7000_tt_params = {
|
|
|
.support_tx_backoff = true,
|
|
|
};
|
|
|
|
|
|
+static const struct iwl_tt_params iwl7000_high_temp_tt_params = {
|
|
|
+ .ct_kill_entry = 118,
|
|
|
+ .ct_kill_exit = 96,
|
|
|
+ .ct_kill_duration = 5,
|
|
|
+ .dynamic_smps_entry = 114,
|
|
|
+ .dynamic_smps_exit = 110,
|
|
|
+ .tx_protection_entry = 114,
|
|
|
+ .tx_protection_exit = 108,
|
|
|
+ .tx_backoff = {
|
|
|
+ {.temperature = 112, .backoff = 300},
|
|
|
+ {.temperature = 113, .backoff = 800},
|
|
|
+ {.temperature = 114, .backoff = 1500},
|
|
|
+ {.temperature = 115, .backoff = 3000},
|
|
|
+ {.temperature = 116, .backoff = 5000},
|
|
|
+ {.temperature = 117, .backoff = 10000},
|
|
|
+ },
|
|
|
+ .support_ct_kill = true,
|
|
|
+ .support_dynamic_smps = true,
|
|
|
+ .support_tx_protection = true,
|
|
|
+ .support_tx_backoff = true,
|
|
|
+};
|
|
|
+
|
|
|
void iwl_mvm_tt_initialize(struct iwl_mvm *mvm)
|
|
|
{
|
|
|
struct iwl_mvm_tt_mgmt *tt = &mvm->thermal_throttle;
|
|
|
|
|
|
IWL_DEBUG_TEMP(mvm, "Initialize Thermal Throttling\n");
|
|
|
- tt->params = &iwl7000_tt_params;
|
|
|
+
|
|
|
+ if (mvm->cfg->high_temp)
|
|
|
+ tt->params = &iwl7000_high_temp_tt_params;
|
|
|
+ else
|
|
|
+ tt->params = &iwl7000_tt_params;
|
|
|
+
|
|
|
tt->throttle = false;
|
|
|
INIT_DELAYED_WORK(&tt->ct_kill_exit, check_exit_ctkill);
|
|
|
}
|