diff mbox series

thermal/drivers/mediatek/lvts_thermal: Switch to IMMEDIATE_MODE

Message ID 20241108-lvts-v1-1-eee339c6ca20@chromium.org (mailing list archive)
State New
Headers show
Series thermal/drivers/mediatek/lvts_thermal: Switch to IMMEDIATE_MODE | expand

Commit Message

Hsin-Te Yuan Nov. 8, 2024, 6:46 a.m. UTC
Currently, MT8192 cannot suspend with FILTERED_MODE. Switch to
IMMEDIATE_MODE will fix this.

Signed-off-by: Hsin-Te Yuan <yuanhsinte@chromium.org>
---
 drivers/thermal/mediatek/lvts_thermal.c | 3 ---
 1 file changed, 3 deletions(-)


---
base-commit: 906bd684e4b1e517dd424a354744c5b0aebef8af
change-id: 20241108-lvts-f7beb36efc59

Best regards,

Comments

Chen-Yu Tsai Nov. 8, 2024, 8:21 a.m. UTC | #1
On Fri, Nov 8, 2024 at 2:51 PM Hsin-Te Yuan <yuanhsinte@chromium.org> wrote:
>
> Currently, MT8192 cannot suspend with FILTERED_MODE. Switch to
> IMMEDIATE_MODE will fix this.
>

Probably should have a Fixes tag.

Also, Nicolas previously reported that the threshold interrupts don't
work with the immediate mode [1], which is why filtered mode was used
in the final version.


ChenYu

[1] https://lore.kernel.org/linux-mediatek/37680c5e-e61c-410b-b48d-829914200e4a@notapiano/

> Signed-off-by: Hsin-Te Yuan <yuanhsinte@chromium.org>
> ---
>  drivers/thermal/mediatek/lvts_thermal.c | 3 ---
>  1 file changed, 3 deletions(-)
>
> diff --git a/drivers/thermal/mediatek/lvts_thermal.c b/drivers/thermal/mediatek/lvts_thermal.c
> index 1997e91bb3be94a3059db619238aa5787edc7675..daad52f14fc03d0c4131f2ffdf3eb6b49a4a43d0 100644
> --- a/drivers/thermal/mediatek/lvts_thermal.c
> +++ b/drivers/thermal/mediatek/lvts_thermal.c
> @@ -1541,7 +1541,6 @@ static const struct lvts_ctrl_data mt8192_lvts_mcu_data_ctrl[] = {
>                 },
>                 VALID_SENSOR_MAP(1, 1, 0, 0),
>                 .offset = 0x0,
> -               .mode = LVTS_MSR_FILTERED_MODE,
>         },
>         {
>                 .lvts_sensor = {
> @@ -1552,7 +1551,6 @@ static const struct lvts_ctrl_data mt8192_lvts_mcu_data_ctrl[] = {
>                 },
>                 VALID_SENSOR_MAP(1, 1, 0, 0),
>                 .offset = 0x100,
> -               .mode = LVTS_MSR_FILTERED_MODE,
>         },
>         {
>                 .lvts_sensor = {
> @@ -1567,7 +1565,6 @@ static const struct lvts_ctrl_data mt8192_lvts_mcu_data_ctrl[] = {
>                 },
>                 VALID_SENSOR_MAP(1, 1, 1, 1),
>                 .offset = 0x200,
> -               .mode = LVTS_MSR_FILTERED_MODE,
>         }
>  };
>
>
> ---
> base-commit: 906bd684e4b1e517dd424a354744c5b0aebef8af
> change-id: 20241108-lvts-f7beb36efc59
>
> Best regards,
> --
> Hsin-Te Yuan <yuanhsinte@chromium.org>
>
>
Nícolas F. R. A. Prado Nov. 9, 2024, 3:26 p.m. UTC | #2
On Fri, Nov 08, 2024 at 04:21:07PM +0800, Chen-Yu Tsai wrote:
> On Fri, Nov 8, 2024 at 2:51 PM Hsin-Te Yuan <yuanhsinte@chromium.org> wrote:
> >
> > Currently, MT8192 cannot suspend with FILTERED_MODE. Switch to
> > IMMEDIATE_MODE will fix this.

Do you mean that the whole MT8192 SoC is not able to enter system suspend? I
just tested that on a fairly recent linux-next and it was working without a
problem. We need more context here.

> >
> 
> Probably should have a Fixes tag.
> 
> Also, Nicolas previously reported that the threshold interrupts don't
> work with the immediate mode [1], which is why filtered mode was used
> in the final version.

Indeed. I suppose it would be possible to configure immediate mode only during
suspend if this is really the problem.

Thanks,
Nícolas
diff mbox series

Patch

diff --git a/drivers/thermal/mediatek/lvts_thermal.c b/drivers/thermal/mediatek/lvts_thermal.c
index 1997e91bb3be94a3059db619238aa5787edc7675..daad52f14fc03d0c4131f2ffdf3eb6b49a4a43d0 100644
--- a/drivers/thermal/mediatek/lvts_thermal.c
+++ b/drivers/thermal/mediatek/lvts_thermal.c
@@ -1541,7 +1541,6 @@  static const struct lvts_ctrl_data mt8192_lvts_mcu_data_ctrl[] = {
 		},
 		VALID_SENSOR_MAP(1, 1, 0, 0),
 		.offset = 0x0,
-		.mode = LVTS_MSR_FILTERED_MODE,
 	},
 	{
 		.lvts_sensor = {
@@ -1552,7 +1551,6 @@  static const struct lvts_ctrl_data mt8192_lvts_mcu_data_ctrl[] = {
 		},
 		VALID_SENSOR_MAP(1, 1, 0, 0),
 		.offset = 0x100,
-		.mode = LVTS_MSR_FILTERED_MODE,
 	},
 	{
 		.lvts_sensor = {
@@ -1567,7 +1565,6 @@  static const struct lvts_ctrl_data mt8192_lvts_mcu_data_ctrl[] = {
 		},
 		VALID_SENSOR_MAP(1, 1, 1, 1),
 		.offset = 0x200,
-		.mode = LVTS_MSR_FILTERED_MODE,
 	}
 };