public inbox for linux-mediatek@lists.infradead.org
 help / color / mirror / Atom feed
* [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: linux-pm, linux-kernel, Daniel Golle, Laura Nao, linux-mediatek,
	linux-arm-kernel

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: rafael, linux-pm, daniel.lezcano, daniel, linux-kernel, laura.nao,
	linux-mediatek, lukasz.luba, matthias.bgg, rui.zhang,
	linux-arm-kernel, angelogioacchino.delregno

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: rafael, linux-pm, daniel.lezcano, daniel, linux-kernel, laura.nao,
	linux-mediatek, lukasz.luba, matthias.bgg, rui.zhang,
	linux-arm-kernel, angelogioacchino.delregno

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