2023-02-21 02:43:37

by Howard Hsu

[permalink] [raw]
Subject: [PATCH] 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: 7d12b38 ("wifi: mt76: mt7915: call mt7915_mcu_set_thermal_throttling() only after init_work")
Signed-off-by: Howard Hsu <[email protected]>
---
drivers/net/wireless/mediatek/mt76/mt7915/init.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/net/wireless/mediatek/mt76/mt7915/init.c b/drivers/net/wireless/mediatek/mt76/mt7915/init.c
index 1ab768feccaa..c48dcb928649 100644
--- a/drivers/net/wireless/mediatek/mt76/mt7915/init.c
+++ b/drivers/net/wireless/mediatek/mt76/mt7915/init.c
@@ -202,6 +202,10 @@ static int mt7915_thermal_init(struct mt7915_phy *phy)
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))
return 0;

@@ -210,10 +214,6 @@ static int mt7915_thermal_init(struct mt7915_phy *phy)
if (IS_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;
}

--
2.18.0



2023-02-21 06:30:17

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH] wifi: mt76: mt7915: rework init flow in mt7915_thermal_init()

Howard Hsu <[email protected]> writes:

> 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: 7d12b38 ("wifi: mt76: mt7915: call mt7915_mcu_set_thermal_throttling() only after init_work")
> Signed-off-by: Howard Hsu <[email protected]>

Should this go to v6.3?

--
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches

2023-02-23 06:16:00

by Howard Hsu

[permalink] [raw]
Subject: Re: [PATCH] wifi: mt76: mt7915: rework init flow in mt7915_thermal_init()

On Tue, 2023-02-21 at 08:30 +0200, Kalle Valo wrote:
> Howard Hsu <[email protected]> writes:
>
> > 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: 7d12b38 ("wifi: mt76: mt7915: call
> > mt7915_mcu_set_thermal_throttling() only after init_work")
> > Signed-off-by: Howard Hsu <[email protected]>
>
> Should this go to v6.3?
>

I will send the v2 patch to fix this patch. Please help to put v2 patch
into the queue of v6.3.