* [PATCH] thermal/drivers/mediatek/lvts: fix mt7987 thermal crash
@ 2026-03-09 6:44 Frank Wunderlich
2026-03-11 9:35 ` Laura Nao
0 siblings, 1 reply; 4+ messages in thread
From: Frank Wunderlich @ 2026-03-09 6:44 UTC (permalink / raw)
To: Rafael J. Wysocki, Daniel Lezcano, Zhang Rui, Lukasz Luba,
Matthias Brugger, AngeloGioacchino Del Regno
Cc: Frank Wunderlich, Laura Nao, Daniel Golle, linux-pm, linux-kernel,
linux-arm-kernel, linux-mediatek
From: Frank Wunderlich <frank-w@public-files.de>
On mt7987 we see a crash due to missing ops entry.
[ 1.518540] Internal error: Oops: 0000000096000005 [#1] SMP
...
[ 1.564481] pc : lvts_get_temp+0x84/0xc4
[ 1.564492] lr : lvts_get_temp+0x60/0xc4
...
[ 1.620900] Call trace:
[ 1.631753] lvts_get_temp+0x84/0xc4 (P)
[ 1.645471] __thermal_zone_get_temp+0x24/0x11c
[ 1.656502] __thermal_zone_device_update+0x9c/0x52c
Add the new ops member added in 7.0-rc1 for mt7987 too.
Fixes: a4c40559499f ("thermal/drivers/mediatek/lvts: Add platform ops to support alternative conversion logic")
Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
---
drivers/thermal/mediatek/lvts_thermal.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/thermal/mediatek/lvts_thermal.c b/drivers/thermal/mediatek/lvts_thermal.c
index a9617d5e0077..5671531d4c23 100644
--- a/drivers/thermal/mediatek/lvts_thermal.c
+++ b/drivers/thermal/mediatek/lvts_thermal.c
@@ -2026,6 +2026,7 @@ static const struct lvts_data mt7987_lvts_ap_data = {
.temp_offset = LVTS_COEFF_B_MT7987,
.gt_calib_bit_offset = 32,
.def_calibration = 19380,
+ .ops = &lvts_platform_ops_mt7988,
};
static const struct lvts_data mt7988_lvts_ap_data = {
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] thermal/drivers/mediatek/lvts: fix mt7987 thermal crash
2026-03-09 6:44 [PATCH] thermal/drivers/mediatek/lvts: fix mt7987 thermal crash Frank Wunderlich
@ 2026-03-11 9:35 ` Laura Nao
2026-03-12 7:39 ` Frank Wunderlich
0 siblings, 1 reply; 4+ messages in thread
From: Laura Nao @ 2026-03-11 9:35 UTC (permalink / raw)
To: linux
Cc: angelogioacchino.delregno, daniel.lezcano, daniel, frank-w,
laura.nao, linux-arm-kernel, linux-kernel, linux-mediatek,
linux-pm, lukasz.luba, matthias.bgg, rafael, rui.zhang
Hi!
On 3/9/26 07:44, Frank Wunderlich wrote:
> From: Frank Wunderlich <frank-w@public-files.de>
>
> On mt7987 we see a crash due to missing ops entry.
>
> [ 1.518540] Internal error: Oops: 0000000096000005 [#1] SMP
> ...
> [ 1.564481] pc : lvts_get_temp+0x84/0xc4
> [ 1.564492] lr : lvts_get_temp+0x60/0xc4
> ...
> [ 1.620900] Call trace:
> [ 1.631753] lvts_get_temp+0x84/0xc4 (P)
> [ 1.645471] __thermal_zone_get_temp+0x24/0x11c
> [ 1.656502] __thermal_zone_device_update+0x9c/0x52c
>
> Add the new ops member added in 7.0-rc1 for mt7987 too.
>
> Fixes: a4c40559499f ("thermal/drivers/mediatek/lvts: Add platform ops to support alternative conversion logic")
I think the Fixes tag should reference
"thermal/drivers/mediatek/lvts_thermal: Add mt7987 support", as the
commit introducing the ops also updated all existing data structs (seems
like mt7987 support landed right after).
> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
> ---
> drivers/thermal/mediatek/lvts_thermal.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/thermal/mediatek/lvts_thermal.c b/drivers/thermal/mediatek/lvts_thermal.c
> index a9617d5e0077..5671531d4c23 100644
> --- a/drivers/thermal/mediatek/lvts_thermal.c
> +++ b/drivers/thermal/mediatek/lvts_thermal.c
> @@ -2026,6 +2026,7 @@ static const struct lvts_data mt7987_lvts_ap_data = {
> .temp_offset = LVTS_COEFF_B_MT7987,
> .gt_calib_bit_offset = 32,
> .def_calibration = 19380,
You'll probably need to define num_cal_offsets too, since the number of
calibration bytes was also made configurable (not sure if this is
already addressed by a separate patch).
> + .ops = &lvts_platform_ops_mt7988,
> };
>
> static const struct lvts_data mt7988_lvts_ap_data = {
Best,
Laura
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] thermal/drivers/mediatek/lvts: fix mt7987 thermal crash
2026-03-11 9:35 ` Laura Nao
@ 2026-03-12 7:39 ` Frank Wunderlich
2026-03-12 11:34 ` Laura Nao
0 siblings, 1 reply; 4+ messages in thread
From: Frank Wunderlich @ 2026-03-12 7:39 UTC (permalink / raw)
To: Laura Nao
Cc: angelogioacchino.delregno, daniel.lezcano, daniel, frank-w,
laura.nao, linux-arm-kernel, linux-kernel, linux-mediatek,
linux-pm, lukasz.luba, matthias.bgg, rafael, rui.zhang
Am 11. März 2026 10:35:19 MEZ schrieb Laura Nao <laura.nao@collabora.com>:
>Hi!
>
>On 3/9/26 07:44, Frank Wunderlich wrote:
>> From: Frank Wunderlich <frank-w@public-files.de>
>>
>> On mt7987 we see a crash due to missing ops entry.
>>
>> [ 1.518540] Internal error: Oops: 0000000096000005 [#1] SMP
>> ...
>> [ 1.564481] pc : lvts_get_temp+0x84/0xc4
>> [ 1.564492] lr : lvts_get_temp+0x60/0xc4
>> ...
>> [ 1.620900] Call trace:
>> [ 1.631753] lvts_get_temp+0x84/0xc4 (P)
>> [ 1.645471] __thermal_zone_get_temp+0x24/0x11c
>> [ 1.656502] __thermal_zone_device_update+0x9c/0x52c
>>
>> Add the new ops member added in 7.0-rc1 for mt7987 too.
>>
>> Fixes: a4c40559499f ("thermal/drivers/mediatek/lvts: Add platform ops to support alternative conversion logic")
>
>I think the Fixes tag should reference
>"thermal/drivers/mediatek/lvts_thermal: Add mt7987 support", as the
>commit introducing the ops also updated all existing data structs (seems
>like mt7987 support landed right after).
Ok, i will change this. Have not looked on order how commits
are applied. Both commits were new in 7.0.
>> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
>> ---
>> drivers/thermal/mediatek/lvts_thermal.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/thermal/mediatek/lvts_thermal.c b/drivers/thermal/mediatek/lvts_thermal.c
>> index a9617d5e0077..5671531d4c23 100644
>> --- a/drivers/thermal/mediatek/lvts_thermal.c
>> +++ b/drivers/thermal/mediatek/lvts_thermal.c
>> @@ -2026,6 +2026,7 @@ static const struct lvts_data mt7987_lvts_ap_data = {
>> .temp_offset = LVTS_COEFF_B_MT7987,
>> .gt_calib_bit_offset = 32,
>> .def_calibration = 19380,
>
>You'll probably need to define num_cal_offsets too, since the number of
>calibration bytes was also made configurable (not sure if this is
>already addressed by a separate patch).
Thanks for pointing to this.
Should i change in same patch or in separate one?
>> + .ops = &lvts_platform_ops_mt7988,
>> };
>>
>> static const struct lvts_data mt7988_lvts_ap_data = {
>
>Best,
>
>Laura
regards Frank
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] thermal/drivers/mediatek/lvts: fix mt7987 thermal crash
2026-03-12 7:39 ` Frank Wunderlich
@ 2026-03-12 11:34 ` Laura Nao
0 siblings, 0 replies; 4+ messages in thread
From: Laura Nao @ 2026-03-12 11:34 UTC (permalink / raw)
To: linux
Cc: angelogioacchino.delregno, daniel.lezcano, daniel, laura.nao,
linux-arm-kernel, linux-kernel, linux-mediatek, linux-pm,
lukasz.luba, matthias.bgg, rafael, rui.zhang
Hi,
On 3/12/26 08:39, Frank Wunderlich wrote:
> Am 11. März 2026 10:35:19 MEZ schrieb Laura Nao <laura.nao@collabora.com>:
>> Hi!
>>
>> On 3/9/26 07:44, Frank Wunderlich wrote:
>>> From: Frank Wunderlich <frank-w@public-files.de>
>>>
>>> On mt7987 we see a crash due to missing ops entry.
>>>
>>> [ 1.518540] Internal error: Oops: 0000000096000005 [#1] SMP
>>> ...
>>> [ 1.564481] pc : lvts_get_temp+0x84/0xc4
>>> [ 1.564492] lr : lvts_get_temp+0x60/0xc4
>>> ...
>>> [ 1.620900] Call trace:
>>> [ 1.631753] lvts_get_temp+0x84/0xc4 (P)
>>> [ 1.645471] __thermal_zone_get_temp+0x24/0x11c
>>> [ 1.656502] __thermal_zone_device_update+0x9c/0x52c
>>>
>>> Add the new ops member added in 7.0-rc1 for mt7987 too.
>>>
>>> Fixes: a4c40559499f ("thermal/drivers/mediatek/lvts: Add platform ops to support alternative conversion logic")
>>
>> I think the Fixes tag should reference
>> "thermal/drivers/mediatek/lvts_thermal: Add mt7987 support", as the
>> commit introducing the ops also updated all existing data structs (seems
>> like mt7987 support landed right after).
>
> Ok, i will change this. Have not looked on order how commits
> are applied. Both commits were new in 7.0.
>
>>> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
>>> ---
>>> drivers/thermal/mediatek/lvts_thermal.c | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> diff --git a/drivers/thermal/mediatek/lvts_thermal.c b/drivers/thermal/mediatek/lvts_thermal.c
>>> index a9617d5e0077..5671531d4c23 100644
>>> --- a/drivers/thermal/mediatek/lvts_thermal.c
>>> +++ b/drivers/thermal/mediatek/lvts_thermal.c
>>> @@ -2026,6 +2026,7 @@ static const struct lvts_data mt7987_lvts_ap_data = {
>>> .temp_offset = LVTS_COEFF_B_MT7987,
>>> .gt_calib_bit_offset = 32,
>>> .def_calibration = 19380,
>>
>> You'll probably need to define num_cal_offsets too, since the number of
>> calibration bytes was also made configurable (not sure if this is
>> already addressed by a separate patch).
>
> Thanks for pointing to this.
> Should i change in same patch or in separate one?
>
I would suggest including this in the v2 of this patch, updating the
commit title and message to mention that both the ops and num_cal_offsets
were added.
Best,
Laura
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-03-12 11:35 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-09 6:44 [PATCH] thermal/drivers/mediatek/lvts: fix mt7987 thermal crash Frank Wunderlich
2026-03-11 9:35 ` Laura Nao
2026-03-12 7:39 ` Frank Wunderlich
2026-03-12 11:34 ` Laura Nao
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox