Commit 9c97df11 authored by Howard Hsu's avatar Howard Hsu Committed by Felix Fietkau

wifi: mt76: mt7915: rework init flow in mt7915_thermal_init()

If kernel do not enable CONFIG_HWMON, it may cause thermal
initialization to be done with temperature value 0 and then can not
transmit. This commit fixes it by setting trigger/restore temperature
before checking CONFIG_HWMON.

Fixes: 7d12b38a ("wifi: mt76: mt7915: call mt7915_mcu_set_thermal_throttling() only after init_work")
Signed-off-by: default avatarHoward Hsu <howard-yh.hsu@mediatek.com>
Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
parent db1a5a6c
...@@ -203,6 +203,10 @@ static int mt7915_thermal_init(struct mt7915_phy *phy) ...@@ -203,6 +203,10 @@ static int mt7915_thermal_init(struct mt7915_phy *phy)
phy->cdev = cdev; phy->cdev = cdev;
} }
/* initialize critical/maximum high temperature */
phy->throttle_temp[MT7915_CRIT_TEMP_IDX] = MT7915_CRIT_TEMP;
phy->throttle_temp[MT7915_MAX_TEMP_IDX] = MT7915_MAX_TEMP;
if (!IS_REACHABLE(CONFIG_HWMON)) if (!IS_REACHABLE(CONFIG_HWMON))
return 0; return 0;
...@@ -211,10 +215,6 @@ static int mt7915_thermal_init(struct mt7915_phy *phy) ...@@ -211,10 +215,6 @@ static int mt7915_thermal_init(struct mt7915_phy *phy)
if (IS_ERR(hwmon)) if (IS_ERR(hwmon))
return PTR_ERR(hwmon); return PTR_ERR(hwmon);
/* initialize critical/maximum high temperature */
phy->throttle_temp[MT7915_CRIT_TEMP_IDX] = MT7915_CRIT_TEMP;
phy->throttle_temp[MT7915_MAX_TEMP_IDX] = MT7915_MAX_TEMP;
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment