mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-01 14:44:12 +00:00
wifi: mt76: mt7915: rework mt7915_thermal_temp_store()
[ Upstream commitecaccdae7a
] Call mt7915_mcu_set_thermal_protect() through mt7915_thermal_temp_store() to update firmware trigger/restore temp directly. Fixes:02ee68b95d
("mt76: mt7915: add control knobs for thermal throttling") Reviewed-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com> Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
bebfd3d514
commit
06c153e5f9
2 changed files with 19 additions and 2 deletions
|
@ -83,9 +83,23 @@ static ssize_t mt7915_thermal_temp_store(struct device *dev,
|
|||
|
||||
mutex_lock(&phy->dev->mt76.mutex);
|
||||
val = clamp_val(DIV_ROUND_CLOSEST(val, 1000), 60, 130);
|
||||
|
||||
if ((i - 1 == MT7915_CRIT_TEMP_IDX &&
|
||||
val > phy->throttle_temp[MT7915_MAX_TEMP_IDX]) ||
|
||||
(i - 1 == MT7915_MAX_TEMP_IDX &&
|
||||
val < phy->throttle_temp[MT7915_CRIT_TEMP_IDX])) {
|
||||
dev_err(phy->dev->mt76.dev,
|
||||
"temp1_max shall be greater than temp1_crit.");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
phy->throttle_temp[i - 1] = val;
|
||||
mutex_unlock(&phy->dev->mt76.mutex);
|
||||
|
||||
ret = mt7915_mcu_set_thermal_protect(phy);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
|
@ -195,8 +209,8 @@ static int mt7915_thermal_init(struct mt7915_phy *phy)
|
|||
return PTR_ERR(hwmon);
|
||||
|
||||
/* initialize critical/maximum high temperature */
|
||||
phy->throttle_temp[0] = 110;
|
||||
phy->throttle_temp[1] = 120;
|
||||
phy->throttle_temp[MT7915_CRIT_TEMP_IDX] = 110;
|
||||
phy->throttle_temp[MT7915_MAX_TEMP_IDX] = 120;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -70,6 +70,9 @@
|
|||
|
||||
#define MT7915_WED_RX_TOKEN_SIZE 12288
|
||||
|
||||
#define MT7915_CRIT_TEMP_IDX 0
|
||||
#define MT7915_MAX_TEMP_IDX 1
|
||||
|
||||
struct mt7915_vif;
|
||||
struct mt7915_sta;
|
||||
struct mt7915_dfs_pulse;
|
||||
|
|
Loading…
Reference in a new issue